{
  "_format": "hh-sol-artifact-1",
  "contractName": "PendleYieldTokenHolderBaseV2",
  "sourceName": "contracts/core/abstractV2/PendleYieldTokenHolderBaseV2.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_governanceManager",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_forge",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_yieldToken",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "_expiry",
          "type": "uint256"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "sendTo",
          "type": "address"
        }
      ],
      "name": "EtherWithdraw",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "contract IERC20",
          "name": "token",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "sendTo",
          "type": "address"
        }
      ],
      "name": "TokenWithdraw",
      "type": "event"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "afterReceiveTokens",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "expiry",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "forge",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "governanceManager",
      "outputs": [
        {
          "internalType": "contract PendleGovernanceManager",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "minNYieldAfterPush",
          "type": "uint256"
        }
      ],
      "name": "pushYieldTokens",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "redeemRewards",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "rewardToken",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "name": "setUpEmergencyMode",
      "outputs": [],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "spender",
          "type": "address"
        },
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "name": "setUpEmergencyModeV2",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        },
        {
          "internalType": "address payable",
          "name": "sendTo",
          "type": "address"
        }
      ],
      "name": "withdrawEther",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "contract IERC20",
          "name": "token",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        },
        {
          "internalType": "address",
          "name": "sendTo",
          "type": "address"
        }
      ],
      "name": "withdrawToken",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "yieldToken",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "bytecode": "0x60e06040523480156200001157600080fd5b50604051620014bb380380620014bb833981810160405260808110156200003757600080fd5b5080516020820151604083015160609093015191929091836001600160a01b0381166200009a576040805162461bcd60e51b815260206004820152600c60248201526b5a45524f5f4144445245535360a01b604482015290519081900360640190fd5b60008054336001600160a01b031990911617815560609190911b6001600160601b0319166080526040805163f7c618c160e01b815290516001600160a01b0386169163f7c618c1916004808301926020929190829003018186803b1580156200010257600080fd5b505afa15801562000117573d6000803e3d6000fd5b505050506040513d60208110156200012e57600080fd5b5051604080516307a77c5360e11b815290519192506000916001600160a01b03871691630f4ef8a6916004808301926020929190829003018186803b1580156200017757600080fd5b505afa1580156200018c573d6000803e3d6000fd5b505050506040513d6020811015620001a357600080fd5b5051606085811b6001600160601b031990811660a0529087901b1660c052600180546001600160a01b0319166001600160a01b03851690811790915560028590559091506200020290826000196200020e602090811b6200078617901c565b50505050505062000620565b80158062000298575060408051636eb1769f60e11b81523060048201526001600160a01b03848116602483015291519185169163dd62ed3e91604480820192602092909190829003018186803b1580156200026857600080fd5b505afa1580156200027d573d6000803e3d6000fd5b505050506040513d60208110156200029457600080fd5b5051155b620002d55760405162461bcd60e51b8152600401808060200182810382526036815260200180620014856036913960400191505060405180910390fd5b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b0390811663095ea7b360e01b179091526200032d9185916200033216565b505050565b60006200038e826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316620003ee60201b6200089e179092919060201c565b8051909150156200032d57808060200190516020811015620003af57600080fd5b50516200032d5760405162461bcd60e51b815260040180806020018281038252602a8152602001806200145b602a913960400191505060405180910390fd5b6060620003ff848460008562000409565b90505b9392505050565b6060824710156200044c5760405162461bcd60e51b8152600401808060200182810382526026815260200180620014356026913960400191505060405180910390fd5b620004578562000570565b620004a9576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b600080866001600160a01b031685876040518082805190602001908083835b60208310620004e95780518252601f199092019160209182019101620004c8565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146200054d576040519150601f19603f3d011682016040523d82523d6000602084013e62000552565b606091505b5090925090506200056582828662000576565b979650505050505050565b3b151590565b606083156200058757508162000402565b825115620005985782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015620005e4578181015183820152602001620005ca565b50505050905090810190601f168015620006125780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b60805160601c60a05160601c60c05160601c610dbc620006796000398061022952806103ed528061043e525080610295528061041152806104a15280610598528061094752508061074d52806108bb5250610dbc6000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c8063ce56c45411610071578063ce56c4541461019a578063d02fba51146101c6578063d2e6d1c3146101ec578063e184c9be146101f4578063f0fc4ec11461020e578063f7c618c114610216576100b4565b806303b7acaf146100b95780633ccdbb28146100e95780636c6f42391461011f57806376d5de851461014357806391680e5f1461014b5780639cabec7b1461017d575b600080fd5b6100e7600480360360408110156100cf57600080fd5b506001600160a01b038135169060200135151561021e565b005b6100e7600480360360608110156100ff57600080fd5b506001600160a01b038135811691602081013591604090910135166102db565b6101276103eb565b604080516001600160a01b039092168252519081900360200190f35b61012761040f565b6100e76004803603606081101561016157600080fd5b506001600160a01b038135169060208101359060400135610433565b6100e76004803603602081101561019357600080fd5b50356105c5565b6100e7600480360360408110156101b057600080fd5b50803590602001356001600160a01b03166105c8565b6100e7600480360360208110156101dc57600080fd5b50356001600160a01b0316610707565b61012761074b565b6101fc61076f565b60408051918252519081900360200190f35b6100e7610775565b610127610777565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610288576040805162461bcd60e51b815260206004820152600a6024820152694f4e4c595f464f52474560b01b604482015290519081900360640190fd5b6102be6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001683600019610786565b6001546102d7906001600160a01b031683600019610786565b5050565b6102e36108b7565b6001600160a01b0316336001600160a01b03161461033a576040805162461bcd60e51b815260206004820152600f60248201526e4f4e4c595f474f5645524e414e434560881b604482015290519081900360640190fd5b61034383610943565b610388576040805162461bcd60e51b81526020600482015260116024820152701513d2d15397d393d517d0531313d5d151607a1b604482015290519081900360640190fd5b61039c6001600160a01b038416828461099b565b604080516001600160a01b0380861682526020820185905283168183015290517f72cb8a894ddb372ceec3d2a7648d86f17d5a15caae0e986c53109b8a9a9385e69181900360600190a1505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461049d576040805162461bcd60e51b815260206004820152600a6024820152694f4e4c595f464f52474560b01b604482015290519081900360640190fd5b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b15801561050c57600080fd5b505afa158015610520573d6000803e3d6000fd5b505050506040513d602081101561053657600080fd5b505190508161054582856109ed565b101561058b576040805162461bcd60e51b815260206004820152601060248201526f24a72b20a924a0a721a2afa2a92927a960811b604482015290519081900360640190fd5b6105bf6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016858561099b565b50505050565b50565b6105d06108b7565b6001600160a01b0316336001600160a01b031614610627576040805162461bcd60e51b815260206004820152600f60248201526e4f4e4c595f474f5645524e414e434560881b604482015290519081900360640190fd5b6040516000906001600160a01b0383169084908381818185875af1925050503d8060008114610672576040519150601f19603f3d011682016040523d82523d6000602084013e610677565b606091505b50509050806106bf576040805162461bcd60e51b815260206004820152600f60248201526e15d2551211149055d7d19052531151608a1b604482015290519081900360640190fd5b604080518481526001600160a01b038416602082015281517fec47e7ed86c86774d1a72c19f35c639911393fe7c1a34031fdbd260890da90de929181900390910190a1505050565b6040805162461bcd60e51b815260206004820152601460248201527311955390d51253d397d11154149150d25055115160621b604482015290519081900360640190fd5b7f000000000000000000000000000000000000000000000000000000000000000081565b60025481565b565b6001546001600160a01b031681565b80158061080c575060408051636eb1769f60e11b81523060048201526001600160a01b03848116602483015291519185169163dd62ed3e91604480820192602092909190829003018186803b1580156107de57600080fd5b505afa1580156107f2573d6000803e3d6000fd5b505050506040513d602081101561080857600080fd5b5051155b6108475760405162461bcd60e51b8152600401808060200182810382526036815260200180610d516036913960400191505060405180910390fd5b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663095ea7b360e01b179052610899908490610a4a565b505050565b60606108ad8484600085610afb565b90505b9392505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b15801561091257600080fd5b505afa158015610926573d6000803e3d6000fd5b505050506040513d602081101561093c57600080fd5b5051905090565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b03161415801561099557506001546001600160a01b03838116911614155b92915050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610899908490610a4a565b600082821115610a44576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000610a9f826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661089e9092919063ffffffff16565b80519091501561089957808060200190516020811015610abe57600080fd5b50516108995760405162461bcd60e51b815260040180806020018281038252602a815260200180610d27602a913960400191505060405180910390fd5b606082471015610b3c5760405162461bcd60e51b8152600401808060200182810382526026815260200180610d016026913960400191505060405180910390fd5b610b4585610c56565b610b96576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b600080866001600160a01b031685876040518082805190602001908083835b60208310610bd45780518252601f199092019160209182019101610bb5565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610c36576040519150601f19603f3d011682016040523d82523d6000602084013e610c3b565b606091505b5091509150610c4b828286610c5c565b979650505050505050565b3b151590565b60608315610c6b5750816108b0565b825115610c7b5782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610cc5578181015183820152602001610cad565b50505050905090810190601f168015610cf25780820380516001836020036101000a031916815260200191505b509250505060405180910390fdfe416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c5361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f20746f206e6f6e2d7a65726f20616c6c6f77616e6365a2646970667358221220798e2538483018b6dc0eb7cb6f294dad30c78a653c47be575502ff5cf62905c464736f6c63430007060033416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c5361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f20746f206e6f6e2d7a65726f20616c6c6f77616e6365",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100b45760003560e01c8063ce56c45411610071578063ce56c4541461019a578063d02fba51146101c6578063d2e6d1c3146101ec578063e184c9be146101f4578063f0fc4ec11461020e578063f7c618c114610216576100b4565b806303b7acaf146100b95780633ccdbb28146100e95780636c6f42391461011f57806376d5de851461014357806391680e5f1461014b5780639cabec7b1461017d575b600080fd5b6100e7600480360360408110156100cf57600080fd5b506001600160a01b038135169060200135151561021e565b005b6100e7600480360360608110156100ff57600080fd5b506001600160a01b038135811691602081013591604090910135166102db565b6101276103eb565b604080516001600160a01b039092168252519081900360200190f35b61012761040f565b6100e76004803603606081101561016157600080fd5b506001600160a01b038135169060208101359060400135610433565b6100e76004803603602081101561019357600080fd5b50356105c5565b6100e7600480360360408110156101b057600080fd5b50803590602001356001600160a01b03166105c8565b6100e7600480360360208110156101dc57600080fd5b50356001600160a01b0316610707565b61012761074b565b6101fc61076f565b60408051918252519081900360200190f35b6100e7610775565b610127610777565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610288576040805162461bcd60e51b815260206004820152600a6024820152694f4e4c595f464f52474560b01b604482015290519081900360640190fd5b6102be6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001683600019610786565b6001546102d7906001600160a01b031683600019610786565b5050565b6102e36108b7565b6001600160a01b0316336001600160a01b03161461033a576040805162461bcd60e51b815260206004820152600f60248201526e4f4e4c595f474f5645524e414e434560881b604482015290519081900360640190fd5b61034383610943565b610388576040805162461bcd60e51b81526020600482015260116024820152701513d2d15397d393d517d0531313d5d151607a1b604482015290519081900360640190fd5b61039c6001600160a01b038416828461099b565b604080516001600160a01b0380861682526020820185905283168183015290517f72cb8a894ddb372ceec3d2a7648d86f17d5a15caae0e986c53109b8a9a9385e69181900360600190a1505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461049d576040805162461bcd60e51b815260206004820152600a6024820152694f4e4c595f464f52474560b01b604482015290519081900360640190fd5b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b15801561050c57600080fd5b505afa158015610520573d6000803e3d6000fd5b505050506040513d602081101561053657600080fd5b505190508161054582856109ed565b101561058b576040805162461bcd60e51b815260206004820152601060248201526f24a72b20a924a0a721a2afa2a92927a960811b604482015290519081900360640190fd5b6105bf6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016858561099b565b50505050565b50565b6105d06108b7565b6001600160a01b0316336001600160a01b031614610627576040805162461bcd60e51b815260206004820152600f60248201526e4f4e4c595f474f5645524e414e434560881b604482015290519081900360640190fd5b6040516000906001600160a01b0383169084908381818185875af1925050503d8060008114610672576040519150601f19603f3d011682016040523d82523d6000602084013e610677565b606091505b50509050806106bf576040805162461bcd60e51b815260206004820152600f60248201526e15d2551211149055d7d19052531151608a1b604482015290519081900360640190fd5b604080518481526001600160a01b038416602082015281517fec47e7ed86c86774d1a72c19f35c639911393fe7c1a34031fdbd260890da90de929181900390910190a1505050565b6040805162461bcd60e51b815260206004820152601460248201527311955390d51253d397d11154149150d25055115160621b604482015290519081900360640190fd5b7f000000000000000000000000000000000000000000000000000000000000000081565b60025481565b565b6001546001600160a01b031681565b80158061080c575060408051636eb1769f60e11b81523060048201526001600160a01b03848116602483015291519185169163dd62ed3e91604480820192602092909190829003018186803b1580156107de57600080fd5b505afa1580156107f2573d6000803e3d6000fd5b505050506040513d602081101561080857600080fd5b5051155b6108475760405162461bcd60e51b8152600401808060200182810382526036815260200180610d516036913960400191505060405180910390fd5b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663095ea7b360e01b179052610899908490610a4a565b505050565b60606108ad8484600085610afb565b90505b9392505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b15801561091257600080fd5b505afa158015610926573d6000803e3d6000fd5b505050506040513d602081101561093c57600080fd5b5051905090565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b03161415801561099557506001546001600160a01b03838116911614155b92915050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610899908490610a4a565b600082821115610a44576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000610a9f826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661089e9092919063ffffffff16565b80519091501561089957808060200190516020811015610abe57600080fd5b50516108995760405162461bcd60e51b815260040180806020018281038252602a815260200180610d27602a913960400191505060405180910390fd5b606082471015610b3c5760405162461bcd60e51b8152600401808060200182810382526026815260200180610d016026913960400191505060405180910390fd5b610b4585610c56565b610b96576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b600080866001600160a01b031685876040518082805190602001908083835b60208310610bd45780518252601f199092019160209182019101610bb5565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610c36576040519150601f19603f3d011682016040523d82523d6000602084013e610c3b565b606091505b5091509150610c4b828286610c5c565b979650505050505050565b3b151590565b60608315610c6b5750816108b0565b825115610c7b5782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610cc5578181015183820152602001610cad565b50505050905090810190601f168015610cf25780820380516001836020036101000a031916815260200191505b509250505060405180910390fdfe416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c5361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f20746f206e6f6e2d7a65726f20616c6c6f77616e6365a2646970667358221220798e2538483018b6dc0eb7cb6f294dad30c78a653c47be575502ff5cf62905c464736f6c63430007060033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
