{
  "_format": "hh-sol-artifact-1",
  "contractName": "EtherSwap",
  "sourceName": "contracts/EtherSwap.sol",
  "abi": [
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "preimageHash",
          "type": "bytes32"
        },
        {
          "indexed": false,
          "internalType": "bytes32",
          "name": "preimage",
          "type": "bytes32"
        }
      ],
      "name": "Claim",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "preimageHash",
          "type": "bytes32"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "claimAddress",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "refundAddress",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "timelock",
          "type": "uint256"
        }
      ],
      "name": "Lockup",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "preimageHash",
          "type": "bytes32"
        }
      ],
      "name": "Refund",
      "type": "event"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "preimage",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        },
        {
          "internalType": "address",
          "name": "refundAddress",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "timelock",
          "type": "uint256"
        }
      ],
      "name": "claim",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "preimageHash",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        },
        {
          "internalType": "address",
          "name": "claimAddress",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "refundAddress",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "timelock",
          "type": "uint256"
        }
      ],
      "name": "hashValues",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "preimageHash",
          "type": "bytes32"
        },
        {
          "internalType": "address",
          "name": "claimAddress",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "timelock",
          "type": "uint256"
        }
      ],
      "name": "lock",
      "outputs": [],
      "stateMutability": "payable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "preimageHash",
          "type": "bytes32"
        },
        {
          "internalType": "address payable",
          "name": "claimAddress",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "timelock",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "prepayAmount",
          "type": "uint256"
        }
      ],
      "name": "lockPrepayMinerfee",
      "outputs": [],
      "stateMutability": "payable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "preimageHash",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        },
        {
          "internalType": "address",
          "name": "claimAddress",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "timelock",
          "type": "uint256"
        }
      ],
      "name": "refund",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "name": "swaps",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "version",
      "outputs": [
        {
          "internalType": "uint8",
          "name": "",
          "type": "uint8"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "bytecode": "0x608060405234801561001057600080fd5b506109e5806100206000396000f3fe6080604052600436106100705760003560e01c80636fa4ae601161004e5780636fa4ae60146100d65780638b2f8f82146100e9578063c3c37fbc14610173578063eb84e7f21461019357600080fd5b80630899146b1461007557806335cd4ccb1461008a57806354fd4d50146100aa575b600080fd5b6100886100833660046107fe565b6101d3565b005b34801561009657600080fd5b506100886100a5366004610836565b6101e4565b3480156100b657600080fd5b506100bf600281565b60405160ff90911681526020015b60405180910390f35b6100886100e4366004610875565b610309565b3480156100f557600080fd5b506101656101043660046108b2565b60408051602081018790529081018590526bffffffffffffffffffffffff19606085811b82168184015284901b1660748201526088810182905260009060a80160405160208183030381529060405280519060200120905095945050505050565b6040519081526020016100cd565b34801561017f57600080fd5b5061008861018e366004610836565b6103a3565b34801561019f57600080fd5b506101c36101ae366004610904565b60006020819052908152604090205460ff1681565b60405190151581526020016100cd565b6101df833484846104d0565b505050565b4381111561025f5760405162461bcd60e51b815260206004820152602560248201527f4574686572537761703a207377617020686173206e6f742074696d6564206f7560448201527f742079657400000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6040805160208082018790528183018690526bffffffffffffffffffffffff19606086811b82168185015233901b16607483015260888083018590528351808403909101815260a890920190925280519101206102bb8161067a565b600081815260208190526040808220805460ff191690555186917f3fbd469ec3a5ce074f975f76ce27e727ba21c99176917b97ae2e713695582a1291a26103023385610706565b5050505050565b80341161037e5760405162461bcd60e51b815260206004820152603d60248201527f4574686572537761703a2073656e7420616d6f756e74206d757374206265206760448201527f726561746572207468616e207468652070726570617920616d6f756e740000006064820152608401610256565b6103938461038c833461091d565b85856104d0565b61039d8382610706565b50505050565b60006002856040516020016103ba91815260200190565b60408051601f19818403018152908290526103d49161095b565b602060405180830381855afa1580156103f1573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906104149190610996565b6040805160208082018490528183018890526bffffffffffffffffffffffff1933606090811b82168185015288901b16607483015260888083018790528351808403909101815260a890920190925280519101209091506104748161067a565b60008181526020818152604091829020805460ff19169055905187815283917f5664142af3dcfc3dc3de45a43f75c746bd1d8c11170a5037fdf98bdb35775137910160405180910390a26104c83386610706565b505050505050565b600083116105465760405162461bcd60e51b815260206004820152602960248201527f4574686572537761703a206c6f636b656420616d6f756e74206d757374206e6f60448201527f74206265207a65726f00000000000000000000000000000000000000000000006064820152608401610256565b6040805160208082018790528183018690526bffffffffffffffffffffffff19606086811b82168185015233901b16607483015260888083018590528351808403909101815260a8909201909252805191012060009060008181526020819052604090205490915060ff16156105fe5760405162461bcd60e51b815260206004820152601e60248201527f4574686572537761703a20737761702065786973747320616c726561647900006044820152606401610256565b60008181526020818152604091829020805460ff19166001179055815186815273ffffffffffffffffffffffffffffffffffffffff861691810191909152908101839052339086907f15b4b8206809535e547317cd5cedc86cff6e7d203551f93701786ddaf14fd9f99060600160405180910390a35050505050565b60008181526020819052604090205460ff1615156001146107035760405162461bcd60e51b815260206004820152603360248201527f4574686572537761703a207377617020686173206e6f204574686572206c6f6360448201527f6b656420696e2074686520636f6e7472616374000000000000000000000000006064820152608401610256565b50565b60008273ffffffffffffffffffffffffffffffffffffffff168260405160006040518083038185875af1925050503d8060008114610760576040519150601f19603f3d011682016040523d82523d6000602084013e610765565b606091505b50509050806101df5760405162461bcd60e51b815260206004820152602860248201527f5472616e7366657248656c7065723a20636f756c64206e6f74207472616e736660448201527f65722045746865720000000000000000000000000000000000000000000000006064820152608401610256565b73ffffffffffffffffffffffffffffffffffffffff8116811461070357600080fd5b60008060006060848603121561081357600080fd5b833592506020840135610825816107dc565b929592945050506040919091013590565b6000806000806080858703121561084c57600080fd5b84359350602085013592506040850135610865816107dc565b9396929550929360600135925050565b6000806000806080858703121561088b57600080fd5b84359350602085013561089d816107dc565b93969395505050506040820135916060013590565b600080600080600060a086880312156108ca57600080fd5b853594506020860135935060408601356108e3816107dc565b925060608601356108f3816107dc565b949793965091946080013592915050565b60006020828403121561091657600080fd5b5035919050565b600082821015610956577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b500390565b6000825160005b8181101561097c5760208186018101518583015201610962565b8181111561098b576000828501525b509190910192915050565b6000602082840312156109a857600080fd5b505191905056fea26469706673582212206c9f0eeffc34ad4dc3ffe4ccddb21d036f1e92552918ff1dd681e2e0ebf9da0564736f6c634300080a0033",
  "deployedBytecode": "0x6080604052600436106100705760003560e01c80636fa4ae601161004e5780636fa4ae60146100d65780638b2f8f82146100e9578063c3c37fbc14610173578063eb84e7f21461019357600080fd5b80630899146b1461007557806335cd4ccb1461008a57806354fd4d50146100aa575b600080fd5b6100886100833660046107fe565b6101d3565b005b34801561009657600080fd5b506100886100a5366004610836565b6101e4565b3480156100b657600080fd5b506100bf600281565b60405160ff90911681526020015b60405180910390f35b6100886100e4366004610875565b610309565b3480156100f557600080fd5b506101656101043660046108b2565b60408051602081018790529081018590526bffffffffffffffffffffffff19606085811b82168184015284901b1660748201526088810182905260009060a80160405160208183030381529060405280519060200120905095945050505050565b6040519081526020016100cd565b34801561017f57600080fd5b5061008861018e366004610836565b6103a3565b34801561019f57600080fd5b506101c36101ae366004610904565b60006020819052908152604090205460ff1681565b60405190151581526020016100cd565b6101df833484846104d0565b505050565b4381111561025f5760405162461bcd60e51b815260206004820152602560248201527f4574686572537761703a207377617020686173206e6f742074696d6564206f7560448201527f742079657400000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6040805160208082018790528183018690526bffffffffffffffffffffffff19606086811b82168185015233901b16607483015260888083018590528351808403909101815260a890920190925280519101206102bb8161067a565b600081815260208190526040808220805460ff191690555186917f3fbd469ec3a5ce074f975f76ce27e727ba21c99176917b97ae2e713695582a1291a26103023385610706565b5050505050565b80341161037e5760405162461bcd60e51b815260206004820152603d60248201527f4574686572537761703a2073656e7420616d6f756e74206d757374206265206760448201527f726561746572207468616e207468652070726570617920616d6f756e740000006064820152608401610256565b6103938461038c833461091d565b85856104d0565b61039d8382610706565b50505050565b60006002856040516020016103ba91815260200190565b60408051601f19818403018152908290526103d49161095b565b602060405180830381855afa1580156103f1573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906104149190610996565b6040805160208082018490528183018890526bffffffffffffffffffffffff1933606090811b82168185015288901b16607483015260888083018790528351808403909101815260a890920190925280519101209091506104748161067a565b60008181526020818152604091829020805460ff19169055905187815283917f5664142af3dcfc3dc3de45a43f75c746bd1d8c11170a5037fdf98bdb35775137910160405180910390a26104c83386610706565b505050505050565b600083116105465760405162461bcd60e51b815260206004820152602960248201527f4574686572537761703a206c6f636b656420616d6f756e74206d757374206e6f60448201527f74206265207a65726f00000000000000000000000000000000000000000000006064820152608401610256565b6040805160208082018790528183018690526bffffffffffffffffffffffff19606086811b82168185015233901b16607483015260888083018590528351808403909101815260a8909201909252805191012060009060008181526020819052604090205490915060ff16156105fe5760405162461bcd60e51b815260206004820152601e60248201527f4574686572537761703a20737761702065786973747320616c726561647900006044820152606401610256565b60008181526020818152604091829020805460ff19166001179055815186815273ffffffffffffffffffffffffffffffffffffffff861691810191909152908101839052339086907f15b4b8206809535e547317cd5cedc86cff6e7d203551f93701786ddaf14fd9f99060600160405180910390a35050505050565b60008181526020819052604090205460ff1615156001146107035760405162461bcd60e51b815260206004820152603360248201527f4574686572537761703a207377617020686173206e6f204574686572206c6f6360448201527f6b656420696e2074686520636f6e7472616374000000000000000000000000006064820152608401610256565b50565b60008273ffffffffffffffffffffffffffffffffffffffff168260405160006040518083038185875af1925050503d8060008114610760576040519150601f19603f3d011682016040523d82523d6000602084013e610765565b606091505b50509050806101df5760405162461bcd60e51b815260206004820152602860248201527f5472616e7366657248656c7065723a20636f756c64206e6f74207472616e736660448201527f65722045746865720000000000000000000000000000000000000000000000006064820152608401610256565b73ffffffffffffffffffffffffffffffffffffffff8116811461070357600080fd5b60008060006060848603121561081357600080fd5b833592506020840135610825816107dc565b929592945050506040919091013590565b6000806000806080858703121561084c57600080fd5b84359350602085013592506040850135610865816107dc565b9396929550929360600135925050565b6000806000806080858703121561088b57600080fd5b84359350602085013561089d816107dc565b93969395505050506040820135916060013590565b600080600080600060a086880312156108ca57600080fd5b853594506020860135935060408601356108e3816107dc565b925060608601356108f3816107dc565b949793965091946080013592915050565b60006020828403121561091657600080fd5b5035919050565b600082821015610956577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b500390565b6000825160005b8181101561097c5760208186018101518583015201610962565b8181111561098b576000828501525b509190910192915050565b6000602082840312156109a857600080fd5b505191905056fea26469706673582212206c9f0eeffc34ad4dc3ffe4ccddb21d036f1e92552918ff1dd681e2e0ebf9da0564736f6c634300080a0033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
