{
  "_format": "hh-sol-artifact-1",
  "contractName": "ERC20ReceiverMock",
  "sourceName": "contracts/token/ERC20/mocks/ERC20ReceiverMock.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "bool",
          "name": "accept",
          "type": "bool"
        },
        {
          "internalType": "address",
          "name": "tokenAddress",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "sender",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "from",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "bytes",
          "name": "data",
          "type": "bytes"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "gas",
          "type": "uint256"
        }
      ],
      "name": "ERC20Received",
      "type": "event"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "sender",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "from",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        },
        {
          "internalType": "bytes",
          "name": "data",
          "type": "bytes"
        }
      ],
      "name": "onERC20Received",
      "outputs": [
        {
          "internalType": "bytes4",
          "name": "",
          "type": "bytes4"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes4",
          "name": "interfaceId",
          "type": "bytes4"
        }
      ],
      "name": "supportsInterface",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "bytecode": "0x60c060405234801561001057600080fd5b506040516104eb3803806104eb8339818101604052604081101561003357600080fd5b50805160209091015190151560f881901b608052606082901b6001600160601b03191660a05260ff16906001600160a01b0316610468610083600039806102495250806102d752506104686000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806301ffc9a71461003b5780634fc358591461008e575b600080fd5b61007a6004803603602081101561005157600080fd5b50357fffffffff0000000000000000000000000000000000000000000000000000000016610196565b604080519115158252519081900360200190f35b610161600480360360808110156100a457600080fd5b73ffffffffffffffffffffffffffffffffffffffff8235811692602081013590911691604082013591908101906080810160608201356401000000008111156100ec57600080fd5b8201836020820111156100fe57600080fd5b8035906020019184600183028401116401000000008311171561012057600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061022f945050505050565b604080517fffffffff000000000000000000000000000000000000000000000000000000009092168252519081900360200190f35b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000148061022957507fffffffff0000000000000000000000000000000000000000000000000000000082167f4fc3585900000000000000000000000000000000000000000000000000000000145b92915050565b60003373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146102d557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f455243323052656365697665723a2077726f6e6720746f6b656e000000000000604482015290519081900360640190fd5b7f000000000000000000000000000000000000000000000000000000000000000015610407577f4e669eb778cc38e0f3ce5337506502c4531ff873bff6ea014994632e7a759b2d858585855a604051808673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff16815260200184815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156103a257818101518382015260200161038a565b50505050905090810190601f1680156103cf5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a1507f4fc358590000000000000000000000000000000000000000000000000000000061042a565b507fffffffff000000000000000000000000000000000000000000000000000000005b94935050505056fea2646970667358221220d1e798b91119ca8c8f9bf84668d29bc76a2f00165ed58f32b3c1c8579392fe8464736f6c63430007060033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c806301ffc9a71461003b5780634fc358591461008e575b600080fd5b61007a6004803603602081101561005157600080fd5b50357fffffffff0000000000000000000000000000000000000000000000000000000016610196565b604080519115158252519081900360200190f35b610161600480360360808110156100a457600080fd5b73ffffffffffffffffffffffffffffffffffffffff8235811692602081013590911691604082013591908101906080810160608201356401000000008111156100ec57600080fd5b8201836020820111156100fe57600080fd5b8035906020019184600183028401116401000000008311171561012057600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061022f945050505050565b604080517fffffffff000000000000000000000000000000000000000000000000000000009092168252519081900360200190f35b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000148061022957507fffffffff0000000000000000000000000000000000000000000000000000000082167f4fc3585900000000000000000000000000000000000000000000000000000000145b92915050565b60003373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146102d557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f455243323052656365697665723a2077726f6e6720746f6b656e000000000000604482015290519081900360640190fd5b7f000000000000000000000000000000000000000000000000000000000000000015610407577f4e669eb778cc38e0f3ce5337506502c4531ff873bff6ea014994632e7a759b2d858585855a604051808673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff16815260200184815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b838110156103a257818101518382015260200161038a565b50505050905090810190601f1680156103cf5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a1507f4fc358590000000000000000000000000000000000000000000000000000000061042a565b507fffffffff000000000000000000000000000000000000000000000000000000005b94935050505056fea2646970667358221220d1e798b91119ca8c8f9bf84668d29bc76a2f00165ed58f32b3c1c8579392fe8464736f6c63430007060033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
