{
  "contractName": "IexecHubInterface",
  "abi": [
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "worker",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "taskid",
          "type": "bytes32"
        }
      ],
      "name": "AccurateContribution",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "catid",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "indexed": false,
          "internalType": "string",
          "name": "description",
          "type": "string"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "workClockTimeRef",
          "type": "uint256"
        }
      ],
      "name": "CreateCategory",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "worker",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "taskid",
          "type": "bytes32"
        }
      ],
      "name": "FaultyContribution",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "taskid",
          "type": "bytes32"
        }
      ],
      "name": "TaskClaimed",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "taskid",
          "type": "bytes32"
        },
        {
          "indexed": false,
          "internalType": "bytes32",
          "name": "consensus",
          "type": "bytes32"
        }
      ],
      "name": "TaskConsensus",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "taskid",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "worker",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "bytes32",
          "name": "hash",
          "type": "bytes32"
        }
      ],
      "name": "TaskContribute",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "taskid",
          "type": "bytes32"
        },
        {
          "indexed": false,
          "internalType": "bytes",
          "name": "results",
          "type": "bytes"
        }
      ],
      "name": "TaskFinalize",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "taskid",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "workerpool",
          "type": "address"
        }
      ],
      "name": "TaskInitialize",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "taskid",
          "type": "bytes32"
        }
      ],
      "name": "TaskReopen",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "taskid",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "worker",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "bytes32",
          "name": "digest",
          "type": "bytes32"
        }
      ],
      "name": "TaskReveal",
      "type": "event"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_catid",
          "type": "uint256"
        }
      ],
      "name": "viewCategory",
      "outputs": [
        {
          "components": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "description",
              "type": "string"
            },
            {
              "internalType": "uint256",
              "name": "workClockTimeRef",
              "type": "uint256"
            }
          ],
          "internalType": "struct IexecODBLibCore.Category",
          "name": "category",
          "type": "tuple"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "countCategory",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "count",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "description",
          "type": "string"
        },
        {
          "internalType": "uint256",
          "name": "workClockTimeRef",
          "type": "uint256"
        }
      ],
      "name": "createCategory",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "CONSENSUS_DURATION_RATIO",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "REVEAL_DURATION_RATIO",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "iexecclerk",
      "outputs": [
        {
          "internalType": "contract IexecClerkInterface",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "appregistry",
      "outputs": [
        {
          "internalType": "contract AppRegistryInterface",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "datasetregistry",
      "outputs": [
        {
          "internalType": "contract DatasetRegistryInterface",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "workerpoolregistry",
      "outputs": [
        {
          "internalType": "contract WorkerpoolRegistryInterface",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_iexecclerkAddress",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_appregistryAddress",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_datasetregistryAddress",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_workerpoolregistryAddress",
          "type": "address"
        }
      ],
      "name": "attachContracts",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_taskid",
          "type": "bytes32"
        }
      ],
      "name": "viewTask",
      "outputs": [
        {
          "components": [
            {
              "internalType": "enum IexecODBLibCore.TaskStatusEnum",
              "name": "status",
              "type": "uint8"
            },
            {
              "internalType": "bytes32",
              "name": "dealid",
              "type": "bytes32"
            },
            {
              "internalType": "uint256",
              "name": "idx",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "timeref",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "contributionDeadline",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "revealDeadline",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "finalDeadline",
              "type": "uint256"
            },
            {
              "internalType": "bytes32",
              "name": "consensusValue",
              "type": "bytes32"
            },
            {
              "internalType": "uint256",
              "name": "revealCounter",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "winnerCounter",
              "type": "uint256"
            },
            {
              "internalType": "address[]",
              "name": "contributors",
              "type": "address[]"
            },
            {
              "internalType": "bytes32",
              "name": "resultDigest",
              "type": "bytes32"
            },
            {
              "internalType": "bytes",
              "name": "results",
              "type": "bytes"
            }
          ],
          "internalType": "struct IexecODBLibCore.Task",
          "name": "",
          "type": "tuple"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_taskid",
          "type": "bytes32"
        },
        {
          "internalType": "address",
          "name": "_worker",
          "type": "address"
        }
      ],
      "name": "viewContribution",
      "outputs": [
        {
          "components": [
            {
              "internalType": "enum IexecODBLibCore.ContributionStatusEnum",
              "name": "status",
              "type": "uint8"
            },
            {
              "internalType": "bytes32",
              "name": "resultHash",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "resultSeal",
              "type": "bytes32"
            },
            {
              "internalType": "address",
              "name": "enclaveChallenge",
              "type": "address"
            }
          ],
          "internalType": "struct IexecODBLibCore.Contribution",
          "name": "",
          "type": "tuple"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_worker",
          "type": "address"
        }
      ],
      "name": "viewScore",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "app",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "dataset",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "workerpool",
          "type": "address"
        }
      ],
      "name": "checkResources",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "id",
          "type": "bytes32"
        }
      ],
      "name": "resultFor",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_dealid",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "idx",
          "type": "uint256"
        }
      ],
      "name": "initialize",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_taskid",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "_resultHash",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "_resultSeal",
          "type": "bytes32"
        },
        {
          "internalType": "address",
          "name": "_enclaveChallenge",
          "type": "address"
        },
        {
          "internalType": "bytes",
          "name": "_enclaveSign",
          "type": "bytes"
        },
        {
          "internalType": "bytes",
          "name": "_workerpoolSign",
          "type": "bytes"
        }
      ],
      "name": "contribute",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_taskid",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "_resultDigest",
          "type": "bytes32"
        }
      ],
      "name": "reveal",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_taskid",
          "type": "bytes32"
        }
      ],
      "name": "reopen",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_taskid",
          "type": "bytes32"
        },
        {
          "internalType": "bytes",
          "name": "_results",
          "type": "bytes"
        }
      ],
      "name": "finalize",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_taskid",
          "type": "bytes32"
        }
      ],
      "name": "claim",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32[]",
          "name": "_dealid",
          "type": "bytes32[]"
        },
        {
          "internalType": "uint256[]",
          "name": "_idx",
          "type": "uint256[]"
        }
      ],
      "name": "initializeArray",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32[]",
          "name": "_taskid",
          "type": "bytes32[]"
        }
      ],
      "name": "claimArray",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32[]",
          "name": "_dealid",
          "type": "bytes32[]"
        },
        {
          "internalType": "uint256[]",
          "name": "_idx",
          "type": "uint256[]"
        }
      ],
      "name": "initializeAndClaimArray",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_taskid",
          "type": "bytes32"
        }
      ],
      "name": "viewTaskABILegacy",
      "outputs": [
        {
          "internalType": "enum IexecODBLibCore.TaskStatusEnum",
          "name": "",
          "type": "uint8"
        },
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        },
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        },
        {
          "internalType": "address[]",
          "name": "",
          "type": "address[]"
        },
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_taskid",
          "type": "bytes32"
        },
        {
          "internalType": "address",
          "name": "_worker",
          "type": "address"
        }
      ],
      "name": "viewContributionABILegacy",
      "outputs": [
        {
          "internalType": "enum IexecODBLibCore.ContributionStatusEnum",
          "name": "",
          "type": "uint8"
        },
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        },
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_catid",
          "type": "uint256"
        }
      ],
      "name": "viewCategoryABILegacy",
      "outputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        },
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "metadata": "{\"compiler\":{\"version\":\"0.6.6+commit.6c089d02\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"worker\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"taskid\",\"type\":\"bytes32\"}],\"name\":\"AccurateContribution\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"catid\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"description\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"workClockTimeRef\",\"type\":\"uint256\"}],\"name\":\"CreateCategory\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"worker\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"taskid\",\"type\":\"bytes32\"}],\"name\":\"FaultyContribution\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"taskid\",\"type\":\"bytes32\"}],\"name\":\"TaskClaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"taskid\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"consensus\",\"type\":\"bytes32\"}],\"name\":\"TaskConsensus\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"taskid\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"worker\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"}],\"name\":\"TaskContribute\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"taskid\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"results\",\"type\":\"bytes\"}],\"name\":\"TaskFinalize\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"taskid\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"workerpool\",\"type\":\"address\"}],\"name\":\"TaskInitialize\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"taskid\",\"type\":\"bytes32\"}],\"name\":\"TaskReopen\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"taskid\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"worker\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"digest\",\"type\":\"bytes32\"}],\"name\":\"TaskReveal\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"CONSENSUS_DURATION_RATIO\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"REVEAL_DURATION_RATIO\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"appregistry\",\"outputs\":[{\"internalType\":\"contract AppRegistryInterface\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_iexecclerkAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_appregistryAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_datasetregistryAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_workerpoolregistryAddress\",\"type\":\"address\"}],\"name\":\"attachContracts\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"app\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"dataset\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"workerpool\",\"type\":\"address\"}],\"name\":\"checkResources\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_taskid\",\"type\":\"bytes32\"}],\"name\":\"claim\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"_taskid\",\"type\":\"bytes32[]\"}],\"name\":\"claimArray\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_taskid\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_resultHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_resultSeal\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_enclaveChallenge\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_enclaveSign\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"_workerpoolSign\",\"type\":\"bytes\"}],\"name\":\"contribute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"countCategory\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"count\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"description\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"workClockTimeRef\",\"type\":\"uint256\"}],\"name\":\"createCategory\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"datasetregistry\",\"outputs\":[{\"internalType\":\"contract DatasetRegistryInterface\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_taskid\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"_results\",\"type\":\"bytes\"}],\"name\":\"finalize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"iexecclerk\",\"outputs\":[{\"internalType\":\"contract IexecClerkInterface\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_dealid\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"idx\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"_dealid\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint256[]\",\"name\":\"_idx\",\"type\":\"uint256[]\"}],\"name\":\"initializeAndClaimArray\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"_dealid\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint256[]\",\"name\":\"_idx\",\"type\":\"uint256[]\"}],\"name\":\"initializeArray\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_taskid\",\"type\":\"bytes32\"}],\"name\":\"reopen\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"id\",\"type\":\"bytes32\"}],\"name\":\"resultFor\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_taskid\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_resultDigest\",\"type\":\"bytes32\"}],\"name\":\"reveal\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_catid\",\"type\":\"uint256\"}],\"name\":\"viewCategory\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"description\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"workClockTimeRef\",\"type\":\"uint256\"}],\"internalType\":\"struct IexecODBLibCore.Category\",\"name\":\"category\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_catid\",\"type\":\"uint256\"}],\"name\":\"viewCategoryABILegacy\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_taskid\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_worker\",\"type\":\"address\"}],\"name\":\"viewContribution\",\"outputs\":[{\"components\":[{\"internalType\":\"enum IexecODBLibCore.ContributionStatusEnum\",\"name\":\"status\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"resultHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"resultSeal\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"enclaveChallenge\",\"type\":\"address\"}],\"internalType\":\"struct IexecODBLibCore.Contribution\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_taskid\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_worker\",\"type\":\"address\"}],\"name\":\"viewContributionABILegacy\",\"outputs\":[{\"internalType\":\"enum IexecODBLibCore.ContributionStatusEnum\",\"name\":\"\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_worker\",\"type\":\"address\"}],\"name\":\"viewScore\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_taskid\",\"type\":\"bytes32\"}],\"name\":\"viewTask\",\"outputs\":[{\"components\":[{\"internalType\":\"enum IexecODBLibCore.TaskStatusEnum\",\"name\":\"status\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"dealid\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"idx\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"timeref\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"contributionDeadline\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"revealDeadline\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"finalDeadline\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"consensusValue\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"revealCounter\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"winnerCounter\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"contributors\",\"type\":\"address[]\"},{\"internalType\":\"bytes32\",\"name\":\"resultDigest\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"results\",\"type\":\"bytes\"}],\"internalType\":\"struct IexecODBLibCore.Task\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_taskid\",\"type\":\"bytes32\"}],\"name\":\"viewTaskABILegacy\",\"outputs\":[{\"internalType\":\"enum IexecODBLibCore.TaskStatusEnum\",\"name\":\"\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"workerpoolregistry\",\"outputs\":[{\"internalType\":\"contract WorkerpoolRegistryInterface\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"@iexec/interface/contracts/IexecHub.sol\":\"IexecHubInterface\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@iexec/interface/contracts/IexecClerk.sol\":{\"keccak256\":\"0x703252a638a5a7e2b600395fd920712a1ac259018bc9578fe581a77fa2f008a9\",\"urls\":[\"bzz-raw://072b9e948e5ac4a7f60466c23b322ea0f1aca711f1a94616e658600c2a4c36a2\",\"dweb:/ipfs/QmRP57bkhWDr5BeawfjiKsbdwFiHnw6nc6zgiEad3hQoSJ\"]},\"@iexec/interface/contracts/IexecHub.sol\":{\"keccak256\":\"0x8e293b7624550823838ed9113400544c5980afac1043ddacad7a862c91b0840d\",\"urls\":[\"bzz-raw://ae34ebc355838595ee69b24a31e60deb186455cc388c88de7ecd0294c7037075\",\"dweb:/ipfs/QmUYVQJBWG7ohAYksJRDJKcJVyPMXNFJSPWMAuQcGfWHo7\"]},\"@iexec/interface/contracts/IexecRegistries.sol\":{\"keccak256\":\"0xb39eef47d62d8751c5adfeaf169ce57b50c480788be8356289bc28b78bc24fde\",\"urls\":[\"bzz-raw://a86593f1ef9953ac0965aab4e764374580a899a7f7871ad66b432523171063a1\",\"dweb:/ipfs/QmcYZhHD45APoS1Ebi416DhXU3fiCzoFW2WSMux4AxhFqk\"]},\"@iexec/interface/contracts/libs/IexecODBLibCore.sol\":{\"keccak256\":\"0x3fc7ff4152e9a8f9747d42e262c15c3d460d409732711d9e1da8a88163880183\",\"urls\":[\"bzz-raw://8bacc98b866852e9f1e3563948381cba142ab61d6b1a7c62fbc53b7d57aa0589\",\"dweb:/ipfs/QmUNjhjBxdtHQFWQ61CgnPoaAzL767tQSKF6x34VFWeRyF\"]},\"@iexec/interface/contracts/libs/IexecODBLibOrders.sol\":{\"keccak256\":\"0xe2848a685785b09dc9ee5a6e6329a417eaf18e520388e8575d45a5376b1d62ca\",\"urls\":[\"bzz-raw://d1385ab26f382baa7aadb80faed54290296be09eeccbee1193a1b8a53b0b15d5\",\"dweb:/ipfs/QmUQTFcGX5VZiYwHKu9Yjc4PHNrMgdAyKwKi6tFEMsbaJk\"]}},\"version\":1}",
  "bytecode": "0x",
  "deployedBytecode": "0x",
  "immutableReferences": {},
  "sourceMap": "",
  "deployedSourceMap": "",
  "source": "pragma solidity >0.5.0 <0.7.0;\npragma experimental ABIEncoderV2;\n\nimport \"./IexecRegistries.sol\";\nimport \"./IexecClerk.sol\";\nimport \"./libs/IexecODBLibCore.sol\";\n\n\ninterface IexecHubInterface\n{\n\t/***************************************************************************\n\t *                            CATEGORY MANAGER                             *\n\t ***************************************************************************/\n\tevent CreateCategory(\n\t\tuint256 catid,\n\t\tstring  name,\n\t\tstring  description,\n\t\tuint256 workClockTimeRef);\n\n\tfunction viewCategory(\n\t\tuint256 _catid)\n\texternal view returns (IexecODBLibCore.Category memory category);\n\n\tfunction countCategory()\n\texternal view returns (uint256 count);\n\n\tfunction createCategory(\n\t\tstring  calldata name,\n\t\tstring  calldata description,\n\t\tuint256          workClockTimeRef)\n\texternal returns (uint256);\n\n\t/***************************************************************************\n\t *                                IEXECHUB                                 *\n\t ***************************************************************************/\n\tevent TaskInitialize(bytes32 indexed taskid, address indexed workerpool               );\n\tevent TaskContribute(bytes32 indexed taskid, address indexed worker, bytes32 hash     );\n\tevent TaskConsensus (bytes32 indexed taskid,                         bytes32 consensus);\n\tevent TaskReveal    (bytes32 indexed taskid, address indexed worker, bytes32 digest   );\n\tevent TaskReopen    (bytes32 indexed taskid                                           );\n\tevent TaskFinalize  (bytes32 indexed taskid,                         bytes results    );\n\tevent TaskClaimed   (bytes32 indexed taskid                                           );\n\n\tevent AccurateContribution(address indexed worker, bytes32 indexed taskid);\n\tevent FaultyContribution  (address indexed worker, bytes32 indexed taskid);\n\n\tfunction CONSENSUS_DURATION_RATIO() external view returns (uint256);\n\tfunction REVEAL_DURATION_RATIO   () external view returns (uint256);\n\tfunction iexecclerk              () external view returns (IexecClerkInterface);\n\tfunction appregistry             () external view returns (AppRegistryInterface);\n\tfunction datasetregistry         () external view returns (DatasetRegistryInterface);\n\tfunction workerpoolregistry      () external view returns (WorkerpoolRegistryInterface);\n\n\tfunction attachContracts(\n\t\taddress _iexecclerkAddress,\n\t\taddress _appregistryAddress,\n\t\taddress _datasetregistryAddress,\n\t\taddress _workerpoolregistryAddress)\n\texternal;\n\n\tfunction viewTask(\n\t\tbytes32 _taskid)\n\texternal view returns (IexecODBLibCore.Task memory);\n\n\tfunction viewContribution(\n\t\tbytes32 _taskid,\n\t\taddress _worker)\n\texternal view returns (IexecODBLibCore.Contribution memory);\n\n\tfunction viewScore(\n\t\taddress _worker)\n\texternal view returns (uint256);\n\n\tfunction checkResources(\n\t\taddress app,\n\t\taddress dataset,\n\t\taddress workerpool)\n\texternal view returns (bool);\n\n\tfunction resultFor(\n\t\tbytes32 id)\n\texternal view returns (bytes memory);\n\n\tfunction initialize(\n\t\tbytes32 _dealid,\n\t\tuint256 idx)\n\texternal returns (bytes32);\n\n\tfunction contribute(\n\t\tbytes32        _taskid,\n\t\tbytes32        _resultHash,\n\t\tbytes32        _resultSeal,\n\t\taddress        _enclaveChallenge,\n\t\tbytes calldata _enclaveSign,\n\t\tbytes calldata _workerpoolSign)\n\texternal;\n\n\tfunction reveal(\n\t\tbytes32 _taskid,\n\t\tbytes32 _resultDigest)\n\texternal;\n\n\tfunction reopen(\n\t\tbytes32 _taskid)\n\texternal;\n\n\tfunction finalize(\n\t\tbytes32 _taskid,\n\t\tbytes calldata  _results)\n\texternal;\n\n\tfunction claim(\n\t\tbytes32 _taskid)\n\texternal;\n\n\tfunction initializeArray(\n\t\tbytes32[] calldata _dealid,\n\t\tuint256[] calldata _idx)\n\texternal returns (bool);\n\n\tfunction claimArray(\n\t\tbytes32[] calldata _taskid)\n\texternal returns (bool);\n\n\tfunction initializeAndClaimArray(\n\t\tbytes32[] calldata _dealid,\n\t\tuint256[] calldata _idx)\n\texternal returns (bool);\n\n\tfunction viewTaskABILegacy(bytes32 _taskid)\n\texternal view returns\n\t( IexecODBLibCore.TaskStatusEnum\n\t, bytes32\n\t, uint256\n\t, uint256\n\t, uint256\n\t, uint256\n\t, uint256\n\t, bytes32\n\t, uint256\n\t, uint256\n\t, address[] memory\n\t, bytes     memory\n\t);\n\n\tfunction viewContributionABILegacy(bytes32 _taskid, address _worker)\n\texternal view returns\n\t( IexecODBLibCore.ContributionStatusEnum\n\t, bytes32\n\t, bytes32\n\t, address\n\t);\n\n\tfunction viewCategoryABILegacy(uint256 _catid)\n\texternal view returns (string memory, string memory, uint256);\n}\n",
  "sourcePath": "@iexec/interface/contracts/IexecHub.sol",
  "ast": {
    "absolutePath": "@iexec/interface/contracts/IexecHub.sol",
    "exportedSymbols": {
      "IexecHubInterface": [
        9510
      ]
    },
    "id": 9511,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 9200,
        "literals": [
          "solidity",
          ">",
          "0.5",
          ".0",
          "<",
          "0.7",
          ".0"
        ],
        "nodeType": "PragmaDirective",
        "src": "0:30:50"
      },
      {
        "id": 9201,
        "literals": [
          "experimental",
          "ABIEncoderV2"
        ],
        "nodeType": "PragmaDirective",
        "src": "31:33:50"
      },
      {
        "absolutePath": "@iexec/interface/contracts/IexecRegistries.sol",
        "file": "./IexecRegistries.sol",
        "id": 9202,
        "nodeType": "ImportDirective",
        "scope": 9511,
        "sourceUnit": 9734,
        "src": "66:31:50",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "@iexec/interface/contracts/IexecClerk.sol",
        "file": "./IexecClerk.sol",
        "id": 9203,
        "nodeType": "ImportDirective",
        "scope": 9511,
        "sourceUnit": 9199,
        "src": "98:26:50",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "@iexec/interface/contracts/libs/IexecODBLibCore.sol",
        "file": "./libs/IexecODBLibCore.sol",
        "id": 9204,
        "nodeType": "ImportDirective",
        "scope": 9511,
        "sourceUnit": 9835,
        "src": "125:36:50",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "abstract": false,
        "baseContracts": [],
        "contractDependencies": [],
        "contractKind": "interface",
        "documentation": null,
        "fullyImplemented": false,
        "id": 9510,
        "linearizedBaseContracts": [
          9510
        ],
        "name": "IexecHubInterface",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "anonymous": false,
            "documentation": {
              "id": 9205,
              "nodeType": "StructuredDocumentation",
              "src": "195:233:50",
              "text": "*************************************************************************\n                           CATEGORY MANAGER                             ***************************************************************************"
            },
            "id": 9215,
            "name": "CreateCategory",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9214,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9207,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "catid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9215,
                  "src": "454:13:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9206,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "454:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9209,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "name",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9215,
                  "src": "471:12:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 9208,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "471:6:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9211,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "description",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9215,
                  "src": "487:19:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 9210,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "487:6:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9213,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "workClockTimeRef",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9215,
                  "src": "510:24:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9212,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "510:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "450:85:50"
            },
            "src": "430:106:50"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "4f5f44ec",
            "id": 9222,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "viewCategory",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9218,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9217,
                  "mutability": "mutable",
                  "name": "_catid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9222,
                  "src": "564:14:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9216,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "564:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "560:19:50"
            },
            "returnParameters": {
              "id": 9221,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9220,
                  "mutability": "mutable",
                  "name": "category",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9222,
                  "src": "604:40:50",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_Category_$9747_memory_ptr",
                    "typeString": "struct IexecODBLibCore.Category"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9219,
                    "name": "IexecODBLibCore.Category",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9747,
                    "src": "604:24:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Category_$9747_storage_ptr",
                      "typeString": "struct IexecODBLibCore.Category"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "603:42:50"
            },
            "scope": 9510,
            "src": "539:107:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "c140996f",
            "id": 9227,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "countCategory",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9223,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "671:2:50"
            },
            "returnParameters": {
              "id": 9226,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9225,
                  "mutability": "mutable",
                  "name": "count",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9227,
                  "src": "698:13:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9224,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "698:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "697:15:50"
            },
            "scope": 9510,
            "src": "649:64:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "298503d9",
            "id": 9238,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "createCategory",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9234,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9229,
                  "mutability": "mutable",
                  "name": "name",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9238,
                  "src": "743:21:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 9228,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "743:6:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9231,
                  "mutability": "mutable",
                  "name": "description",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9238,
                  "src": "768:28:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 9230,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "768:6:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9233,
                  "mutability": "mutable",
                  "name": "workClockTimeRef",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9238,
                  "src": "800:33:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9232,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "800:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "739:95:50"
            },
            "returnParameters": {
              "id": 9237,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9236,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9238,
                  "src": "854:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9235,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "854:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "853:9:50"
            },
            "scope": 9510,
            "src": "716:147:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "anonymous": false,
            "documentation": {
              "id": 9239,
              "nodeType": "StructuredDocumentation",
              "src": "866:233:50",
              "text": "*************************************************************************\n                               IEXECHUB                                 ***************************************************************************"
            },
            "id": 9245,
            "name": "TaskInitialize",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9244,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9241,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9245,
                  "src": "1122:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9240,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1122:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9243,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "workerpool",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9245,
                  "src": "1146:26:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9242,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1146:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1121:67:50"
            },
            "src": "1101:88:50"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 9253,
            "name": "TaskContribute",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9252,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9247,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9253,
                  "src": "1212:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9246,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1212:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9249,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "worker",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9253,
                  "src": "1236:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9248,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1236:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9251,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "hash",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9253,
                  "src": "1260:12:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9250,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1260:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1211:67:50"
            },
            "src": "1191:88:50"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 9259,
            "name": "TaskConsensus",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9258,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9255,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9259,
                  "src": "1302:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9254,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1302:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9257,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "consensus",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9259,
                  "src": "1350:17:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9256,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1350:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1301:67:50"
            },
            "src": "1281:88:50"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 9267,
            "name": "TaskReveal",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9266,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9261,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9267,
                  "src": "1392:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9260,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1392:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9263,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "worker",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9267,
                  "src": "1416:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9262,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1416:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9265,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "digest",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9267,
                  "src": "1440:14:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9264,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1440:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1391:67:50"
            },
            "src": "1371:88:50"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 9271,
            "name": "TaskReopen",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9270,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9269,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9271,
                  "src": "1482:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9268,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1482:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1481:67:50"
            },
            "src": "1461:88:50"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 9277,
            "name": "TaskFinalize",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9276,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9273,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9277,
                  "src": "1572:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9272,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1572:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9275,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "results",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9277,
                  "src": "1620:13:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 9274,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "1620:5:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1571:67:50"
            },
            "src": "1551:88:50"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 9281,
            "name": "TaskClaimed",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9280,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9279,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9281,
                  "src": "1662:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9278,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1662:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1661:67:50"
            },
            "src": "1641:88:50"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 9287,
            "name": "AccurateContribution",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9286,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9283,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "worker",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9287,
                  "src": "1759:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9282,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1759:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9285,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9287,
                  "src": "1783:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9284,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1783:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1758:48:50"
            },
            "src": "1732:75:50"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 9293,
            "name": "FaultyContribution",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9292,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9289,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "worker",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9293,
                  "src": "1836:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9288,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1836:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9291,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9293,
                  "src": "1860:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9290,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1860:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1835:48:50"
            },
            "src": "1809:75:50"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "45b99d28",
            "id": 9298,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "CONSENSUS_DURATION_RATIO",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9294,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1920:2:50"
            },
            "returnParameters": {
              "id": 9297,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9296,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9298,
                  "src": "1946:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9295,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1946:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1945:9:50"
            },
            "scope": 9510,
            "src": "1887:68:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "e9ebbaf8",
            "id": 9303,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "REVEAL_DURATION_RATIO",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9299,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1990:2:50"
            },
            "returnParameters": {
              "id": 9302,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9301,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9303,
                  "src": "2016:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9300,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2016:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2015:9:50"
            },
            "scope": 9510,
            "src": "1957:68:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "b01c6846",
            "id": 9308,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "iexecclerk",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9304,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2060:2:50"
            },
            "returnParameters": {
              "id": 9307,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9306,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9308,
                  "src": "2086:19:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_IexecClerkInterface_$9198",
                    "typeString": "contract IexecClerkInterface"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9305,
                    "name": "IexecClerkInterface",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9198,
                    "src": "2086:19:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_IexecClerkInterface_$9198",
                      "typeString": "contract IexecClerkInterface"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2085:21:50"
            },
            "scope": 9510,
            "src": "2027:80:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "45b637a9",
            "id": 9313,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "appregistry",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9309,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2142:2:50"
            },
            "returnParameters": {
              "id": 9312,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9311,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9313,
                  "src": "2168:20:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_AppRegistryInterface_$9649",
                    "typeString": "contract AppRegistryInterface"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9310,
                    "name": "AppRegistryInterface",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9649,
                    "src": "2168:20:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_AppRegistryInterface_$9649",
                      "typeString": "contract AppRegistryInterface"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2167:22:50"
            },
            "scope": 9510,
            "src": "2109:81:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "b1b11d2c",
            "id": 9318,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "datasetregistry",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9314,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2225:2:50"
            },
            "returnParameters": {
              "id": 9317,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9316,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9318,
                  "src": "2251:24:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_DatasetRegistryInterface_$9692",
                    "typeString": "contract DatasetRegistryInterface"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9315,
                    "name": "DatasetRegistryInterface",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9692,
                    "src": "2251:24:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_DatasetRegistryInterface_$9692",
                      "typeString": "contract DatasetRegistryInterface"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2250:26:50"
            },
            "scope": 9510,
            "src": "2192:85:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "90a0f546",
            "id": 9323,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "workerpoolregistry",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9319,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2312:2:50"
            },
            "returnParameters": {
              "id": 9322,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9321,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9323,
                  "src": "2338:27:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_WorkerpoolRegistryInterface_$9733",
                    "typeString": "contract WorkerpoolRegistryInterface"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9320,
                    "name": "WorkerpoolRegistryInterface",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9733,
                    "src": "2338:27:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_WorkerpoolRegistryInterface_$9733",
                      "typeString": "contract WorkerpoolRegistryInterface"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2337:29:50"
            },
            "scope": 9510,
            "src": "2279:88:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "4704511d",
            "id": 9334,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "attachContracts",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9332,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9325,
                  "mutability": "mutable",
                  "name": "_iexecclerkAddress",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9334,
                  "src": "2398:26:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9324,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2398:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9327,
                  "mutability": "mutable",
                  "name": "_appregistryAddress",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9334,
                  "src": "2428:27:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9326,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2428:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9329,
                  "mutability": "mutable",
                  "name": "_datasetregistryAddress",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9334,
                  "src": "2459:31:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9328,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2459:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9331,
                  "mutability": "mutable",
                  "name": "_workerpoolregistryAddress",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9334,
                  "src": "2494:34:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9330,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2494:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2394:135:50"
            },
            "returnParameters": {
              "id": 9333,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2539:0:50"
            },
            "scope": 9510,
            "src": "2370:170:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "adccf0d5",
            "id": 9341,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "viewTask",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9337,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9336,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9341,
                  "src": "2564:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9335,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2564:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2560:20:50"
            },
            "returnParameters": {
              "id": 9340,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9339,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9341,
                  "src": "2605:27:50",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_Task_$9819_memory_ptr",
                    "typeString": "struct IexecODBLibCore.Task"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9338,
                    "name": "IexecODBLibCore.Task",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9819,
                    "src": "2605:20:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Task_$9819_storage_ptr",
                      "typeString": "struct IexecODBLibCore.Task"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2604:29:50"
            },
            "scope": 9510,
            "src": "2543:91:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "e741363b",
            "id": 9350,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "viewContribution",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9346,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9343,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9350,
                  "src": "2666:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9342,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2666:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9345,
                  "mutability": "mutable",
                  "name": "_worker",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9350,
                  "src": "2685:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9344,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2685:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2662:39:50"
            },
            "returnParameters": {
              "id": 9349,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9348,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9350,
                  "src": "2726:35:50",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_Contribution_$9833_memory_ptr",
                    "typeString": "struct IexecODBLibCore.Contribution"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9347,
                    "name": "IexecODBLibCore.Contribution",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9833,
                    "src": "2726:28:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Contribution_$9833_storage_ptr",
                      "typeString": "struct IexecODBLibCore.Contribution"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2725:37:50"
            },
            "scope": 9510,
            "src": "2637:126:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "db230b52",
            "id": 9357,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "viewScore",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9353,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9352,
                  "mutability": "mutable",
                  "name": "_worker",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9357,
                  "src": "2788:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9351,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2788:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2784:20:50"
            },
            "returnParameters": {
              "id": 9356,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9355,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9357,
                  "src": "2829:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9354,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2829:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2828:9:50"
            },
            "scope": 9510,
            "src": "2766:72:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "097d630d",
            "id": 9368,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "checkResources",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9364,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9359,
                  "mutability": "mutable",
                  "name": "app",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9368,
                  "src": "2868:11:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9358,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2868:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9361,
                  "mutability": "mutable",
                  "name": "dataset",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9368,
                  "src": "2883:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9360,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2883:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9363,
                  "mutability": "mutable",
                  "name": "workerpool",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9368,
                  "src": "2902:18:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9362,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2902:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2864:57:50"
            },
            "returnParameters": {
              "id": 9367,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9366,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9368,
                  "src": "2946:4:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 9365,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "2946:4:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2945:6:50"
            },
            "scope": 9510,
            "src": "2841:111:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "d09cc57e",
            "id": 9375,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "resultFor",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9371,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9370,
                  "mutability": "mutable",
                  "name": "id",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9375,
                  "src": "2977:10:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9369,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2977:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2973:15:50"
            },
            "returnParameters": {
              "id": 9374,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9373,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9375,
                  "src": "3013:12:50",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 9372,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "3013:5:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3012:14:50"
            },
            "scope": 9510,
            "src": "2955:72:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "5b36c66b",
            "id": 9384,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "initialize",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9380,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9377,
                  "mutability": "mutable",
                  "name": "_dealid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9384,
                  "src": "3053:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9376,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3053:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9379,
                  "mutability": "mutable",
                  "name": "idx",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9384,
                  "src": "3072:11:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9378,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3072:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3049:35:50"
            },
            "returnParameters": {
              "id": 9383,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9382,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9384,
                  "src": "3104:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9381,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3104:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3103:9:50"
            },
            "scope": 9510,
            "src": "3030:83:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "34623484",
            "id": 9399,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "contribute",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9397,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9386,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9399,
                  "src": "3139:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9385,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3139:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9388,
                  "mutability": "mutable",
                  "name": "_resultHash",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9399,
                  "src": "3165:26:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9387,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3165:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9390,
                  "mutability": "mutable",
                  "name": "_resultSeal",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9399,
                  "src": "3195:26:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9389,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3195:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9392,
                  "mutability": "mutable",
                  "name": "_enclaveChallenge",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9399,
                  "src": "3225:32:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9391,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "3225:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9394,
                  "mutability": "mutable",
                  "name": "_enclaveSign",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9399,
                  "src": "3261:27:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 9393,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "3261:5:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9396,
                  "mutability": "mutable",
                  "name": "_workerpoolSign",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9399,
                  "src": "3292:30:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 9395,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "3292:5:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3135:188:50"
            },
            "returnParameters": {
              "id": 9398,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3333:0:50"
            },
            "scope": 9510,
            "src": "3116:218:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "fc334e8c",
            "id": 9406,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "reveal",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9404,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9401,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9406,
                  "src": "3356:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9400,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3356:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9403,
                  "mutability": "mutable",
                  "name": "_resultDigest",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9406,
                  "src": "3375:21:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9402,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3375:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3352:45:50"
            },
            "returnParameters": {
              "id": 9405,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3407:0:50"
            },
            "scope": 9510,
            "src": "3337:71:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "f6c68e10",
            "id": 9411,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "reopen",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9409,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9408,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9411,
                  "src": "3430:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9407,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3430:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3426:20:50"
            },
            "returnParameters": {
              "id": 9410,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3456:0:50"
            },
            "scope": 9510,
            "src": "3411:46:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "c037f13e",
            "id": 9418,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "finalize",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9416,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9413,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9418,
                  "src": "3481:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9412,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3481:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9415,
                  "mutability": "mutable",
                  "name": "_results",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9418,
                  "src": "3500:24:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 9414,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "3500:5:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3477:48:50"
            },
            "returnParameters": {
              "id": 9417,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3535:0:50"
            },
            "scope": 9510,
            "src": "3460:76:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "bd66528a",
            "id": 9423,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "claim",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9421,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9420,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9423,
                  "src": "3557:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9419,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3557:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3553:20:50"
            },
            "returnParameters": {
              "id": 9422,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3583:0:50"
            },
            "scope": 9510,
            "src": "3539:45:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "b504681d",
            "id": 9434,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "initializeArray",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9430,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9426,
                  "mutability": "mutable",
                  "name": "_dealid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9434,
                  "src": "3615:26:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 9424,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "3615:7:50",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 9425,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "3615:9:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9429,
                  "mutability": "mutable",
                  "name": "_idx",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9434,
                  "src": "3645:23:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 9427,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "3645:7:50",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 9428,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "3645:9:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3611:58:50"
            },
            "returnParameters": {
              "id": 9433,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9432,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9434,
                  "src": "3689:4:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 9431,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "3689:4:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3688:6:50"
            },
            "scope": 9510,
            "src": "3587:108:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "fa055d7e",
            "id": 9442,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "claimArray",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9438,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9437,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9442,
                  "src": "3721:26:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 9435,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "3721:7:50",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 9436,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "3721:9:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3717:31:50"
            },
            "returnParameters": {
              "id": 9441,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9440,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9442,
                  "src": "3768:4:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 9439,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "3768:4:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3767:6:50"
            },
            "scope": 9510,
            "src": "3698:76:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "f722cb32",
            "id": 9453,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "initializeAndClaimArray",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9449,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9445,
                  "mutability": "mutable",
                  "name": "_dealid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9453,
                  "src": "3813:26:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 9443,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "3813:7:50",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 9444,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "3813:9:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9448,
                  "mutability": "mutable",
                  "name": "_idx",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9453,
                  "src": "3843:23:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 9446,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "3843:7:50",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 9447,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "3843:9:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3809:58:50"
            },
            "returnParameters": {
              "id": 9452,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9451,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9453,
                  "src": "3887:4:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 9450,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "3887:4:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3886:6:50"
            },
            "scope": 9510,
            "src": "3777:116:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "248ad6a0",
            "id": 9483,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "viewTaskABILegacy",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9456,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9455,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "3923:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9454,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3923:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3922:17:50"
            },
            "returnParameters": {
              "id": 9482,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9458,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "3966:30:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_TaskStatusEnum_$9791",
                    "typeString": "enum IexecODBLibCore.TaskStatusEnum"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9457,
                    "name": "IexecODBLibCore.TaskStatusEnum",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9791,
                    "src": "3966:30:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_TaskStatusEnum_$9791",
                      "typeString": "enum IexecODBLibCore.TaskStatusEnum"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9460,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4000:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9459,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "4000:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9462,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4011:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9461,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4011:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9464,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4022:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9463,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4022:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9466,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4033:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9465,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4033:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9468,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4044:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9467,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4044:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9470,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4055:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9469,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4055:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9472,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4066:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9471,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "4066:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9474,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4077:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9473,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4077:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9476,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4088:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9475,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4088:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9479,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4099:16:50",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 9477,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "4099:7:50",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 9478,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "4099:9:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9481,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4119:16:50",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 9480,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "4119:5:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3964:174:50"
            },
            "scope": 9510,
            "src": "3896:243:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "11e35aba",
            "id": 9498,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "viewContributionABILegacy",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9488,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9485,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9498,
                  "src": "4177:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9484,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "4177:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9487,
                  "mutability": "mutable",
                  "name": "_worker",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9498,
                  "src": "4194:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9486,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "4194:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "4176:34:50"
            },
            "returnParameters": {
              "id": 9497,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9490,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9498,
                  "src": "4237:38:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_ContributionStatusEnum_$9824",
                    "typeString": "enum IexecODBLibCore.ContributionStatusEnum"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9489,
                    "name": "IexecODBLibCore.ContributionStatusEnum",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9824,
                    "src": "4237:38:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_ContributionStatusEnum_$9824",
                      "typeString": "enum IexecODBLibCore.ContributionStatusEnum"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9492,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9498,
                  "src": "4279:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9491,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "4279:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9494,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9498,
                  "src": "4290:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9493,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "4290:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9496,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9498,
                  "src": "4301:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9495,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "4301:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "4235:76:50"
            },
            "scope": 9510,
            "src": "4142:170:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "f9353b8d",
            "id": 9509,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "viewCategoryABILegacy",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9501,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9500,
                  "mutability": "mutable",
                  "name": "_catid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9509,
                  "src": "4346:14:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9499,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4346:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "4345:16:50"
            },
            "returnParameters": {
              "id": 9508,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9503,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9509,
                  "src": "4386:13:50",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 9502,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4386:6:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9505,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9509,
                  "src": "4401:13:50",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 9504,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4401:6:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9507,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9509,
                  "src": "4416:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9506,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4416:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "4385:39:50"
            },
            "scope": 9510,
            "src": "4315:110:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          }
        ],
        "scope": 9511,
        "src": "164:4263:50"
      }
    ],
    "src": "0:4428:50"
  },
  "legacyAST": {
    "absolutePath": "@iexec/interface/contracts/IexecHub.sol",
    "exportedSymbols": {
      "IexecHubInterface": [
        9510
      ]
    },
    "id": 9511,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 9200,
        "literals": [
          "solidity",
          ">",
          "0.5",
          ".0",
          "<",
          "0.7",
          ".0"
        ],
        "nodeType": "PragmaDirective",
        "src": "0:30:50"
      },
      {
        "id": 9201,
        "literals": [
          "experimental",
          "ABIEncoderV2"
        ],
        "nodeType": "PragmaDirective",
        "src": "31:33:50"
      },
      {
        "absolutePath": "@iexec/interface/contracts/IexecRegistries.sol",
        "file": "./IexecRegistries.sol",
        "id": 9202,
        "nodeType": "ImportDirective",
        "scope": 9511,
        "sourceUnit": 9734,
        "src": "66:31:50",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "@iexec/interface/contracts/IexecClerk.sol",
        "file": "./IexecClerk.sol",
        "id": 9203,
        "nodeType": "ImportDirective",
        "scope": 9511,
        "sourceUnit": 9199,
        "src": "98:26:50",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "@iexec/interface/contracts/libs/IexecODBLibCore.sol",
        "file": "./libs/IexecODBLibCore.sol",
        "id": 9204,
        "nodeType": "ImportDirective",
        "scope": 9511,
        "sourceUnit": 9835,
        "src": "125:36:50",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "abstract": false,
        "baseContracts": [],
        "contractDependencies": [],
        "contractKind": "interface",
        "documentation": null,
        "fullyImplemented": false,
        "id": 9510,
        "linearizedBaseContracts": [
          9510
        ],
        "name": "IexecHubInterface",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "anonymous": false,
            "documentation": {
              "id": 9205,
              "nodeType": "StructuredDocumentation",
              "src": "195:233:50",
              "text": "*************************************************************************\n                           CATEGORY MANAGER                             ***************************************************************************"
            },
            "id": 9215,
            "name": "CreateCategory",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9214,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9207,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "catid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9215,
                  "src": "454:13:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9206,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "454:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9209,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "name",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9215,
                  "src": "471:12:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 9208,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "471:6:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9211,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "description",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9215,
                  "src": "487:19:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 9210,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "487:6:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9213,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "workClockTimeRef",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9215,
                  "src": "510:24:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9212,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "510:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "450:85:50"
            },
            "src": "430:106:50"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "4f5f44ec",
            "id": 9222,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "viewCategory",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9218,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9217,
                  "mutability": "mutable",
                  "name": "_catid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9222,
                  "src": "564:14:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9216,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "564:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "560:19:50"
            },
            "returnParameters": {
              "id": 9221,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9220,
                  "mutability": "mutable",
                  "name": "category",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9222,
                  "src": "604:40:50",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_Category_$9747_memory_ptr",
                    "typeString": "struct IexecODBLibCore.Category"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9219,
                    "name": "IexecODBLibCore.Category",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9747,
                    "src": "604:24:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Category_$9747_storage_ptr",
                      "typeString": "struct IexecODBLibCore.Category"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "603:42:50"
            },
            "scope": 9510,
            "src": "539:107:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "c140996f",
            "id": 9227,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "countCategory",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9223,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "671:2:50"
            },
            "returnParameters": {
              "id": 9226,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9225,
                  "mutability": "mutable",
                  "name": "count",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9227,
                  "src": "698:13:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9224,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "698:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "697:15:50"
            },
            "scope": 9510,
            "src": "649:64:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "298503d9",
            "id": 9238,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "createCategory",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9234,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9229,
                  "mutability": "mutable",
                  "name": "name",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9238,
                  "src": "743:21:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 9228,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "743:6:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9231,
                  "mutability": "mutable",
                  "name": "description",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9238,
                  "src": "768:28:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 9230,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "768:6:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9233,
                  "mutability": "mutable",
                  "name": "workClockTimeRef",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9238,
                  "src": "800:33:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9232,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "800:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "739:95:50"
            },
            "returnParameters": {
              "id": 9237,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9236,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9238,
                  "src": "854:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9235,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "854:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "853:9:50"
            },
            "scope": 9510,
            "src": "716:147:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "anonymous": false,
            "documentation": {
              "id": 9239,
              "nodeType": "StructuredDocumentation",
              "src": "866:233:50",
              "text": "*************************************************************************\n                               IEXECHUB                                 ***************************************************************************"
            },
            "id": 9245,
            "name": "TaskInitialize",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9244,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9241,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9245,
                  "src": "1122:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9240,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1122:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9243,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "workerpool",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9245,
                  "src": "1146:26:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9242,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1146:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1121:67:50"
            },
            "src": "1101:88:50"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 9253,
            "name": "TaskContribute",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9252,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9247,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9253,
                  "src": "1212:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9246,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1212:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9249,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "worker",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9253,
                  "src": "1236:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9248,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1236:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9251,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "hash",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9253,
                  "src": "1260:12:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9250,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1260:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1211:67:50"
            },
            "src": "1191:88:50"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 9259,
            "name": "TaskConsensus",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9258,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9255,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9259,
                  "src": "1302:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9254,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1302:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9257,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "consensus",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9259,
                  "src": "1350:17:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9256,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1350:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1301:67:50"
            },
            "src": "1281:88:50"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 9267,
            "name": "TaskReveal",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9266,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9261,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9267,
                  "src": "1392:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9260,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1392:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9263,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "worker",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9267,
                  "src": "1416:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9262,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1416:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9265,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "digest",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9267,
                  "src": "1440:14:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9264,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1440:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1391:67:50"
            },
            "src": "1371:88:50"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 9271,
            "name": "TaskReopen",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9270,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9269,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9271,
                  "src": "1482:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9268,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1482:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1481:67:50"
            },
            "src": "1461:88:50"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 9277,
            "name": "TaskFinalize",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9276,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9273,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9277,
                  "src": "1572:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9272,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1572:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9275,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "results",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9277,
                  "src": "1620:13:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 9274,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "1620:5:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1571:67:50"
            },
            "src": "1551:88:50"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 9281,
            "name": "TaskClaimed",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9280,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9279,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9281,
                  "src": "1662:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9278,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1662:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1661:67:50"
            },
            "src": "1641:88:50"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 9287,
            "name": "AccurateContribution",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9286,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9283,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "worker",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9287,
                  "src": "1759:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9282,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1759:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9285,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9287,
                  "src": "1783:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9284,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1783:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1758:48:50"
            },
            "src": "1732:75:50"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 9293,
            "name": "FaultyContribution",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 9292,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9289,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "worker",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9293,
                  "src": "1836:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9288,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1836:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9291,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9293,
                  "src": "1860:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9290,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1860:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1835:48:50"
            },
            "src": "1809:75:50"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "45b99d28",
            "id": 9298,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "CONSENSUS_DURATION_RATIO",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9294,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1920:2:50"
            },
            "returnParameters": {
              "id": 9297,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9296,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9298,
                  "src": "1946:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9295,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1946:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1945:9:50"
            },
            "scope": 9510,
            "src": "1887:68:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "e9ebbaf8",
            "id": 9303,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "REVEAL_DURATION_RATIO",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9299,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1990:2:50"
            },
            "returnParameters": {
              "id": 9302,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9301,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9303,
                  "src": "2016:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9300,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2016:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2015:9:50"
            },
            "scope": 9510,
            "src": "1957:68:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "b01c6846",
            "id": 9308,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "iexecclerk",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9304,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2060:2:50"
            },
            "returnParameters": {
              "id": 9307,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9306,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9308,
                  "src": "2086:19:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_IexecClerkInterface_$9198",
                    "typeString": "contract IexecClerkInterface"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9305,
                    "name": "IexecClerkInterface",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9198,
                    "src": "2086:19:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_IexecClerkInterface_$9198",
                      "typeString": "contract IexecClerkInterface"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2085:21:50"
            },
            "scope": 9510,
            "src": "2027:80:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "45b637a9",
            "id": 9313,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "appregistry",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9309,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2142:2:50"
            },
            "returnParameters": {
              "id": 9312,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9311,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9313,
                  "src": "2168:20:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_AppRegistryInterface_$9649",
                    "typeString": "contract AppRegistryInterface"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9310,
                    "name": "AppRegistryInterface",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9649,
                    "src": "2168:20:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_AppRegistryInterface_$9649",
                      "typeString": "contract AppRegistryInterface"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2167:22:50"
            },
            "scope": 9510,
            "src": "2109:81:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "b1b11d2c",
            "id": 9318,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "datasetregistry",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9314,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2225:2:50"
            },
            "returnParameters": {
              "id": 9317,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9316,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9318,
                  "src": "2251:24:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_DatasetRegistryInterface_$9692",
                    "typeString": "contract DatasetRegistryInterface"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9315,
                    "name": "DatasetRegistryInterface",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9692,
                    "src": "2251:24:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_DatasetRegistryInterface_$9692",
                      "typeString": "contract DatasetRegistryInterface"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2250:26:50"
            },
            "scope": 9510,
            "src": "2192:85:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "90a0f546",
            "id": 9323,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "workerpoolregistry",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9319,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2312:2:50"
            },
            "returnParameters": {
              "id": 9322,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9321,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9323,
                  "src": "2338:27:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_WorkerpoolRegistryInterface_$9733",
                    "typeString": "contract WorkerpoolRegistryInterface"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9320,
                    "name": "WorkerpoolRegistryInterface",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9733,
                    "src": "2338:27:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_WorkerpoolRegistryInterface_$9733",
                      "typeString": "contract WorkerpoolRegistryInterface"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2337:29:50"
            },
            "scope": 9510,
            "src": "2279:88:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "4704511d",
            "id": 9334,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "attachContracts",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9332,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9325,
                  "mutability": "mutable",
                  "name": "_iexecclerkAddress",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9334,
                  "src": "2398:26:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9324,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2398:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9327,
                  "mutability": "mutable",
                  "name": "_appregistryAddress",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9334,
                  "src": "2428:27:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9326,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2428:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9329,
                  "mutability": "mutable",
                  "name": "_datasetregistryAddress",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9334,
                  "src": "2459:31:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9328,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2459:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9331,
                  "mutability": "mutable",
                  "name": "_workerpoolregistryAddress",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9334,
                  "src": "2494:34:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9330,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2494:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2394:135:50"
            },
            "returnParameters": {
              "id": 9333,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2539:0:50"
            },
            "scope": 9510,
            "src": "2370:170:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "adccf0d5",
            "id": 9341,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "viewTask",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9337,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9336,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9341,
                  "src": "2564:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9335,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2564:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2560:20:50"
            },
            "returnParameters": {
              "id": 9340,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9339,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9341,
                  "src": "2605:27:50",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_Task_$9819_memory_ptr",
                    "typeString": "struct IexecODBLibCore.Task"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9338,
                    "name": "IexecODBLibCore.Task",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9819,
                    "src": "2605:20:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Task_$9819_storage_ptr",
                      "typeString": "struct IexecODBLibCore.Task"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2604:29:50"
            },
            "scope": 9510,
            "src": "2543:91:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "e741363b",
            "id": 9350,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "viewContribution",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9346,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9343,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9350,
                  "src": "2666:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9342,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2666:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9345,
                  "mutability": "mutable",
                  "name": "_worker",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9350,
                  "src": "2685:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9344,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2685:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2662:39:50"
            },
            "returnParameters": {
              "id": 9349,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9348,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9350,
                  "src": "2726:35:50",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_Contribution_$9833_memory_ptr",
                    "typeString": "struct IexecODBLibCore.Contribution"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9347,
                    "name": "IexecODBLibCore.Contribution",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9833,
                    "src": "2726:28:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Contribution_$9833_storage_ptr",
                      "typeString": "struct IexecODBLibCore.Contribution"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2725:37:50"
            },
            "scope": 9510,
            "src": "2637:126:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "db230b52",
            "id": 9357,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "viewScore",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9353,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9352,
                  "mutability": "mutable",
                  "name": "_worker",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9357,
                  "src": "2788:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9351,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2788:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2784:20:50"
            },
            "returnParameters": {
              "id": 9356,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9355,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9357,
                  "src": "2829:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9354,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2829:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2828:9:50"
            },
            "scope": 9510,
            "src": "2766:72:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "097d630d",
            "id": 9368,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "checkResources",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9364,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9359,
                  "mutability": "mutable",
                  "name": "app",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9368,
                  "src": "2868:11:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9358,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2868:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9361,
                  "mutability": "mutable",
                  "name": "dataset",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9368,
                  "src": "2883:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9360,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2883:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9363,
                  "mutability": "mutable",
                  "name": "workerpool",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9368,
                  "src": "2902:18:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9362,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2902:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2864:57:50"
            },
            "returnParameters": {
              "id": 9367,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9366,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9368,
                  "src": "2946:4:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 9365,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "2946:4:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2945:6:50"
            },
            "scope": 9510,
            "src": "2841:111:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "d09cc57e",
            "id": 9375,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "resultFor",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9371,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9370,
                  "mutability": "mutable",
                  "name": "id",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9375,
                  "src": "2977:10:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9369,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2977:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2973:15:50"
            },
            "returnParameters": {
              "id": 9374,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9373,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9375,
                  "src": "3013:12:50",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 9372,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "3013:5:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3012:14:50"
            },
            "scope": 9510,
            "src": "2955:72:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "5b36c66b",
            "id": 9384,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "initialize",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9380,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9377,
                  "mutability": "mutable",
                  "name": "_dealid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9384,
                  "src": "3053:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9376,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3053:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9379,
                  "mutability": "mutable",
                  "name": "idx",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9384,
                  "src": "3072:11:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9378,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3072:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3049:35:50"
            },
            "returnParameters": {
              "id": 9383,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9382,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9384,
                  "src": "3104:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9381,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3104:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3103:9:50"
            },
            "scope": 9510,
            "src": "3030:83:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "34623484",
            "id": 9399,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "contribute",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9397,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9386,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9399,
                  "src": "3139:22:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9385,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3139:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9388,
                  "mutability": "mutable",
                  "name": "_resultHash",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9399,
                  "src": "3165:26:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9387,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3165:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9390,
                  "mutability": "mutable",
                  "name": "_resultSeal",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9399,
                  "src": "3195:26:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9389,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3195:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9392,
                  "mutability": "mutable",
                  "name": "_enclaveChallenge",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9399,
                  "src": "3225:32:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9391,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "3225:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9394,
                  "mutability": "mutable",
                  "name": "_enclaveSign",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9399,
                  "src": "3261:27:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 9393,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "3261:5:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9396,
                  "mutability": "mutable",
                  "name": "_workerpoolSign",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9399,
                  "src": "3292:30:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 9395,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "3292:5:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3135:188:50"
            },
            "returnParameters": {
              "id": 9398,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3333:0:50"
            },
            "scope": 9510,
            "src": "3116:218:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "fc334e8c",
            "id": 9406,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "reveal",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9404,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9401,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9406,
                  "src": "3356:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9400,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3356:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9403,
                  "mutability": "mutable",
                  "name": "_resultDigest",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9406,
                  "src": "3375:21:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9402,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3375:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3352:45:50"
            },
            "returnParameters": {
              "id": 9405,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3407:0:50"
            },
            "scope": 9510,
            "src": "3337:71:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "f6c68e10",
            "id": 9411,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "reopen",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9409,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9408,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9411,
                  "src": "3430:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9407,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3430:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3426:20:50"
            },
            "returnParameters": {
              "id": 9410,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3456:0:50"
            },
            "scope": 9510,
            "src": "3411:46:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "c037f13e",
            "id": 9418,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "finalize",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9416,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9413,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9418,
                  "src": "3481:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9412,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3481:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9415,
                  "mutability": "mutable",
                  "name": "_results",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9418,
                  "src": "3500:24:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 9414,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "3500:5:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3477:48:50"
            },
            "returnParameters": {
              "id": 9417,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3535:0:50"
            },
            "scope": 9510,
            "src": "3460:76:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "bd66528a",
            "id": 9423,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "claim",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9421,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9420,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9423,
                  "src": "3557:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9419,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3557:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3553:20:50"
            },
            "returnParameters": {
              "id": 9422,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3583:0:50"
            },
            "scope": 9510,
            "src": "3539:45:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "b504681d",
            "id": 9434,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "initializeArray",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9430,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9426,
                  "mutability": "mutable",
                  "name": "_dealid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9434,
                  "src": "3615:26:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 9424,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "3615:7:50",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 9425,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "3615:9:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9429,
                  "mutability": "mutable",
                  "name": "_idx",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9434,
                  "src": "3645:23:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 9427,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "3645:7:50",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 9428,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "3645:9:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3611:58:50"
            },
            "returnParameters": {
              "id": 9433,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9432,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9434,
                  "src": "3689:4:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 9431,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "3689:4:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3688:6:50"
            },
            "scope": 9510,
            "src": "3587:108:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "fa055d7e",
            "id": 9442,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "claimArray",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9438,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9437,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9442,
                  "src": "3721:26:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 9435,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "3721:7:50",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 9436,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "3721:9:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3717:31:50"
            },
            "returnParameters": {
              "id": 9441,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9440,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9442,
                  "src": "3768:4:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 9439,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "3768:4:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3767:6:50"
            },
            "scope": 9510,
            "src": "3698:76:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "f722cb32",
            "id": 9453,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "initializeAndClaimArray",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9449,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9445,
                  "mutability": "mutable",
                  "name": "_dealid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9453,
                  "src": "3813:26:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 9443,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "3813:7:50",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 9444,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "3813:9:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9448,
                  "mutability": "mutable",
                  "name": "_idx",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9453,
                  "src": "3843:23:50",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 9446,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "3843:7:50",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 9447,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "3843:9:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3809:58:50"
            },
            "returnParameters": {
              "id": 9452,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9451,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9453,
                  "src": "3887:4:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 9450,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "3887:4:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3886:6:50"
            },
            "scope": 9510,
            "src": "3777:116:50",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "248ad6a0",
            "id": 9483,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "viewTaskABILegacy",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9456,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9455,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "3923:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9454,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3923:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3922:17:50"
            },
            "returnParameters": {
              "id": 9482,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9458,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "3966:30:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_TaskStatusEnum_$9791",
                    "typeString": "enum IexecODBLibCore.TaskStatusEnum"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9457,
                    "name": "IexecODBLibCore.TaskStatusEnum",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9791,
                    "src": "3966:30:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_TaskStatusEnum_$9791",
                      "typeString": "enum IexecODBLibCore.TaskStatusEnum"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9460,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4000:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9459,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "4000:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9462,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4011:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9461,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4011:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9464,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4022:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9463,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4022:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9466,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4033:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9465,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4033:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9468,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4044:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9467,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4044:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9470,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4055:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9469,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4055:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9472,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4066:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9471,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "4066:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9474,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4077:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9473,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4077:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9476,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4088:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9475,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4088:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9479,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4099:16:50",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 9477,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "4099:7:50",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 9478,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "4099:9:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9481,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9483,
                  "src": "4119:16:50",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 9480,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "4119:5:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3964:174:50"
            },
            "scope": 9510,
            "src": "3896:243:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "11e35aba",
            "id": 9498,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "viewContributionABILegacy",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9488,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9485,
                  "mutability": "mutable",
                  "name": "_taskid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9498,
                  "src": "4177:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9484,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "4177:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9487,
                  "mutability": "mutable",
                  "name": "_worker",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9498,
                  "src": "4194:15:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9486,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "4194:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "4176:34:50"
            },
            "returnParameters": {
              "id": 9497,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9490,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9498,
                  "src": "4237:38:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_ContributionStatusEnum_$9824",
                    "typeString": "enum IexecODBLibCore.ContributionStatusEnum"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 9489,
                    "name": "IexecODBLibCore.ContributionStatusEnum",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 9824,
                    "src": "4237:38:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_ContributionStatusEnum_$9824",
                      "typeString": "enum IexecODBLibCore.ContributionStatusEnum"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9492,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9498,
                  "src": "4279:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9491,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "4279:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9494,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9498,
                  "src": "4290:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 9493,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "4290:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9496,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9498,
                  "src": "4301:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 9495,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "4301:7:50",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "4235:76:50"
            },
            "scope": 9510,
            "src": "4142:170:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "functionSelector": "f9353b8d",
            "id": 9509,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "viewCategoryABILegacy",
            "nodeType": "FunctionDefinition",
            "overrides": null,
            "parameters": {
              "id": 9501,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9500,
                  "mutability": "mutable",
                  "name": "_catid",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9509,
                  "src": "4346:14:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9499,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4346:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "4345:16:50"
            },
            "returnParameters": {
              "id": 9508,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 9503,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9509,
                  "src": "4386:13:50",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 9502,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4386:6:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9505,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9509,
                  "src": "4401:13:50",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 9504,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4401:6:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 9507,
                  "mutability": "mutable",
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 9509,
                  "src": "4416:7:50",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 9506,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4416:7:50",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "4385:39:50"
            },
            "scope": 9510,
            "src": "4315:110:50",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          }
        ],
        "scope": 9511,
        "src": "164:4263:50"
      }
    ],
    "src": "0:4428:50"
  },
  "compiler": {
    "name": "solc",
    "version": "0.6.6+commit.6c089d02.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "3.1.0",
  "updatedAt": "2020-04-21T18:10:34.949Z",
  "devdoc": {
    "methods": {}
  },
  "userdoc": {
    "methods": {}
  }
}