{
  "_format": "hh-sol-artifact-1",
  "contractName": "MultiCall",
  "sourceName": "contracts/lowlat/MultiCall.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "index",
          "type": "uint256"
        },
        {
          "internalType": "bytes",
          "name": "result",
          "type": "bytes"
        }
      ],
      "name": "CallReverted",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "index",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "requested",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "available",
          "type": "uint256"
        }
      ],
      "name": "NotEnoughGas",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_to",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "_value",
          "type": "uint256"
        }
      ],
      "name": "Transfer_NativeFailed",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "Transfer_ToAddressIsZero",
      "type": "error"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "address",
              "name": "target",
              "type": "address"
            },
            {
              "internalType": "bytes",
              "name": "data",
              "type": "bytes"
            },
            {
              "internalType": "uint256",
              "name": "gasLimit",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "value",
              "type": "uint256"
            },
            {
              "internalType": "bool",
              "name": "revertOnError",
              "type": "bool"
            }
          ],
          "internalType": "struct MultiCall.Call[]",
          "name": "_calls",
          "type": "tuple[]"
        }
      ],
      "name": "multiCall",
      "outputs": [
        {
          "internalType": "bool[]",
          "name": "successes",
          "type": "bool[]"
        },
        {
          "internalType": "bytes[]",
          "name": "results",
          "type": "bytes[]"
        }
      ],
      "stateMutability": "payable",
      "type": "function"
    }
  ],
  "bytecode": "0x608060405234801561001057600080fd5b5061077d806100206000396000f3fe60806040526004361061001e5760003560e01c8063b434bc8914610023575b600080fd5b610036610031366004610425565b61004d565b6040516100449291906104fe565b60405180910390f35b6060808267ffffffffffffffff811115610069576100696105b6565b604051908082528060200260200182016040528015610092578160200160208202803683370190505b5091508267ffffffffffffffff8111156100ae576100ae6105b6565b6040519080825280602002602001820160405280156100e157816020015b60608152602001906001900390816100cc5790505b50905060005b838110156103025736858583818110610102576101026105e5565b90506020028101906101149190610614565b905080604001355a1015610171578181604001355a6040517f2bb3e3ba0000000000000000000000000000000000000000000000000000000081526004810193909352602483019190915260448201526064015b60405180910390fd5b61017e6020820182610652565b73ffffffffffffffffffffffffffffffffffffffff1660608201356040830135156101ad5782604001356101af565b5a5b906101bd602085018561068f565b6040516101cb9291906106f4565b600060405180830381858888f193505050503d8060008114610209576040519150601f19603f3d011682016040523d82523d6000602084013e61020e565b606091505b50858481518110610221576102216105e5565b6020026020010185858151811061023a5761023a6105e5565b6020026020010182905282151515158152505050838281518110610260576102606105e5565b60200260200101511580156102a55750858583818110610282576102826105e5565b90506020028101906102949190610614565b6102a59060a0810190608001610704565b156102f957818383815181106102bd576102bd6105e5565b60200260200101516040517f3b4c7a5f000000000000000000000000000000000000000000000000000000008152600401610168929190610726565b506001016100e7565b50471561031357610313334761031a565b9250929050565b73ffffffffffffffffffffffffffffffffffffffff8216610367576040517f6b7a931000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff168260405160006040518083038185875af1925050503d80600081146103c1576040519150601f19603f3d011682016040523d82523d6000602084013e6103c6565b606091505b5050905080610420576040517f465bc83400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416600482015260248101839052604401610168565b505050565b6000806020838503121561043857600080fd5b823567ffffffffffffffff8082111561045057600080fd5b818501915085601f83011261046457600080fd5b81358181111561047357600080fd5b8660208260051b850101111561048857600080fd5b60209290920196919550909350505050565b6000815180845260005b818110156104c0576020818501810151868301820152016104a4565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b604080825283519082018190526000906020906060840190828701845b8281101561053957815115158452928401929084019060010161051b565b50505083810382850152845180825282820190600581901b8301840187850160005b838110156105a7577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe086840301855261059583835161049a565b9487019492509086019060010161055b565b50909998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6183360301811261064857600080fd5b9190910192915050565b60006020828403121561066457600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461068857600080fd5b9392505050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126106c457600080fd5b83018035915067ffffffffffffffff8211156106df57600080fd5b60200191503681900382131561031357600080fd5b8183823760009101908152919050565b60006020828403121561071657600080fd5b8135801515811461068857600080fd5b82815260406020820152600061073f604083018461049a565b94935050505056fea264697066735822122032b8769de2a4e6c714ddf0ea55f9e4923fcbeb75704a9720d56e5720ac43bb5164736f6c63430008160033",
  "deployedBytecode": "0x60806040526004361061001e5760003560e01c8063b434bc8914610023575b600080fd5b610036610031366004610425565b61004d565b6040516100449291906104fe565b60405180910390f35b6060808267ffffffffffffffff811115610069576100696105b6565b604051908082528060200260200182016040528015610092578160200160208202803683370190505b5091508267ffffffffffffffff8111156100ae576100ae6105b6565b6040519080825280602002602001820160405280156100e157816020015b60608152602001906001900390816100cc5790505b50905060005b838110156103025736858583818110610102576101026105e5565b90506020028101906101149190610614565b905080604001355a1015610171578181604001355a6040517f2bb3e3ba0000000000000000000000000000000000000000000000000000000081526004810193909352602483019190915260448201526064015b60405180910390fd5b61017e6020820182610652565b73ffffffffffffffffffffffffffffffffffffffff1660608201356040830135156101ad5782604001356101af565b5a5b906101bd602085018561068f565b6040516101cb9291906106f4565b600060405180830381858888f193505050503d8060008114610209576040519150601f19603f3d011682016040523d82523d6000602084013e61020e565b606091505b50858481518110610221576102216105e5565b6020026020010185858151811061023a5761023a6105e5565b6020026020010182905282151515158152505050838281518110610260576102606105e5565b60200260200101511580156102a55750858583818110610282576102826105e5565b90506020028101906102949190610614565b6102a59060a0810190608001610704565b156102f957818383815181106102bd576102bd6105e5565b60200260200101516040517f3b4c7a5f000000000000000000000000000000000000000000000000000000008152600401610168929190610726565b506001016100e7565b50471561031357610313334761031a565b9250929050565b73ffffffffffffffffffffffffffffffffffffffff8216610367576040517f6b7a931000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff168260405160006040518083038185875af1925050503d80600081146103c1576040519150601f19603f3d011682016040523d82523d6000602084013e6103c6565b606091505b5050905080610420576040517f465bc83400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416600482015260248101839052604401610168565b505050565b6000806020838503121561043857600080fd5b823567ffffffffffffffff8082111561045057600080fd5b818501915085601f83011261046457600080fd5b81358181111561047357600080fd5b8660208260051b850101111561048857600080fd5b60209290920196919550909350505050565b6000815180845260005b818110156104c0576020818501810151868301820152016104a4565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b604080825283519082018190526000906020906060840190828701845b8281101561053957815115158452928401929084019060010161051b565b50505083810382850152845180825282820190600581901b8301840187850160005b838110156105a7577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe086840301855261059583835161049a565b9487019492509086019060010161055b565b50909998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6183360301811261064857600080fd5b9190910192915050565b60006020828403121561066457600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461068857600080fd5b9392505050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126106c457600080fd5b83018035915067ffffffffffffffff8211156106df57600080fd5b60200191503681900382131561031357600080fd5b8183823760009101908152919050565b60006020828403121561071657600080fd5b8135801515811461068857600080fd5b82815260406020820152600061073f604083018461049a565b94935050505056fea264697066735822122032b8769de2a4e6c714ddf0ea55f9e4923fcbeb75704a9720d56e5720ac43bb5164736f6c63430008160033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
