{
  "_format": "hh-sol-artifact-1",
  "contractName": "AutomateMock",
  "sourceName": "contracts/mocks/AutomateMock.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_gelato",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "bytes32",
          "name": "taskId",
          "type": "bytes32"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "taskCreator",
          "type": "address"
        }
      ],
      "name": "TaskCancelled",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "bytes32",
          "name": "taskId",
          "type": "bytes32"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "execAddress",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "bytes",
          "name": "execDataOrSelector",
          "type": "bytes"
        },
        {
          "components": [
            {
              "internalType": "enum Module[]",
              "name": "modules",
              "type": "uint8[]"
            },
            {
              "internalType": "bytes[]",
              "name": "args",
              "type": "bytes[]"
            }
          ],
          "indexed": false,
          "internalType": "struct ModuleData",
          "name": "moduleData",
          "type": "tuple"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "feeToken",
          "type": "address"
        }
      ],
      "name": "TaskCreated",
      "type": "event"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "taskId",
          "type": "bytes32"
        }
      ],
      "name": "cancelTask",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "execAddress",
          "type": "address"
        },
        {
          "internalType": "bytes",
          "name": "execDataOrSelector",
          "type": "bytes"
        },
        {
          "components": [
            {
              "internalType": "enum Module[]",
              "name": "modules",
              "type": "uint8[]"
            },
            {
              "internalType": "bytes[]",
              "name": "args",
              "type": "bytes[]"
            }
          ],
          "internalType": "struct ModuleData",
          "name": "moduleData",
          "type": "tuple"
        },
        {
          "internalType": "address",
          "name": "feeToken",
          "type": "address"
        }
      ],
      "name": "createTask",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "taskId",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "gelato",
      "outputs": [
        {
          "internalType": "address payable",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getFeeDetails",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        },
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "taskTreasury",
      "outputs": [
        {
          "internalType": "contract ITaskTreasuryUpgradable",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    }
  ],
  "bytecode": "0x608060405234801561001057600080fd5b506040516105ff3803806105ff83398101604081905261002f91610054565b600180546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b61056c806100936000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80633323b4671461005c578063573ea57514610082578063b810c636146100ad578063e60a3213146100d2578063ee8ca3b5146100d9575b600080fd5b61006f61006a366004610227565b6100ee565b6040519081526020015b60405180910390f35b600154610095906001600160a01b031681565b6040516001600160a01b039091168152602001610079565b6100b561017b565b604080519283526001600160a01b03909116602083015201610079565b6000610095565b6100ec6100e73660046102e0565b6101ab565b005b600080546001600160a01b03191633178155604051610119908790879087908790879060200161046c565b6040516020818303038152906040528051906020012090507f79d6981c9b9ba3eb349aa80b52e3589ef792bd6204749898dbd776994110465681878787878760405161016a969594939291906104b7565b60405180910390a195945050505050565b60008061018f633b9aca0062cc07c9610509565b9273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee92509050565b600054604080518381526001600160a01b0390921660208301527f44d83729a43f9c6046446df014d073dd242e0ad672071e9b292f31b669c25b09910160405180910390a150565b80356001600160a01b038116811461020a57600080fd5b919050565b60006040828403121561022157600080fd5b50919050565b60008060008060006080868803121561023f57600080fd5b610248866101f3565b9450602086013567ffffffffffffffff8082111561026557600080fd5b818801915088601f83011261027957600080fd5b81358181111561028857600080fd5b89602082850101111561029a57600080fd5b6020830196508095505060408801359150808211156102b857600080fd5b506102c58882890161020f565b9250506102d4606087016101f3565b90509295509295909350565b6000602082840312156102f257600080fd5b5035919050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6000808335601e1984360301811261033957600080fd5b830160208101925035905067ffffffffffffffff81111561035957600080fd5b8060051b360382131561036b57600080fd5b9250929050565b6000604083016103828384610322565b604086529182905290600090606086015b818310156103bf578335600481106103aa57600080fd5b81526020938401936001939093019201610393565b602093506103cf84870187610322565b888303868a015280835293509150838101600584901b820185018360005b8681101561045d57848303601f19018452813536879003601e1901811261041357600080fd5b8601888101903567ffffffffffffffff81111561042f57600080fd5b80360382131561043e57600080fd5b6104498582846102f9565b958a019594505050908701906001016103ed565b50909998505050505050505050565b600060018060a01b0380881683526080602084015261048f6080840187896102f9565b83810360408501526104a18187610372565b9250508084166060840152509695505050505050565b868152600060018060a01b03808816602084015260a060408401526104e060a0840187896102f9565b83810360608501526104f28187610372565b925050808416608084015250979650505050505050565b600081600019048311821515161561053157634e487b7160e01b600052601160045260246000fd5b50029056fea2646970667358221220aeec6be09fd2f9012db2f8771e6c5509e5559441cda930bec74749af6d6af70a64736f6c63430008100033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100575760003560e01c80633323b4671461005c578063573ea57514610082578063b810c636146100ad578063e60a3213146100d2578063ee8ca3b5146100d9575b600080fd5b61006f61006a366004610227565b6100ee565b6040519081526020015b60405180910390f35b600154610095906001600160a01b031681565b6040516001600160a01b039091168152602001610079565b6100b561017b565b604080519283526001600160a01b03909116602083015201610079565b6000610095565b6100ec6100e73660046102e0565b6101ab565b005b600080546001600160a01b03191633178155604051610119908790879087908790879060200161046c565b6040516020818303038152906040528051906020012090507f79d6981c9b9ba3eb349aa80b52e3589ef792bd6204749898dbd776994110465681878787878760405161016a969594939291906104b7565b60405180910390a195945050505050565b60008061018f633b9aca0062cc07c9610509565b9273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee92509050565b600054604080518381526001600160a01b0390921660208301527f44d83729a43f9c6046446df014d073dd242e0ad672071e9b292f31b669c25b09910160405180910390a150565b80356001600160a01b038116811461020a57600080fd5b919050565b60006040828403121561022157600080fd5b50919050565b60008060008060006080868803121561023f57600080fd5b610248866101f3565b9450602086013567ffffffffffffffff8082111561026557600080fd5b818801915088601f83011261027957600080fd5b81358181111561028857600080fd5b89602082850101111561029a57600080fd5b6020830196508095505060408801359150808211156102b857600080fd5b506102c58882890161020f565b9250506102d4606087016101f3565b90509295509295909350565b6000602082840312156102f257600080fd5b5035919050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6000808335601e1984360301811261033957600080fd5b830160208101925035905067ffffffffffffffff81111561035957600080fd5b8060051b360382131561036b57600080fd5b9250929050565b6000604083016103828384610322565b604086529182905290600090606086015b818310156103bf578335600481106103aa57600080fd5b81526020938401936001939093019201610393565b602093506103cf84870187610322565b888303868a015280835293509150838101600584901b820185018360005b8681101561045d57848303601f19018452813536879003601e1901811261041357600080fd5b8601888101903567ffffffffffffffff81111561042f57600080fd5b80360382131561043e57600080fd5b6104498582846102f9565b958a019594505050908701906001016103ed565b50909998505050505050505050565b600060018060a01b0380881683526080602084015261048f6080840187896102f9565b83810360408501526104a18187610372565b9250508084166060840152509695505050505050565b868152600060018060a01b03808816602084015260a060408401526104e060a0840187896102f9565b83810360608501526104f28187610372565b925050808416608084015250979650505050505050565b600081600019048311821515161561053157634e487b7160e01b600052601160045260246000fd5b50029056fea2646970667358221220aeec6be09fd2f9012db2f8771e6c5509e5559441cda930bec74749af6d6af70a64736f6c63430008100033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
