{
  "_format": "hh-sol-artifact-1",
  "contractName": "EchidnaFuzzHashing",
  "sourceName": "contracts/echidna/FuzzHashing.sol",
  "abi": [
    {
      "inputs": [],
      "name": "echidna_hash_xdomain_msg_0",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "echidna_hash_xdomain_msg_1",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "echidna_hash_xdomain_msg_high_version",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint16",
          "name": "_version",
          "type": "uint16"
        },
        {
          "internalType": "uint240",
          "name": "_nonce",
          "type": "uint240"
        },
        {
          "internalType": "address",
          "name": "_sender",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_target",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "_mntValue",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_ethValue",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_gasLimit",
          "type": "uint256"
        },
        {
          "internalType": "bytes",
          "name": "_data",
          "type": "bytes"
        }
      ],
      "name": "testHashCrossDomainMessageHighVersion",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint240",
          "name": "_nonce",
          "type": "uint240"
        },
        {
          "internalType": "address",
          "name": "_sender",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_target",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "_mntValue",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_ethValue",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_gasLimit",
          "type": "uint256"
        },
        {
          "internalType": "bytes",
          "name": "_data",
          "type": "bytes"
        }
      ],
      "name": "testHashCrossDomainMessageV0",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint240",
          "name": "_nonce",
          "type": "uint240"
        },
        {
          "internalType": "address",
          "name": "_sender",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_target",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "_mntValue",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_ethValue",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_gasLimit",
          "type": "uint256"
        },
        {
          "internalType": "bytes",
          "name": "_data",
          "type": "bytes"
        }
      ],
      "name": "testHashCrossDomainMessageV1",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x608060405234801561001057600080fd5b50610817806100206000396000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c80639af73da2116100505780639af73da2146100b9578063b565ce9d146100cb578063ee029d5b146100de57600080fd5b806312372e1b146100775780636f6c6ccc1461009857806386861aed146100ad575b600080fd5b600054610100900460ff16155b604051901515815260200160405180910390f35b6100ab6100a63660046105c5565b6100f1565b005b60005460ff1615610084565b60005462010000900460ff1615610084565b6100ab6100d93660046105c5565b610155565b6100ab6100ec366004610651565b6101dd565b86600061010382898989898989610241565b90506000610113888a8686610315565b905080821461014957600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b50505050505050505050565b7e010000000000000000000000000000000000000000000000000000000000008717600061018882898989898989610241565b9050600061019b838a8a8a8a8a8a610334565b905080821461014957600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff166201000017905550505050505050505050565b60006101eb888a60f01b1790565b90506101fc81888888888888610241565b5060018961ffff16111561023657600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555b505050505050505050565b600060f088901c8082036102635761025b8789858c610315565b91505061030a565b8061ffff1660010361027e5761025b89898989898989610334565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f48617368696e673a20756e6b6e6f776e2063726f737320646f6d61696e206d6560448201527f73736167652076657273696f6e00000000000000000000000000000000000000606482015260840160405180910390fd5b979650505050505050565b600061032385858585610359565b805190602001209050949350505050565b6000610345888888888888886103f2565b805190602001209050979650505050505050565b6060848484846040516024016103729493929190610762565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fcbd4ece9000000000000000000000000000000000000000000000000000000001790529050949350505050565b60608787878787878760405160240161041197969594939291906107ac565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fff8daf15000000000000000000000000000000000000000000000000000000001790529050979650505050505050565b80357dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811681146104c257600080fd5b919050565b803573ffffffffffffffffffffffffffffffffffffffff811681146104c257600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f83011261052b57600080fd5b813567ffffffffffffffff80821115610546576105466104eb565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190828211818310171561058c5761058c6104eb565b816040528381528660208588010111156105a557600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600080600060e0888a0312156105e057600080fd5b6105e988610494565b96506105f7602089016104c7565b9550610605604089016104c7565b9450606088013593506080880135925060a0880135915060c088013567ffffffffffffffff81111561063657600080fd5b6106428a828b0161051a565b91505092959891949750929550565b600080600080600080600080610100898b03121561066e57600080fd5b883561ffff8116811461068057600080fd5b975061068e60208a01610494565b965061069c60408a016104c7565b95506106aa60608a016104c7565b94506080890135935060a0890135925060c0890135915060e089013567ffffffffffffffff8111156106db57600080fd5b6106e78b828c0161051a565b9150509295985092959890939650565b6000815180845260005b8181101561071d57602081850181015186830182015201610701565b8181111561072f576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b600073ffffffffffffffffffffffffffffffffffffffff80871683528086166020840152506080604083015261079b60808301856106f7565b905082606083015295945050505050565b878152600073ffffffffffffffffffffffffffffffffffffffff80891660208401528088166040840152508560608301528460808301528360a083015260e060c08301526107fd60e08301846106f7565b999850505050505050505056fea164736f6c634300080f000a",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100725760003560e01c80639af73da2116100505780639af73da2146100b9578063b565ce9d146100cb578063ee029d5b146100de57600080fd5b806312372e1b146100775780636f6c6ccc1461009857806386861aed146100ad575b600080fd5b600054610100900460ff16155b604051901515815260200160405180910390f35b6100ab6100a63660046105c5565b6100f1565b005b60005460ff1615610084565b60005462010000900460ff1615610084565b6100ab6100d93660046105c5565b610155565b6100ab6100ec366004610651565b6101dd565b86600061010382898989898989610241565b90506000610113888a8686610315565b905080821461014957600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b50505050505050505050565b7e010000000000000000000000000000000000000000000000000000000000008717600061018882898989898989610241565b9050600061019b838a8a8a8a8a8a610334565b905080821461014957600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff166201000017905550505050505050505050565b60006101eb888a60f01b1790565b90506101fc81888888888888610241565b5060018961ffff16111561023657600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555b505050505050505050565b600060f088901c8082036102635761025b8789858c610315565b91505061030a565b8061ffff1660010361027e5761025b89898989898989610334565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f48617368696e673a20756e6b6e6f776e2063726f737320646f6d61696e206d6560448201527f73736167652076657273696f6e00000000000000000000000000000000000000606482015260840160405180910390fd5b979650505050505050565b600061032385858585610359565b805190602001209050949350505050565b6000610345888888888888886103f2565b805190602001209050979650505050505050565b6060848484846040516024016103729493929190610762565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fcbd4ece9000000000000000000000000000000000000000000000000000000001790529050949350505050565b60608787878787878760405160240161041197969594939291906107ac565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fff8daf15000000000000000000000000000000000000000000000000000000001790529050979650505050505050565b80357dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811681146104c257600080fd5b919050565b803573ffffffffffffffffffffffffffffffffffffffff811681146104c257600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f83011261052b57600080fd5b813567ffffffffffffffff80821115610546576105466104eb565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190828211818310171561058c5761058c6104eb565b816040528381528660208588010111156105a557600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600080600060e0888a0312156105e057600080fd5b6105e988610494565b96506105f7602089016104c7565b9550610605604089016104c7565b9450606088013593506080880135925060a0880135915060c088013567ffffffffffffffff81111561063657600080fd5b6106428a828b0161051a565b91505092959891949750929550565b600080600080600080600080610100898b03121561066e57600080fd5b883561ffff8116811461068057600080fd5b975061068e60208a01610494565b965061069c60408a016104c7565b95506106aa60608a016104c7565b94506080890135935060a0890135925060c0890135915060e089013567ffffffffffffffff8111156106db57600080fd5b6106e78b828c0161051a565b9150509295985092959890939650565b6000815180845260005b8181101561071d57602081850181015186830182015201610701565b8181111561072f576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b600073ffffffffffffffffffffffffffffffffffffffff80871683528086166020840152506080604083015261079b60808301856106f7565b905082606083015295945050505050565b878152600073ffffffffffffffffffffffffffffffffffffffff80891660208401528088166040840152508560608301528460808301528360a083015260e060c08301526107fd60e08301846106f7565b999850505050505050505056fea164736f6c634300080f000a",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
