{
  "_format": "hh-sol-artifact-1",
  "contractName": "PendleYieldTokenHolderBaseV2Multi",
  "sourceName": "contracts/core/abstractV2/PendleYieldTokenHolderBaseV2Multi.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_forge",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_yieldToken",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "_expiry",
          "type": "uint256"
        },
        {
          "components": [
            {
              "internalType": "address",
              "name": "tokenA",
              "type": "address"
            },
            {
              "internalType": "address",
              "name": "tokenB",
              "type": "address"
            },
            {
              "internalType": "address",
              "name": "tokenC",
              "type": "address"
            }
          ],
          "internalType": "struct TrioTokens",
          "name": "_trioRewardTokens",
          "type": "tuple"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "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": [
        {
          "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": [],
      "name": "trioRewardTokens",
      "outputs": [
        {
          "internalType": "address",
          "name": "tokenA",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "tokenB",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "tokenC",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "yieldToken",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "stateMutability": "payable",
      "type": "receive"
    }
  ],
  "bytecode": "0x60806040523480156200001157600080fd5b506040516200122038038062001220833981016040819052620000349162000527565b6200004a816200028960201b620003b21760201c565b600080546001600160a01b03199081166001600160a01b03868116919091179092556001805482168784169081179091556005859055835160028054841691851691909117905560208085015160038054851691861691909117905560408086015160048054909516951694909417835583516303e21fa960e61b81529351919363f887ea40938181019391829003018186803b158015620000eb57600080fd5b505afa15801562000100573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001269190620005e2565b6001600160a01b0316633fc8cef36040518163ffffffff1660e01b815260040160206040518083038186803b1580156200015f57600080fd5b505afa15801562000174573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200019a9190620005e2565b600660006101000a8154816001600160a01b0302191690836001600160a01b031602179055506200027f846001600160a01b0316630f4ef8a66040518163ffffffff1660e01b815260040160206040518083038186803b158015620001fe57600080fd5b505afa15801562000213573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002399190620005e2565b604080516060810182526002546001600160a01b03908116825260035481166020808401919091526004549091169282019290925291906200046f6200035b821b17901c565b5050505062000649565b80516001600160a01b031615620003075780602001516001600160a01b031681600001516001600160a01b031614158015620002df575080604001516001600160a01b031681600001516001600160a01b031614155b620003075760405162461bcd60e51b8152600401620002fe9062000608565b60405180910390fd5b60208101516001600160a01b031615620003585780604001516001600160a01b031681602001516001600160a01b03161415620003585760405162461bcd60e51b8152600401620002fe9062000608565b50565b81516001600160a01b0316156200039757620003978160001984600001516001600160a01b03166200041960201b620004ef179092919060201c565b60208201516001600160a01b031615620003d657620003d68160001984602001516001600160a01b03166200041960201b620004ef179092919060201c565b60408201516001600160a01b0316156200041557620004158160001984604001516001600160a01b03166200041960201b620004ef179092919060201c565b5050565b826001600160a01b031663095ea7b38360006040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b1580156200047257600080fd5b505af115801562000487573d6000803e3d6000fd5b505050506040513d60208110156200049e57600080fd5b50506040805163095ea7b360e01b81526001600160a01b0384811660048301526024820184905291519185169163095ea7b3916044808201926020929091908290030181600087803b158015620004f457600080fd5b505af115801562000509573d6000803e3d6000fd5b505050506040513d60208110156200052057600080fd5b5050505050565b60008060008084860360c08112156200053e578485fd5b85516200054b8162000633565b60208701519095506200055e8162000633565b604087015190945092506060605f19820112156200057a578182fd5b50604051606081016001600160401b03811182821017156200059857fe5b6040526060860151620005ab8162000633565b81526080860151620005bd8162000633565b602082015260a0860151620005d28162000633565b6040820152939692955090935050565b600060208284031215620005f4578081fd5b8151620006018162000633565b9392505050565b6020808252601190820152704455504c4943415445445f544f4b454e5360781b604082015260600190565b6001600160a01b03811681146200035857600080fd5b610bc780620006596000396000f3fe6080604052600436106100955760003560e01c8063c72e9d1d11610059578063c72e9d1d14610143578063d02fba5114610167578063e184c9be14610187578063f0fc4ec1146101a9578063f7c618c1146101be5761009c565b806303b7acaf146100a15780636c6f4239146100c357806376d5de85146100ee57806391680e5f146101035780639cabec7b146101235761009c565b3661009c57005b600080fd5b3480156100ad57600080fd5b506100c16100bc3660046109be565b6101d3565b005b3480156100cf57600080fd5b506100d861025c565b6040516100e59190610a5a565b60405180910390f35b3480156100fa57600080fd5b506100d861026b565b34801561010f57600080fd5b506100c161011e3660046109f8565b61027a565b34801561012f57600080fd5b506100c161013e366004610a2a565b61036d565b34801561014f57600080fd5b50610158610370565b6040516100e593929190610a6e565b34801561017357600080fd5b506100c16101823660046109a4565b61038d565b34801561019357600080fd5b5061019c6103a5565b6040516100e59190610b38565b3480156101b557600080fd5b506100c16103ab565b3480156101ca57600080fd5b506100d86103ad565b6001546001600160a01b031633146102065760405162461bcd60e51b81526004016101fd90610abf565b60405180910390fd5b60005461021f906001600160a01b0316836000196104ef565b604080516060810182526002546001600160a01b039081168252600354811660208301526004541691810191909152610258908361046f565b5050565b6001546001600160a01b031681565b6000546001600160a01b031681565b6001546001600160a01b031633146102a45760405162461bcd60e51b81526004016101fd90610abf565b600080546040516370a0823160e01b81526001600160a01b03909116906370a08231906102d5903090600401610a5a565b60206040518083038186803b1580156102ed57600080fd5b505afa158015610301573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103259190610a42565b90508161033282856105f7565b10156103505760405162461bcd60e51b81526004016101fd90610b0e565b600054610367906001600160a01b03168585610654565b50505050565b50565b6002546003546004546001600160a01b0392831692918216911683565b60405162461bcd60e51b81526004016101fd90610a91565b60055481565b565b600081565b80516001600160a01b0316156104225780602001516001600160a01b031681600001516001600160a01b031614158015610406575080604001516001600160a01b031681600001516001600160a01b031614155b6104225760405162461bcd60e51b81526004016101fd90610ae3565b60208101516001600160a01b03161561036d5780604001516001600160a01b031681602001516001600160a01b0316141561036d5760405162461bcd60e51b81526004016101fd90610ae3565b81516001600160a01b031615610497578151610497906001600160a01b0316826000196104ef565b60208201516001600160a01b0316156104c55760208201516104c5906001600160a01b0316826000196104ef565b60408201516001600160a01b031615610258576040820151610258906001600160a01b0316826000195b826001600160a01b031663095ea7b38360006040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561054757600080fd5b505af115801561055b573d6000803e3d6000fd5b505050506040513d602081101561057157600080fd5b50506040805163095ea7b360e01b81526001600160a01b0384811660048301526024820184905291519185169163095ea7b3916044808201926020929091908290030181600087803b1580156105c657600080fd5b505af11580156105da573d6000803e3d6000fd5b505050506040513d60208110156105f057600080fd5b5050505050565b60008282111561064e576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6106686001600160a01b038416838361066d565b505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610668908490600061070f826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661076b9092919063ffffffff16565b8051909150156106685780806020019051602081101561072e57600080fd5b50516106685760405162461bcd60e51b815260040180806020018281038252602a815260200180610b68602a913960400191505060405180910390fd5b606061077a8484600085610784565b90505b9392505050565b6060824710156107c55760405162461bcd60e51b8152600401808060200182810382526026815260200180610b426026913960400191505060405180910390fd5b6107ce856108df565b61081f576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b600080866001600160a01b031685876040518082805190602001908083835b6020831061085d5780518252601f19909201916020918201910161083e565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146108bf576040519150601f19603f3d011682016040523d82523d6000602084013e6108c4565b606091505b50915091506108d48282866108e9565b979650505050505050565b803b15155b919050565b606083156108f857508161077d565b8251156109085782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561095257818101518382015260200161093a565b50505050905090810190601f16801561097f5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b80356001600160a01b03811681146108e457600080fd5b6000602082840312156109b5578081fd5b61077d8261098d565b600080604083850312156109d0578081fd5b6109d98361098d565b9150602083013580151581146109ed578182fd5b809150509250929050565b600080600060608486031215610a0c578081fd5b610a158461098d565b95602085013595506040909401359392505050565b600060208284031215610a3b578081fd5b5035919050565b600060208284031215610a53578081fd5b5051919050565b6001600160a01b0391909116815260200190565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60208082526014908201527311955390d51253d397d11154149150d25055115160621b604082015260600190565b6020808252600a90820152694f4e4c595f464f52474560b01b604082015260600190565b6020808252601190820152704455504c4943415445445f544f4b454e5360781b604082015260600190565b60208082526010908201526f24a72b20a924a0a721a2afa2a92927a960811b604082015260600190565b9081526020019056fe416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c5361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a2646970667358221220b32c33edfc221cf310b70b085c6e97a26c480711dfc3075c0d307a65d139528864736f6c63430007060033",
  "deployedBytecode": "0x6080604052600436106100955760003560e01c8063c72e9d1d11610059578063c72e9d1d14610143578063d02fba5114610167578063e184c9be14610187578063f0fc4ec1146101a9578063f7c618c1146101be5761009c565b806303b7acaf146100a15780636c6f4239146100c357806376d5de85146100ee57806391680e5f146101035780639cabec7b146101235761009c565b3661009c57005b600080fd5b3480156100ad57600080fd5b506100c16100bc3660046109be565b6101d3565b005b3480156100cf57600080fd5b506100d861025c565b6040516100e59190610a5a565b60405180910390f35b3480156100fa57600080fd5b506100d861026b565b34801561010f57600080fd5b506100c161011e3660046109f8565b61027a565b34801561012f57600080fd5b506100c161013e366004610a2a565b61036d565b34801561014f57600080fd5b50610158610370565b6040516100e593929190610a6e565b34801561017357600080fd5b506100c16101823660046109a4565b61038d565b34801561019357600080fd5b5061019c6103a5565b6040516100e59190610b38565b3480156101b557600080fd5b506100c16103ab565b3480156101ca57600080fd5b506100d86103ad565b6001546001600160a01b031633146102065760405162461bcd60e51b81526004016101fd90610abf565b60405180910390fd5b60005461021f906001600160a01b0316836000196104ef565b604080516060810182526002546001600160a01b039081168252600354811660208301526004541691810191909152610258908361046f565b5050565b6001546001600160a01b031681565b6000546001600160a01b031681565b6001546001600160a01b031633146102a45760405162461bcd60e51b81526004016101fd90610abf565b600080546040516370a0823160e01b81526001600160a01b03909116906370a08231906102d5903090600401610a5a565b60206040518083038186803b1580156102ed57600080fd5b505afa158015610301573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103259190610a42565b90508161033282856105f7565b10156103505760405162461bcd60e51b81526004016101fd90610b0e565b600054610367906001600160a01b03168585610654565b50505050565b50565b6002546003546004546001600160a01b0392831692918216911683565b60405162461bcd60e51b81526004016101fd90610a91565b60055481565b565b600081565b80516001600160a01b0316156104225780602001516001600160a01b031681600001516001600160a01b031614158015610406575080604001516001600160a01b031681600001516001600160a01b031614155b6104225760405162461bcd60e51b81526004016101fd90610ae3565b60208101516001600160a01b03161561036d5780604001516001600160a01b031681602001516001600160a01b0316141561036d5760405162461bcd60e51b81526004016101fd90610ae3565b81516001600160a01b031615610497578151610497906001600160a01b0316826000196104ef565b60208201516001600160a01b0316156104c55760208201516104c5906001600160a01b0316826000196104ef565b60408201516001600160a01b031615610258576040820151610258906001600160a01b0316826000195b826001600160a01b031663095ea7b38360006040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561054757600080fd5b505af115801561055b573d6000803e3d6000fd5b505050506040513d602081101561057157600080fd5b50506040805163095ea7b360e01b81526001600160a01b0384811660048301526024820184905291519185169163095ea7b3916044808201926020929091908290030181600087803b1580156105c657600080fd5b505af11580156105da573d6000803e3d6000fd5b505050506040513d60208110156105f057600080fd5b5050505050565b60008282111561064e576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6106686001600160a01b038416838361066d565b505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610668908490600061070f826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661076b9092919063ffffffff16565b8051909150156106685780806020019051602081101561072e57600080fd5b50516106685760405162461bcd60e51b815260040180806020018281038252602a815260200180610b68602a913960400191505060405180910390fd5b606061077a8484600085610784565b90505b9392505050565b6060824710156107c55760405162461bcd60e51b8152600401808060200182810382526026815260200180610b426026913960400191505060405180910390fd5b6107ce856108df565b61081f576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b600080866001600160a01b031685876040518082805190602001908083835b6020831061085d5780518252601f19909201916020918201910161083e565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146108bf576040519150601f19603f3d011682016040523d82523d6000602084013e6108c4565b606091505b50915091506108d48282866108e9565b979650505050505050565b803b15155b919050565b606083156108f857508161077d565b8251156109085782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561095257818101518382015260200161093a565b50505050905090810190601f16801561097f5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b80356001600160a01b03811681146108e457600080fd5b6000602082840312156109b5578081fd5b61077d8261098d565b600080604083850312156109d0578081fd5b6109d98361098d565b9150602083013580151581146109ed578182fd5b809150509250929050565b600080600060608486031215610a0c578081fd5b610a158461098d565b95602085013595506040909401359392505050565b600060208284031215610a3b578081fd5b5035919050565b600060208284031215610a53578081fd5b5051919050565b6001600160a01b0391909116815260200190565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60208082526014908201527311955390d51253d397d11154149150d25055115160621b604082015260600190565b6020808252600a90820152694f4e4c595f464f52474560b01b604082015260600190565b6020808252601190820152704455504c4943415445445f544f4b454e5360781b604082015260600190565b60208082526010908201526f24a72b20a924a0a721a2afa2a92927a960811b604082015260600190565b9081526020019056fe416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c5361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a2646970667358221220b32c33edfc221cf310b70b085c6e97a26c480711dfc3075c0d307a65d139528864736f6c63430007060033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
