{
  "_format": "hh-sol-artifact-1",
  "contractName": "MockTreasury",
  "sourceName": "contracts/mock/MockTreasury.sol",
  "abi": [
    {
      "inputs": [],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "inputs": [],
      "name": "MAX_FUND_PERCENTAGE",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "PERCENTAGE_PRECISION",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "contract IERC20",
          "name": "token",
          "type": "address"
        }
      ],
      "name": "balanceOf",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "contract IERC20",
          "name": "token",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "deposit",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "fundPercentage",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "fundToken",
      "outputs": [
        {
          "internalType": "contract IERC20",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "governanceManager",
      "outputs": [
        {
          "internalType": "contract PendleGovernanceManager",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "contract IERC20",
          "name": "_fundToken",
          "type": "address"
        }
      ],
      "name": "initialize",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_fundPercentage",
          "type": "uint256"
        }
      ],
      "name": "setFundPercentage",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        },
        {
          "internalType": "address",
          "name": "withdrawAddress",
          "type": "address"
        }
      ],
      "name": "withdraw",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x60a06040526101f460025534801561001657600080fd5b50600080547faaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa000000000000000000000000608052336001600160a01b0319918216811790911617815573aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa90610974906100869039806104ae52806104e052506109746000f3fe608060405234801561001057600080fd5b506004361061009d5760003560e01c8063a9bb4da011610066578063a9bb4da014610175578063c4d66de81461017d578063d2e6d1c3146101a3578063e256888f146101ab578063fc7a91f8146101b35761009d565b8062f714ce146100a257806347e7ef24146100d05780634883c745146100fc57806350adcdb71461011957806370a082311461013d575b600080fd5b6100ce600480360360408110156100b857600080fd5b50803590602001356001600160a01b03166101bb565b005b6100ce600480360360408110156100e657600080fd5b506001600160a01b038135169060200135610293565b6100ce6004803603602081101561011257600080fd5b50356102a8565b610121610353565b604080516001600160a01b039092168252519081900360200190f35b6101636004803603602081101561015357600080fd5b50356001600160a01b0316610362565b60408051918252519081900360200190f35b6101636103e3565b6100ce6004803603602081101561019357600080fd5b50356001600160a01b03166103e9565b6101216104ac565b6101636104d0565b6101636104d6565b6101c36104dc565b6001600160a01b0316336001600160a01b03161461021a576040805162461bcd60e51b815260206004820152600f60248201526e4f4e4c595f474f5645524e414e434560881b604482015290519081900360640190fd5b6001548290610231906001600160a01b0316610362565b1015610278576040805162461bcd60e51b8152602060048201526011602482015270125394d551919250d251539517d1955391607a1b604482015290519081900360640190fd5b60015461028f906001600160a01b03168284610568565b5050565b61028f6001600160a01b0383163330846105bf565b6102b06104dc565b6001600160a01b0316336001600160a01b031614610307576040805162461bcd60e51b815260206004820152600f60248201526e4f4e4c595f474f5645524e414e434560881b604482015290519081900360640190fd5b6105dc81111561034e576040805162461bcd60e51b815260206004820152600d60248201526c45584345454445445f4d41582560981b604482015290519081900360640190fd5b600255565b6001546001600160a01b031681565b6000816001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b1580156103b157600080fd5b505afa1580156103c5573d6000803e3d6000fd5b505050506040513d60208110156103db57600080fd5b505192915050565b6105dc81565b6000546001600160a01b03163314610434576040805162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b604482015290519081900360640190fd5b6001600160a01b03811661047e576040805162461bcd60e51b815260206004820152600c60248201526b5a45524f5f4144445245535360a01b604482015290519081900360640190fd5b600080546001600160a01b0319908116909155600180549091166001600160a01b0392909216919091179055565b7f000000000000000000000000000000000000000000000000000000000000000081565b61271081565b60025481565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b15801561053757600080fd5b505afa15801561054b573d6000803e3d6000fd5b505050506040513d602081101561056157600080fd5b5051905090565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b1790526105ba90849061061f565b505050565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b17905261061990859061061f565b50505050565b6000610674826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166106d09092919063ffffffff16565b8051909150156105ba5780806020019051602081101561069357600080fd5b50516105ba5760405162461bcd60e51b815260040180806020018281038252602a815260200180610915602a913960400191505060405180910390fd5b60606106df84846000856106e9565b90505b9392505050565b60608247101561072a5760405162461bcd60e51b81526004018080602001828103825260268152602001806108ef6026913960400191505060405180910390fd5b61073385610844565b610784576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b600080866001600160a01b031685876040518082805190602001908083835b602083106107c25780518252601f1990920191602091820191016107a3565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610824576040519150601f19603f3d011682016040523d82523d6000602084013e610829565b606091505b509150915061083982828661084a565b979650505050505050565b3b151590565b606083156108595750816106e2565b8251156108695782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156108b357818101518382015260200161089b565b50505050905090810190601f1680156108e05780820380516001836020036101000a031916815260200191505b509250505060405180910390fdfe416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c5361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a26469706673582212200cdebe693598cd07ed153e03c33169b3d47599e8c849d2bd56ddb86bbf1c1add64736f6c63430007060033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061009d5760003560e01c8063a9bb4da011610066578063a9bb4da014610175578063c4d66de81461017d578063d2e6d1c3146101a3578063e256888f146101ab578063fc7a91f8146101b35761009d565b8062f714ce146100a257806347e7ef24146100d05780634883c745146100fc57806350adcdb71461011957806370a082311461013d575b600080fd5b6100ce600480360360408110156100b857600080fd5b50803590602001356001600160a01b03166101bb565b005b6100ce600480360360408110156100e657600080fd5b506001600160a01b038135169060200135610293565b6100ce6004803603602081101561011257600080fd5b50356102a8565b610121610353565b604080516001600160a01b039092168252519081900360200190f35b6101636004803603602081101561015357600080fd5b50356001600160a01b0316610362565b60408051918252519081900360200190f35b6101636103e3565b6100ce6004803603602081101561019357600080fd5b50356001600160a01b03166103e9565b6101216104ac565b6101636104d0565b6101636104d6565b6101c36104dc565b6001600160a01b0316336001600160a01b03161461021a576040805162461bcd60e51b815260206004820152600f60248201526e4f4e4c595f474f5645524e414e434560881b604482015290519081900360640190fd5b6001548290610231906001600160a01b0316610362565b1015610278576040805162461bcd60e51b8152602060048201526011602482015270125394d551919250d251539517d1955391607a1b604482015290519081900360640190fd5b60015461028f906001600160a01b03168284610568565b5050565b61028f6001600160a01b0383163330846105bf565b6102b06104dc565b6001600160a01b0316336001600160a01b031614610307576040805162461bcd60e51b815260206004820152600f60248201526e4f4e4c595f474f5645524e414e434560881b604482015290519081900360640190fd5b6105dc81111561034e576040805162461bcd60e51b815260206004820152600d60248201526c45584345454445445f4d41582560981b604482015290519081900360640190fd5b600255565b6001546001600160a01b031681565b6000816001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b1580156103b157600080fd5b505afa1580156103c5573d6000803e3d6000fd5b505050506040513d60208110156103db57600080fd5b505192915050565b6105dc81565b6000546001600160a01b03163314610434576040805162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b604482015290519081900360640190fd5b6001600160a01b03811661047e576040805162461bcd60e51b815260206004820152600c60248201526b5a45524f5f4144445245535360a01b604482015290519081900360640190fd5b600080546001600160a01b0319908116909155600180549091166001600160a01b0392909216919091179055565b7f000000000000000000000000000000000000000000000000000000000000000081565b61271081565b60025481565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b15801561053757600080fd5b505afa15801561054b573d6000803e3d6000fd5b505050506040513d602081101561056157600080fd5b5051905090565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b1790526105ba90849061061f565b505050565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b17905261061990859061061f565b50505050565b6000610674826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166106d09092919063ffffffff16565b8051909150156105ba5780806020019051602081101561069357600080fd5b50516105ba5760405162461bcd60e51b815260040180806020018281038252602a815260200180610915602a913960400191505060405180910390fd5b60606106df84846000856106e9565b90505b9392505050565b60608247101561072a5760405162461bcd60e51b81526004018080602001828103825260268152602001806108ef6026913960400191505060405180910390fd5b61073385610844565b610784576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b600080866001600160a01b031685876040518082805190602001908083835b602083106107c25780518252601f1990920191602091820191016107a3565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610824576040519150601f19603f3d011682016040523d82523d6000602084013e610829565b606091505b509150915061083982828661084a565b979650505050505050565b3b151590565b606083156108595750816106e2565b8251156108695782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156108b357818101518382015260200161089b565b50505050905090810190601f1680156108e05780820380516001836020036101000a031916815260200191505b509250505060405180910390fdfe416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c5361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a26469706673582212200cdebe693598cd07ed153e03c33169b3d47599e8c849d2bd56ddb86bbf1c1add64736f6c63430007060033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
