{
  "_format": "hh-sol-artifact-1",
  "contractName": "NAVIssuanceHookMock",
  "sourceName": "contracts/mocks/protocol/module/NAVIssuanceHookMock.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "contract ISetToken",
          "name": "_setToken",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_reserveAsset",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "_reserveAssetQuantity",
          "type": "uint256"
        },
        {
          "internalType": "address",
          "name": "_sender",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_to",
          "type": "address"
        }
      ],
      "name": "invokePreIssueHook",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "contract ISetToken",
          "name": "_setToken",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "_redeemQuantity",
          "type": "uint256"
        },
        {
          "internalType": "address",
          "name": "_sender",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_to",
          "type": "address"
        }
      ],
      "name": "invokePreRedeemHook",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "retrievedRedeemQuantity",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "retrievedReserveAsset",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "retrievedReserveAssetQuantity",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "retrievedSender",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "retrievedSetToken",
      "outputs": [
        {
          "internalType": "contract ISetToken",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "retrievedTo",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "bytecode": "0x608060405234801561001057600080fd5b50610287806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063b93be1571161005b578063b93be157146100ff578063c866b8b914610119578063d0f02e6714610121578063fb42e7ec1461012957610088565b80632c7687981461008d5780635212b9fc146100b15780639b19c2bf146100b9578063a7e38e8b146100f7575b600080fd5b61009561016f565b604080516001600160a01b039092168252519081900360200190f35b61009561017e565b6100f5600480360360808110156100cf57600080fd5b506001600160a01b0381358116916020810135916040820135811691606001351661018d565b005b6100956101d2565b6101076101e1565b60408051918252519081900360200190f35b6100956101e7565b6101076101f6565b6100f5600480360360a081101561013f57600080fd5b506001600160a01b03813581169160208101358216916040820135916060810135821691608090910135166101fc565b6003546001600160a01b031681565b6001546001600160a01b031681565b600080546001600160a01b039586166001600160a01b031991821617909155600493909355600380549285169284169290921790915560058054919093169116179055565b6005546001600160a01b031681565b60045481565b6000546001600160a01b031681565b60025481565b600080546001600160a01b039687166001600160a01b0319918216179091556001805495871695821695909517909455600292909255600380549185169184169190911790556005805491909316911617905556fea2646970667358221220727ad0c5451bf08242d05f71d7b6f92435dd63e0a71aaafe2c943b8bbdb04fe864736f6c634300060a0033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063b93be1571161005b578063b93be157146100ff578063c866b8b914610119578063d0f02e6714610121578063fb42e7ec1461012957610088565b80632c7687981461008d5780635212b9fc146100b15780639b19c2bf146100b9578063a7e38e8b146100f7575b600080fd5b61009561016f565b604080516001600160a01b039092168252519081900360200190f35b61009561017e565b6100f5600480360360808110156100cf57600080fd5b506001600160a01b0381358116916020810135916040820135811691606001351661018d565b005b6100956101d2565b6101076101e1565b60408051918252519081900360200190f35b6100956101e7565b6101076101f6565b6100f5600480360360a081101561013f57600080fd5b506001600160a01b03813581169160208101358216916040820135916060810135821691608090910135166101fc565b6003546001600160a01b031681565b6001546001600160a01b031681565b600080546001600160a01b039586166001600160a01b031991821617909155600493909355600380549285169284169290921790915560058054919093169116179055565b6005546001600160a01b031681565b60045481565b6000546001600160a01b031681565b60025481565b600080546001600160a01b039687166001600160a01b0319918216179091556001805495871695821695909517909455600292909255600380549185169184169190911790556005805491909316911617905556fea2646970667358221220727ad0c5451bf08242d05f71d7b6f92435dd63e0a71aaafe2c943b8bbdb04fe864736f6c634300060a0033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
