{
    "contractName": "ColonyTask",
    "abi": [
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "bytes32",
                    "name": "txHash",
                    "type": "bytes32"
                },
                {
                    "indexed": false,
                    "internalType": "string",
                    "name": "metadata",
                    "type": "string"
                }
            ],
            "name": "Annotation",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "user",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "skillId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "int256",
                    "name": "amount",
                    "type": "int256"
                }
            ],
            "name": "ArbitraryReputationUpdate",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "target",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "bytes",
                    "name": "data",
                    "type": "bytes"
                },
                {
                    "indexed": false,
                    "internalType": "bool",
                    "name": "success",
                    "type": "bool"
                }
            ],
            "name": "ArbitraryTransaction",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "auction",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "quantity",
                    "type": "uint256"
                }
            ],
            "name": "AuctionCreated",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "colonyId",
                    "type": "uint256"
                },
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "colonyAddress",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                }
            ],
            "name": "ColonyAdded",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address[]",
                    "name": "users",
                    "type": "address[]"
                },
                {
                    "indexed": false,
                    "internalType": "int256[]",
                    "name": "amounts",
                    "type": "int256[]"
                }
            ],
            "name": "ColonyBootstrapped",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "fee",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "payoutRemainder",
                    "type": "uint256"
                }
            ],
            "name": "ColonyFundsClaimed",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "fromPot",
                    "type": "uint256"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "toPot",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "amount",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                }
            ],
            "name": "ColonyFundsMovedBetweenFundingPots",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "colonyNetwork",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                }
            ],
            "name": "ColonyInitialised",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "colony",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "bytes32",
                    "name": "label",
                    "type": "bytes32"
                }
            ],
            "name": "ColonyLabelRegistered",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "string",
                    "name": "metadata",
                    "type": "string"
                }
            ],
            "name": "ColonyMetadata",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "string",
                    "name": "metadata",
                    "type": "string"
                }
            ],
            "name": "ColonyMetadataDelta",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "resolver",
                    "type": "address"
                }
            ],
            "name": "ColonyNetworkInitialised",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "rewardInverse",
                    "type": "uint256"
                }
            ],
            "name": "ColonyRewardInverseSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "user",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "domainId",
                    "type": "uint256"
                },
                {
                    "indexed": true,
                    "internalType": "uint8",
                    "name": "role",
                    "type": "uint8"
                },
                {
                    "indexed": false,
                    "internalType": "bool",
                    "name": "setTo",
                    "type": "bool"
                }
            ],
            "name": "ColonyRoleSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "oldVersion",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "newVersion",
                    "type": "uint256"
                }
            ],
            "name": "ColonyUpgraded",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "version",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "resolver",
                    "type": "address"
                }
            ],
            "name": "ColonyVersionAdded",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "domainId",
                    "type": "uint256"
                }
            ],
            "name": "DomainAdded",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "domainId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "bool",
                    "name": "deprecated",
                    "type": "bool"
                }
            ],
            "name": "DomainDeprecated",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "domainId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "string",
                    "name": "metadata",
                    "type": "string"
                }
            ],
            "name": "DomainMetadata",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "expenditureId",
                    "type": "uint256"
                }
            ],
            "name": "ExpenditureAdded",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "expenditureId",
                    "type": "uint256"
                }
            ],
            "name": "ExpenditureCancelled",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "expenditureId",
                    "type": "uint256"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "slot",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "claimDelay",
                    "type": "uint256"
                }
            ],
            "name": "ExpenditureClaimDelaySet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "expenditureId",
                    "type": "uint256"
                }
            ],
            "name": "ExpenditureFinalized",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "globalClaimDelay",
                    "type": "uint256"
                }
            ],
            "name": "ExpenditureGlobalClaimDelaySet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "expenditureId",
                    "type": "uint256"
                }
            ],
            "name": "ExpenditureLocked",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "expenditureId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "string",
                    "name": "metadata",
                    "type": "string"
                }
            ],
            "name": "ExpenditureMetadataSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "expenditureId",
                    "type": "uint256"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "slot",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "int256",
                    "name": "payoutModifier",
                    "type": "int256"
                }
            ],
            "name": "ExpenditurePayoutModifierSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "expenditureId",
                    "type": "uint256"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "slot",
                    "type": "uint256"
                },
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "amount",
                    "type": "uint256"
                }
            ],
            "name": "ExpenditurePayoutSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "expenditureId",
                    "type": "uint256"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "slot",
                    "type": "uint256"
                },
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "recipient",
                    "type": "address"
                }
            ],
            "name": "ExpenditureRecipientSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "expenditureId",
                    "type": "uint256"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "slot",
                    "type": "uint256"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "skillId",
                    "type": "uint256"
                }
            ],
            "name": "ExpenditureSkillSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "expenditureId",
                    "type": "uint256"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "storageSlot",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "bool[]",
                    "name": "mask",
                    "type": "bool[]"
                },
                {
                    "indexed": false,
                    "internalType": "bytes32[]",
                    "name": "keys",
                    "type": "bytes32[]"
                },
                {
                    "indexed": false,
                    "internalType": "bytes32",
                    "name": "value",
                    "type": "bytes32"
                }
            ],
            "name": "ExpenditureStateChanged",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "expenditureId",
                    "type": "uint256"
                },
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "owner",
                    "type": "address"
                }
            ],
            "name": "ExpenditureTransferred",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "bytes32",
                    "name": "extensionId",
                    "type": "bytes32"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "version",
                    "type": "uint256"
                }
            ],
            "name": "ExtensionAddedToNetwork",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "bytes32",
                    "name": "extensionId",
                    "type": "bytes32"
                },
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "colony",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "bool",
                    "name": "deprecated",
                    "type": "bool"
                }
            ],
            "name": "ExtensionDeprecated",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "bytes32",
                    "name": "extensionId",
                    "type": "bytes32"
                },
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "colony",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "version",
                    "type": "uint256"
                }
            ],
            "name": "ExtensionInstalled",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "bytes32",
                    "name": "extensionId",
                    "type": "bytes32"
                },
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "colony",
                    "type": "address"
                }
            ],
            "name": "ExtensionUninstalled",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "bytes32",
                    "name": "extensionId",
                    "type": "bytes32"
                },
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "colony",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "version",
                    "type": "uint256"
                }
            ],
            "name": "ExtensionUpgraded",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "fundingPotId",
                    "type": "uint256"
                }
            ],
            "name": "FundingPotAdded",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "localSkillId",
                    "type": "uint256"
                }
            ],
            "name": "LocalSkillAdded",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "localSkillId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "bool",
                    "name": "deprecated",
                    "type": "bool"
                }
            ],
            "name": "LocalSkillDeprecated",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "authority",
                    "type": "address"
                }
            ],
            "name": "LogSetAuthority",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "owner",
                    "type": "address"
                }
            ],
            "name": "LogSetOwner",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "metaColony",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "rootSkillId",
                    "type": "uint256"
                }
            ],
            "name": "MetaColonyCreated",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "miningCycleResolver",
                    "type": "address"
                }
            ],
            "name": "MiningCycleResolverSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "feeInverse",
                    "type": "uint256"
                }
            ],
            "name": "NetworkFeeInverseSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "paymentId",
                    "type": "uint256"
                }
            ],
            "name": "PaymentAdded",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "paymentId",
                    "type": "uint256"
                }
            ],
            "name": "PaymentFinalized",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "paymentId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "amount",
                    "type": "uint256"
                }
            ],
            "name": "PaymentPayoutSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "paymentId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "recipient",
                    "type": "address"
                }
            ],
            "name": "PaymentRecipientSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "paymentId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "skillId",
                    "type": "uint256"
                }
            ],
            "name": "PaymentSkillSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "fundingPotId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "amount",
                    "type": "uint256"
                }
            ],
            "name": "PayoutClaimed",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "ens",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "bytes32",
                    "name": "rootNode",
                    "type": "bytes32"
                }
            ],
            "name": "RegistrarInitialised",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "miner",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "tokensLost",
                    "type": "uint256"
                }
            ],
            "name": "ReputationMinerPenalised",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "bytes32",
                    "name": "hash",
                    "type": "bytes32"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "nLeaves",
                    "type": "uint256"
                }
            ],
            "name": "ReputationMiningCycleComplete",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "inactiveReputationMiningCycle",
                    "type": "address"
                }
            ],
            "name": "ReputationMiningInitialised",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "amount",
                    "type": "uint256"
                }
            ],
            "name": "ReputationMiningRewardSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "bytes32",
                    "name": "newHash",
                    "type": "bytes32"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "newNLeaves",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "address[]",
                    "name": "stakers",
                    "type": "address[]"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "reward",
                    "type": "uint256"
                }
            ],
            "name": "ReputationRootHashSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "rewardPayoutId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "user",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "fee",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "rewardRemainder",
                    "type": "uint256"
                }
            ],
            "name": "RewardPayoutClaimed",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "rewardPayoutId",
                    "type": "uint256"
                }
            ],
            "name": "RewardPayoutCycleEnded",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "rewardPayoutId",
                    "type": "uint256"
                }
            ],
            "name": "RewardPayoutCycleStarted",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "skillId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "parentSkillId",
                    "type": "uint256"
                }
            ],
            "name": "SkillAdded",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "taskId",
                    "type": "uint256"
                }
            ],
            "name": "TaskAdded",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "taskId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "bytes32",
                    "name": "specificationHash",
                    "type": "bytes32"
                }
            ],
            "name": "TaskBriefSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "taskId",
                    "type": "uint256"
                }
            ],
            "name": "TaskCanceled",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address[]",
                    "name": "reviewerAddresses",
                    "type": "address[]"
                }
            ],
            "name": "TaskChangedViaSignatures",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "taskId",
                    "type": "uint256"
                }
            ],
            "name": "TaskCompleted",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "taskId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "bytes32",
                    "name": "deliverableHash",
                    "type": "bytes32"
                }
            ],
            "name": "TaskDeliverableSubmitted",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "taskId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "dueDate",
                    "type": "uint256"
                }
            ],
            "name": "TaskDueDateSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "taskId",
                    "type": "uint256"
                }
            ],
            "name": "TaskFinalized",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "taskId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "enum ColonyDataTypes.TaskRole",
                    "name": "role",
                    "type": "uint8"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "amount",
                    "type": "uint256"
                }
            ],
            "name": "TaskPayoutSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "taskId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "enum ColonyDataTypes.TaskRole",
                    "name": "role",
                    "type": "uint8"
                },
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "user",
                    "type": "address"
                }
            ],
            "name": "TaskRoleUserSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "taskId",
                    "type": "uint256"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "skillId",
                    "type": "uint256"
                }
            ],
            "name": "TaskSkillSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "uint256",
                    "name": "taskId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "enum ColonyDataTypes.TaskRole",
                    "name": "role",
                    "type": "uint8"
                },
                {
                    "indexed": false,
                    "internalType": "uint8",
                    "name": "rating",
                    "type": "uint8"
                }
            ],
            "name": "TaskWorkRatingRevealed",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "tokenAuthorityAddress",
                    "type": "address"
                }
            ],
            "name": "TokenAuthorityDeployed",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "tokenAddress",
                    "type": "address"
                }
            ],
            "name": "TokenDeployed",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "tokenLocking",
                    "type": "address"
                }
            ],
            "name": "TokenLockingAddressSet",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                }
            ],
            "name": "TokenUnlocked",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "bool",
                    "name": "status",
                    "type": "bool"
                }
            ],
            "name": "TokenWhitelisted",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "amount",
                    "type": "uint256"
                }
            ],
            "name": "TokensBurned",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "agent",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "who",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "amount",
                    "type": "uint256"
                }
            ],
            "name": "TokensMinted",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "user",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "bytes32",
                    "name": "label",
                    "type": "bytes32"
                }
            ],
            "name": "UserLabelRegistered",
            "type": "event"
        },
        {
            "inputs": [],
            "name": "authority",
            "outputs": [
                {
                    "internalType": "contract DSAuthority",
                    "name": "",
                    "type": "address"
                }
            ],
            "stateMutability": "view",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "",
                    "type": "uint256"
                }
            ],
            "name": "domains",
            "outputs": [
                {
                    "internalType": "uint256",
                    "name": "skillId",
                    "type": "uint256"
                },
                {
                    "internalType": "uint256",
                    "name": "fundingPotId",
                    "type": "uint256"
                }
            ],
            "stateMutability": "view",
            "type": "function"
        },
        {
            "inputs": [],
            "name": "owner",
            "outputs": [
                {
                    "internalType": "address",
                    "name": "",
                    "type": "address"
                }
            ],
            "stateMutability": "view",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "contract DSAuthority",
                    "name": "authority_",
                    "type": "address"
                }
            ],
            "name": "setAuthority",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "owner_",
                    "type": "address"
                }
            ],
            "name": "setOwner",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "",
                    "type": "uint256"
                }
            ],
            "name": "taskWorkRatings",
            "outputs": [
                {
                    "internalType": "uint256",
                    "name": "count",
                    "type": "uint256"
                },
                {
                    "internalType": "uint256",
                    "name": "timestamp",
                    "type": "uint256"
                }
            ],
            "stateMutability": "view",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_permissionDomainId",
                    "type": "uint256"
                },
                {
                    "internalType": "uint256",
                    "name": "_childSkillIndex",
                    "type": "uint256"
                },
                {
                    "internalType": "bytes32",
                    "name": "_specificationHash",
                    "type": "bytes32"
                },
                {
                    "internalType": "uint256",
                    "name": "_domainId",
                    "type": "uint256"
                },
                {
                    "internalType": "uint256",
                    "name": "_skillId",
                    "type": "uint256"
                },
                {
                    "internalType": "uint256",
                    "name": "_dueDate",
                    "type": "uint256"
                }
            ],
            "name": "makeTask",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [],
            "name": "getTaskCount",
            "outputs": [
                {
                    "internalType": "uint256",
                    "name": "",
                    "type": "uint256"
                }
            ],
            "stateMutability": "view",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                }
            ],
            "name": "getTaskChangeNonce",
            "outputs": [
                {
                    "internalType": "uint256",
                    "name": "",
                    "type": "uint256"
                }
            ],
            "stateMutability": "view",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint8[]",
                    "name": "_sigV",
                    "type": "uint8[]"
                },
                {
                    "internalType": "bytes32[]",
                    "name": "_sigR",
                    "type": "bytes32[]"
                },
                {
                    "internalType": "bytes32[]",
                    "name": "_sigS",
                    "type": "bytes32[]"
                },
                {
                    "internalType": "uint8[]",
                    "name": "_mode",
                    "type": "uint8[]"
                },
                {
                    "internalType": "uint256",
                    "name": "_value",
                    "type": "uint256"
                },
                {
                    "internalType": "bytes",
                    "name": "_data",
                    "type": "bytes"
                }
            ],
            "name": "executeTaskChange",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint8[]",
                    "name": "_sigV",
                    "type": "uint8[]"
                },
                {
                    "internalType": "bytes32[]",
                    "name": "_sigR",
                    "type": "bytes32[]"
                },
                {
                    "internalType": "bytes32[]",
                    "name": "_sigS",
                    "type": "bytes32[]"
                },
                {
                    "internalType": "uint8[]",
                    "name": "_mode",
                    "type": "uint8[]"
                },
                {
                    "internalType": "uint256",
                    "name": "_value",
                    "type": "uint256"
                },
                {
                    "internalType": "bytes",
                    "name": "_data",
                    "type": "bytes"
                }
            ],
            "name": "executeTaskRoleAssignment",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                },
                {
                    "internalType": "enum ColonyDataTypes.TaskRole",
                    "name": "_role",
                    "type": "uint8"
                },
                {
                    "internalType": "bytes32",
                    "name": "_ratingSecret",
                    "type": "bytes32"
                }
            ],
            "name": "submitTaskWorkRating",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                },
                {
                    "internalType": "enum ColonyDataTypes.TaskRole",
                    "name": "_role",
                    "type": "uint8"
                },
                {
                    "internalType": "uint8",
                    "name": "_rating",
                    "type": "uint8"
                },
                {
                    "internalType": "bytes32",
                    "name": "_salt",
                    "type": "bytes32"
                }
            ],
            "name": "revealTaskWorkRating",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "bytes32",
                    "name": "_salt",
                    "type": "bytes32"
                },
                {
                    "internalType": "uint256",
                    "name": "_value",
                    "type": "uint256"
                }
            ],
            "name": "generateSecret",
            "outputs": [
                {
                    "internalType": "bytes32",
                    "name": "",
                    "type": "bytes32"
                }
            ],
            "stateMutability": "pure",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                }
            ],
            "name": "getTaskWorkRatingSecretsInfo",
            "outputs": [
                {
                    "internalType": "uint256",
                    "name": "",
                    "type": "uint256"
                },
                {
                    "internalType": "uint256",
                    "name": "",
                    "type": "uint256"
                }
            ],
            "stateMutability": "view",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                },
                {
                    "internalType": "uint8",
                    "name": "_role",
                    "type": "uint8"
                }
            ],
            "name": "getTaskWorkRatingSecret",
            "outputs": [
                {
                    "internalType": "bytes32",
                    "name": "",
                    "type": "bytes32"
                }
            ],
            "stateMutability": "view",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                },
                {
                    "internalType": "address payable",
                    "name": "_user",
                    "type": "address"
                },
                {
                    "internalType": "uint256",
                    "name": "_permissionDomainId",
                    "type": "uint256"
                },
                {
                    "internalType": "uint256",
                    "name": "_childSkillIndex",
                    "type": "uint256"
                }
            ],
            "name": "setTaskManagerRole",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                },
                {
                    "internalType": "address payable",
                    "name": "_user",
                    "type": "address"
                }
            ],
            "name": "setTaskEvaluatorRole",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                },
                {
                    "internalType": "address payable",
                    "name": "_user",
                    "type": "address"
                }
            ],
            "name": "setTaskWorkerRole",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                }
            ],
            "name": "removeTaskEvaluatorRole",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                }
            ],
            "name": "removeTaskWorkerRole",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                },
                {
                    "internalType": "uint256",
                    "name": "_skillId",
                    "type": "uint256"
                }
            ],
            "name": "setTaskSkill",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                },
                {
                    "internalType": "bytes32",
                    "name": "_specificationHash",
                    "type": "bytes32"
                }
            ],
            "name": "setTaskBrief",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                },
                {
                    "internalType": "uint256",
                    "name": "_dueDate",
                    "type": "uint256"
                }
            ],
            "name": "setTaskDueDate",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                },
                {
                    "internalType": "address",
                    "name": "_token",
                    "type": "address"
                },
                {
                    "internalType": "uint256",
                    "name": "_managerAmount",
                    "type": "uint256"
                },
                {
                    "internalType": "uint256",
                    "name": "_evaluatorAmount",
                    "type": "uint256"
                },
                {
                    "internalType": "uint256",
                    "name": "_workerAmount",
                    "type": "uint256"
                }
            ],
            "name": "setAllTaskPayouts",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                },
                {
                    "internalType": "bytes32",
                    "name": "_deliverableHash",
                    "type": "bytes32"
                }
            ],
            "name": "submitTaskDeliverable",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                },
                {
                    "internalType": "bytes32",
                    "name": "_deliverableHash",
                    "type": "bytes32"
                },
                {
                    "internalType": "bytes32",
                    "name": "_ratingSecret",
                    "type": "bytes32"
                }
            ],
            "name": "submitTaskDeliverableAndRating",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                }
            ],
            "name": "completeTask",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                }
            ],
            "name": "finalizeTask",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                }
            ],
            "name": "cancelTask",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                }
            ],
            "name": "getTask",
            "outputs": [
                {
                    "internalType": "bytes32",
                    "name": "",
                    "type": "bytes32"
                },
                {
                    "internalType": "bytes32",
                    "name": "",
                    "type": "bytes32"
                },
                {
                    "internalType": "enum ColonyDataTypes.TaskStatus",
                    "name": "",
                    "type": "uint8"
                },
                {
                    "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[]"
                }
            ],
            "stateMutability": "view",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_id",
                    "type": "uint256"
                },
                {
                    "internalType": "uint8",
                    "name": "_role",
                    "type": "uint8"
                }
            ],
            "name": "getTaskRole",
            "outputs": [
                {
                    "components": [
                        {
                            "internalType": "address payable",
                            "name": "user",
                            "type": "address"
                        },
                        {
                            "internalType": "bool",
                            "name": "rateFail",
                            "type": "bool"
                        },
                        {
                            "internalType": "enum ColonyDataTypes.TaskRatings",
                            "name": "rating",
                            "type": "uint8"
                        }
                    ],
                    "internalType": "struct ColonyDataTypes.Role",
                    "name": "role",
                    "type": "tuple"
                }
            ],
            "stateMutability": "view",
            "type": "function"
        }
    ],
    "devdoc": {
        "events": {
            "Annotation(address,bytes32,string)": {
                "params": {
                    "agent": "Agent emitting the annotation",
                    "metadata": "IPFS hash of the metadata",
                    "txHash": "Hash of transaction being annotated (0x0 for current tx)"
                }
            },
            "ArbitraryReputationUpdate(address,address,uint256,int256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "amount": "The (maximum) amount the address is having its reputation changed by",
                    "skillId": "The id of the skill the user is having their reputation changed in",
                    "user": "The address that is having its reputation changed"
                }
            },
            "AuctionCreated(address,address,uint256)": {
                "details": "Emitted from `IColonyNetwork.startTokenAuction` function",
                "params": {
                    "auction": "Address of the created auction contract",
                    "quantity": "Quantity of `token` to auction",
                    "token": "Address of the token for auction"
                }
            },
            "ColonyAdded(uint256,address,address)": {
                "details": "Emitted from `IColonyNetwork.createColony` function",
                "params": {
                    "colonyAddress": "The colony address in the network",
                    "colonyId": "The colony id in the network",
                    "token": "Address of the associated colony token"
                }
            },
            "ColonyBootstrapped(address,address[],int256[])": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "amounts": "Amounts of reputation/tokens for every address",
                    "users": "Array of address bootstraped with reputation"
                }
            },
            "ColonyFundsClaimed(address,address,uint256,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "fee": "The fee deducted for rewards",
                    "payoutRemainder": "The remaining funds moved to the top-level domain pot",
                    "token": "The token address"
                }
            },
            "ColonyFundsMovedBetweenFundingPots(address,uint256,uint256,uint256,address)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "amount": "The amount that was transferred",
                    "fromPot": "The source funding pot",
                    "toPot": "The targer funding pot",
                    "token": "The token address being transferred"
                }
            },
            "ColonyInitialised(address,address,address)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "colonyNetwork": "The Colony Network address",
                    "token": "The Colony Token address"
                }
            },
            "ColonyLabelRegistered(address,bytes32)": {
                "params": {
                    "colony": "The colony address registered",
                    "label": "The label registered"
                }
            },
            "ColonyMetadata(address,string)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "metadata": "IPFS hash of the metadata"
                }
            },
            "ColonyMetadataDelta(address,string)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "metadata": "IPFS hash of the delta"
                }
            },
            "ColonyNetworkInitialised(address)": {
                "params": {
                    "resolver": "The Resolver contract address used by the Colony version 1"
                }
            },
            "ColonyRewardInverseSet(address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "rewardInverse": "The reward inverse value"
                }
            },
            "ColonyRoleSet(address,address,uint256,uint8,bool)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "domainId": "The domainId of the role",
                    "role": "The role being granted/revoked",
                    "setTo": "A boolean representing the action -- granted (`true`) or revoked (`false`)",
                    "user": "The address of the user being affected"
                }
            },
            "ColonyUpgraded(address,uint256,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "newVersion": "The new colony version upgraded to",
                    "oldVersion": "The previous colony version"
                }
            },
            "ColonyVersionAdded(uint256,address)": {
                "params": {
                    "resolver": "The new colony contract resolver contract instance",
                    "version": "The new int colony version, e.g. 2, 3, 4, etc"
                }
            },
            "DomainAdded(address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "domainId": "Id of the newly-created Domain"
                }
            },
            "DomainDeprecated(address,uint256,bool)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "deprecated": "Whether or not the domain is deprecated",
                    "domainId": "Id of the domain"
                }
            },
            "DomainMetadata(address,uint256,string)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "domainId": "Id of the newly-created Domain",
                    "metadata": "IPFS hash of the metadata"
                }
            },
            "ExpenditureAdded(address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "expenditureId": "The newly added expenditure id"
                }
            },
            "ExpenditureCancelled(address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "expenditureId": "Id of the cancelled expenditure"
                }
            },
            "ExpenditureClaimDelaySet(address,uint256,uint256,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "claimDelay": "Additional amount of time to hold the funds",
                    "expenditureId": "Id of the expenditure",
                    "slot": "Expenditure slot being changed"
                }
            },
            "ExpenditureFinalized(address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "expenditureId": "Id of the finalized expenditure"
                }
            },
            "ExpenditureGlobalClaimDelaySet(address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "globalClaimDelay": "The new default global claim delay"
                }
            },
            "ExpenditureLocked(address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "expenditureId": "Id of the locked expenditure"
                }
            },
            "ExpenditureMetadataSet(address,uint256,string)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "expenditureId": "Id of the expenditure",
                    "metadata": "IPFS hash of the metadata"
                }
            },
            "ExpenditurePayoutModifierSet(address,uint256,uint256,int256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "expenditureId": "Id of the expenditure",
                    "payoutModifier": "The payout modifier for the slot",
                    "slot": "Expenditure slot being changed"
                }
            },
            "ExpenditurePayoutSet(address,uint256,uint256,address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "amount": "Amount of the payout funding",
                    "expenditureId": "Id of the expenditure",
                    "slot": "Expenditure slot of the payout being changed",
                    "token": "Token of the payout funding"
                }
            },
            "ExpenditureRecipientSet(address,uint256,uint256,address)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "expenditureId": "Id of the expenditure",
                    "recipient": "Address of the recipient",
                    "slot": "Expenditure slot of the recipient"
                }
            },
            "ExpenditureSkillSet(address,uint256,uint256,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "expenditureId": "Id of the expenditure",
                    "skillId": "Id of the set skill",
                    "slot": "Slot receiving the skill"
                }
            },
            "ExpenditureStateChanged(address,uint256,uint256,bool[],bytes32[],bytes32)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "expenditureId": "Id of the expenditure",
                    "keys": "Values used to construct final slot via mapping or array operations",
                    "mask": "Mask indicating whether we are making mapping or array operations",
                    "storageSlot": "Initial storage slot being set (expenditures or expenditureSlots)",
                    "value": "Value being set in the slot"
                }
            },
            "ExpenditureTransferred(address,uint256,address)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "expenditureId": "The expenditure id",
                    "owner": "The new owner of the expenditure"
                }
            },
            "ExtensionAddedToNetwork(bytes32,uint256)": {
                "params": {
                    "extensionId": "The identifier for the extension",
                    "version": "The version of the extension"
                }
            },
            "ExtensionDeprecated(bytes32,address,bool)": {
                "params": {
                    "colony": "The address of the colony",
                    "deprecated": "Whether the extension is deprecated or not",
                    "extensionId": "The identifier for the extension"
                }
            },
            "ExtensionInstalled(bytes32,address,uint256)": {
                "params": {
                    "colony": "The address of the colony",
                    "extensionId": "The identifier for the extension",
                    "version": "The version of the extension"
                }
            },
            "ExtensionUninstalled(bytes32,address)": {
                "params": {
                    "colony": "The address of the colony",
                    "extensionId": "The identifier for the extension"
                }
            },
            "ExtensionUpgraded(bytes32,address,uint256)": {
                "params": {
                    "colony": "The address of the colony",
                    "extensionId": "The identifier for the extension",
                    "version": "The new version of the extension"
                }
            },
            "FundingPotAdded(uint256)": {
                "params": {
                    "fundingPotId": "Id of the newly-created FundingPot"
                }
            },
            "LocalSkillAdded(address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "localSkillId": "Id of the newly-created local skill"
                }
            },
            "LocalSkillDeprecated(address,uint256,bool)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "deprecated": "Deprecation status of the local skill",
                    "localSkillId": "Id of the newly-created local skill"
                }
            },
            "MetaColonyCreated(address,address,uint256)": {
                "params": {
                    "metaColony": "Address of the MetaColony instance (i.e. EtherRouter)",
                    "rootSkillId": "Id of the root skill of the global skills tree, normally this is 2 Note that the speciat mining skill is created at rootSkillId + 1, so normally this is 3 Skill id 1 is normally the local skill associate with meta colony domain 1",
                    "token": "Address of the associated CLNY token"
                }
            },
            "MiningCycleResolverSet(address)": {
                "params": {
                    "miningCycleResolver": "Resolver address for the ReputationMiningCycle contract"
                }
            },
            "NetworkFeeInverseSet(uint256)": {
                "params": {
                    "feeInverse": "The network fee inverse value"
                }
            },
            "PaymentAdded(address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "paymentId": "The newly added payment id"
                }
            },
            "PaymentFinalized(address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "paymentId": "Id of the payment"
                }
            },
            "PaymentPayoutSet(address,uint256,address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "amount": "Amount of token to be paid out",
                    "paymentId": "Id of the payment",
                    "token": "Token of the payout"
                }
            },
            "PaymentRecipientSet(address,uint256,address)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "paymentId": "Id of the payment",
                    "recipient": "Address to receive the payout"
                }
            },
            "PaymentSkillSet(address,uint256,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "paymentId": "Id of the payment",
                    "skillId": "Token of the payout"
                }
            },
            "PayoutClaimed(address,uint256,address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "amount": "Amount of the payout claimed, after network fee was deducted",
                    "fundingPotId": "Id of the funding pot where payout comes from",
                    "token": "Token of the payout claim"
                }
            },
            "RegistrarInitialised(address,bytes32)": {
                "params": {
                    "ens": "Address of ENS registrar",
                    "rootNode": "Namehash of the root node for the domain"
                }
            },
            "ReputationMiningCycleComplete(bytes32,uint256)": {
                "params": {
                    "hash": "The root hash of the newly accepted reputation state",
                    "nLeaves": "The number of leaves in the reputation state"
                }
            },
            "ReputationMiningInitialised(address)": {
                "params": {
                    "inactiveReputationMiningCycle": "Address of the newly created ReputationMiningCycle used in logging reputation changes"
                }
            },
            "ReputationMiningRewardSet(uint256)": {
                "params": {
                    "amount": "Amount of the reward"
                }
            },
            "ReputationRootHashSet(bytes32,uint256,address[],uint256)": {
                "params": {
                    "newHash": "The reputation root hash",
                    "newNLeaves": "The updated leaves count value",
                    "reward": "Amount of CLNY distributed as reward to miners",
                    "stakers": "Array of users who submitted or backed the hash accepted"
                }
            },
            "RewardPayoutClaimed(uint256,address,uint256,uint256)": {
                "params": {
                    "fee": "The fee deducted from payout",
                    "rewardPayoutId": "The reward payout cycle id",
                    "rewardRemainder": "The remaining reward amount paid out to user",
                    "user": "The user address who received the reward payout"
                }
            },
            "RewardPayoutCycleEnded(address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "rewardPayoutId": "The reward payout cycle id"
                }
            },
            "RewardPayoutCycleStarted(address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "rewardPayoutId": "The reward payout cycle id"
                }
            },
            "SkillAdded(uint256,uint256)": {
                "details": "Emitted from `IColonyNetwork.addSkill` function",
                "params": {
                    "parentSkillId": "The id of the parent skill under which this new skill is added",
                    "skillId": "The skill id"
                }
            },
            "TaskAdded(address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "taskId": "The newly added task id"
                }
            },
            "TaskBriefSet(uint256,bytes32)": {
                "params": {
                    "specificationHash": "New specification hash of the task",
                    "taskId": "Id of the task"
                }
            },
            "TaskCanceled(uint256)": {
                "params": {
                    "taskId": "Id of the canceled task"
                }
            },
            "TaskChangedViaSignatures(address[])": {
                "params": {
                    "reviewerAddresses": "Array of addresses that signed off this change."
                }
            },
            "TaskCompleted(address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "taskId": "The id of the task being completed"
                }
            },
            "TaskDeliverableSubmitted(address,uint256,bytes32)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "deliverableHash": "Hash of the work performed",
                    "taskId": "Id of the task"
                }
            },
            "TaskDueDateSet(uint256,uint256)": {
                "params": {
                    "dueDate": "New due date of the task",
                    "taskId": "Id of the task"
                }
            },
            "TaskFinalized(address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "taskId": "Id of the finalized task"
                }
            },
            "TaskPayoutSet(uint256,uint8,address,uint256)": {
                "params": {
                    "amount": "Amount of the payout funding",
                    "role": "Task role whose payout is being changed",
                    "taskId": "Id of the task",
                    "token": "Token of the payout funding"
                }
            },
            "TaskRoleUserSet(uint256,uint8,address)": {
                "params": {
                    "role": "Role of the user",
                    "taskId": "Id of the task",
                    "user": "User that fulfills the designated role"
                }
            },
            "TaskSkillSet(uint256,uint256)": {
                "params": {
                    "skillId": "New skill id of the task",
                    "taskId": "Id of the task"
                }
            },
            "TaskWorkRatingRevealed(address,uint256,uint8,uint8)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "rating": "Rating the role received",
                    "role": "Role that got rated",
                    "taskId": "Id of the task"
                }
            },
            "TokenAuthorityDeployed(address)": {
                "params": {
                    "tokenAuthorityAddress": "The address of the token authority deployed"
                }
            },
            "TokenDeployed(address)": {
                "params": {
                    "tokenAddress": "The address of the token deployed"
                }
            },
            "TokenLockingAddressSet(address)": {
                "params": {
                    "tokenLocking": "Address of the TokenLocking contract"
                }
            },
            "TokenUnlocked(address)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event"
                }
            },
            "TokenWhitelisted(address,bool)": {
                "params": {
                    "status": "The whitelist status",
                    "token": "The token being set"
                }
            },
            "TokensBurned(address,address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "token": "the amount of the token being burned"
                }
            },
            "TokensMinted(address,address,uint256)": {
                "params": {
                    "agent": "The address that is responsible for triggering this event",
                    "amount": "The amount of tokens being awarded",
                    "who": "The address being awarded the tokens"
                }
            },
            "UserLabelRegistered(address,bytes32)": {
                "params": {
                    "label": "The label registered",
                    "user": "The user address registered"
                }
            }
        },
        "kind": "dev",
        "methods": {},
        "version": 1
    },
    "userdoc": {
        "events": {
            "Annotation(address,bytes32,string)": {
                "notice": "Emit a metadata string for a transaction"
            },
            "ArbitraryReputationUpdate(address,address,uint256,int256)": {
                "notice": "Event logged when a manual reputation reward/penalty is made"
            },
            "AuctionCreated(address,address,uint256)": {
                "notice": "Event logged when a new auction is created and started"
            },
            "ColonyAdded(uint256,address,address)": {
                "notice": "Event logged when a new colony is added"
            },
            "ColonyBootstrapped(address,address[],int256[])": {
                "notice": "Event logged when Colony is initially bootstrapped"
            },
            "ColonyFundsClaimed(address,address,uint256,uint256)": {
                "notice": "Event logged when colony funds are moved to the top-level domain pot"
            },
            "ColonyFundsMovedBetweenFundingPots(address,uint256,uint256,uint256,address)": {
                "notice": "Event logged when colony funds, either tokens or ether, has been moved between funding pots"
            },
            "ColonyInitialised(address,address,address)": {
                "notice": "Event logged when Colony is initialised"
            },
            "ColonyLabelRegistered(address,bytes32)": {
                "notice": "Event logged when a \"colony.joincolony.eth\" label is registered"
            },
            "ColonyMetadata(address,string)": {
                "notice": "Event logged when Colony metadata is updated"
            },
            "ColonyMetadataDelta(address,string)": {
                "notice": "Event logged when Colony metadata is updated via a delta"
            },
            "ColonyNetworkInitialised(address)": {
                "notice": "Event logged when the colony network is intialised. This is only ever emitted once in a network's lifetime"
            },
            "ColonyRewardInverseSet(address,uint256)": {
                "notice": "Event logged when the colony reward inverse is set"
            },
            "ColonyRoleSet(address,address,uint256,uint8,bool)": {
                "notice": "Event logged when a user/domain/role is granted or revoked"
            },
            "ColonyUpgraded(address,uint256,uint256)": {
                "notice": "Event logged when colony is upgraded"
            },
            "ColonyVersionAdded(uint256,address)": {
                "notice": "Event logged when a new colony contract version is set"
            },
            "DomainAdded(address,uint256)": {
                "notice": "Event logged when a new Domain is added"
            },
            "DomainDeprecated(address,uint256,bool)": {
                "notice": "Event logged when domain metadata is updated"
            },
            "DomainMetadata(address,uint256,string)": {
                "notice": "Event logged when domain metadata is updated"
            },
            "ExpenditureAdded(address,uint256)": {
                "notice": "Event logged when a new expenditure is added"
            },
            "ExpenditureCancelled(address,uint256)": {
                "notice": "Event logged when an expenditure has been cancelled"
            },
            "ExpenditureClaimDelaySet(address,uint256,uint256,uint256)": {
                "notice": "Event logged when an expenditure slot claim delay changes"
            },
            "ExpenditureFinalized(address,uint256)": {
                "notice": "Event logged when an expenditure has been finalized"
            },
            "ExpenditureGlobalClaimDelaySet(address,uint256)": {
                "notice": "Event logged when the default global claim delay is updated"
            },
            "ExpenditureLocked(address,uint256)": {
                "notice": "Event logged when an expenditure has been locked"
            },
            "ExpenditureMetadataSet(address,uint256,string)": {
                "notice": "Event logged when expenditure metadata is set"
            },
            "ExpenditurePayoutModifierSet(address,uint256,uint256,int256)": {
                "notice": "Event logged when an expenditure slot payout modifier changes"
            },
            "ExpenditurePayoutSet(address,uint256,uint256,address,uint256)": {
                "notice": "Event logged when an expenditure payout changes"
            },
            "ExpenditureRecipientSet(address,uint256,uint256,address)": {
                "notice": "Event logged when an expenditure's recipient is set"
            },
            "ExpenditureSkillSet(address,uint256,uint256,uint256)": {
                "notice": "Event logged when an expenditure's skill changes"
            },
            "ExpenditureStateChanged(address,uint256,uint256,bool[],bytes32[],bytes32)": {
                "notice": "Event logged when an expenditure slot payout modifier changes"
            },
            "ExpenditureTransferred(address,uint256,address)": {
                "notice": "Event logged when a new expenditure is transferred"
            },
            "ExtensionAddedToNetwork(bytes32,uint256)": {
                "notice": "Event logged when a new extension resolver is added to the network"
            },
            "ExtensionDeprecated(bytes32,address,bool)": {
                "notice": "Event logged when an extension is (un)deprecated in a colony"
            },
            "ExtensionInstalled(bytes32,address,uint256)": {
                "notice": "Event logged when an extension is installed in a colony"
            },
            "ExtensionUninstalled(bytes32,address)": {
                "notice": "Event logged when an extension is uninstalled from a colony"
            },
            "ExtensionUpgraded(bytes32,address,uint256)": {
                "notice": "Event logged when an extension is upgraded in a colony"
            },
            "FundingPotAdded(uint256)": {
                "notice": "Event logged when a new FundingPot is added"
            },
            "LocalSkillAdded(address,uint256)": {
                "notice": "Event logged when a new local skill is added"
            },
            "LocalSkillDeprecated(address,uint256,bool)": {
                "notice": "Event logged when a new local skill is added"
            },
            "MetaColonyCreated(address,address,uint256)": {
                "notice": "Event logged when the MetaColony is created"
            },
            "MiningCycleResolverSet(address)": {
                "notice": "Event logged when the Colony Network ReputationMiningCycleResolver contract address is set"
            },
            "NetworkFeeInverseSet(uint256)": {
                "notice": "Event logged when the network fee inverse is set"
            },
            "PaymentAdded(address,uint256)": {
                "notice": "Event logged when a new payment is added"
            },
            "PaymentFinalized(address,uint256)": {
                "notice": "Event logged when a payment is finalised"
            },
            "PaymentPayoutSet(address,uint256,address,uint256)": {
                "notice": "Event logged when a payment has its payout set"
            },
            "PaymentRecipientSet(address,uint256,address)": {
                "notice": "Event logged when a payment has its recipient set"
            },
            "PaymentSkillSet(address,uint256,uint256)": {
                "notice": "Event logged when a payment has its skill set"
            },
            "PayoutClaimed(address,uint256,address,uint256)": {
                "notice": "Event logged when a payout is claimed, either from a Task or Payment"
            },
            "RegistrarInitialised(address,bytes32)": {
                "notice": "Event logged when the ENS registrar is initialised"
            },
            "ReputationMiningCycleComplete(bytes32,uint256)": {
                "notice": "Event logged when a reputation mining cycle completes"
            },
            "ReputationMiningInitialised(address)": {
                "notice": "Event logged when the Reputation mining process is initialised"
            },
            "ReputationMiningRewardSet(uint256)": {
                "notice": "Event logged when the mining reward is set"
            },
            "ReputationRootHashSet(bytes32,uint256,address[],uint256)": {
                "notice": "Event logged when a new reputation root hash is set by the reputation mining process"
            },
            "RewardPayoutClaimed(uint256,address,uint256,uint256)": {
                "notice": "Event logged when reward payout is claimed"
            },
            "RewardPayoutCycleEnded(address,uint256)": {
                "notice": "Event logged when the reward payout cycle has ended"
            },
            "RewardPayoutCycleStarted(address,uint256)": {
                "notice": "Event logged when a new reward payout cycle has started"
            },
            "SkillAdded(uint256,uint256)": {
                "notice": "Event logged when a new skill is added"
            },
            "TaskAdded(address,uint256)": {
                "notice": "Event logged when a new task is added"
            },
            "TaskBriefSet(uint256,bytes32)": {
                "notice": "Event logged when a task's specification hash changes"
            },
            "TaskCanceled(uint256)": {
                "notice": "Event logged when a task has been canceled"
            },
            "TaskChangedViaSignatures(address[])": {
                "notice": "Event logged when task data is changed via signed messages by those involved"
            },
            "TaskCompleted(address,uint256)": {
                "notice": "Event logged when a task has been completed. This is either because the dueDate has passed and the manager closed the task, or the worker has submitted the deliverable. In the latter case, TaskDeliverableSubmitted will also be emitted."
            },
            "TaskDeliverableSubmitted(address,uint256,bytes32)": {
                "notice": "Event logged when a deliverable has been submitted for a task"
            },
            "TaskDueDateSet(uint256,uint256)": {
                "notice": "Event logged when a task's due date changes"
            },
            "TaskFinalized(address,uint256)": {
                "notice": "Event logged when a task has been finalized"
            },
            "TaskPayoutSet(uint256,uint8,address,uint256)": {
                "notice": "Event logged when a task payout changes"
            },
            "TaskRoleUserSet(uint256,uint8,address)": {
                "notice": "Event logged when a task's role user changes"
            },
            "TaskSkillSet(uint256,uint256)": {
                "notice": "Event logged when a task's skill changes"
            },
            "TaskWorkRatingRevealed(address,uint256,uint8,uint8)": {
                "notice": "Event logged when the rating of a role was revealed"
            },
            "TokenAuthorityDeployed(address)": {
                "notice": "Event logged when a token authority is deployed via transaction through the colony network"
            },
            "TokenDeployed(address)": {
                "notice": "Event logged when a token is deployed via transaction through the colony network"
            },
            "TokenLockingAddressSet(address)": {
                "notice": "Event logged when the Colony Network TokenLocking contract address is set"
            },
            "TokenUnlocked(address)": {
                "notice": "Event emitted when the colony unlocks its native token through the provided function"
            },
            "TokenWhitelisted(address,bool)": {
                "notice": "Event logged when the payout whitelist is updated"
            },
            "TokensBurned(address,address,uint256)": {
                "notice": "Event logged when the colony burns tokens"
            },
            "TokensMinted(address,address,uint256)": {
                "notice": "Event logged when tokens are minted"
            },
            "UserLabelRegistered(address,bytes32)": {
                "notice": "Event logged when a \"user.joincolony.eth\" label is registered"
            }
        },
        "kind": "user",
        "methods": {},
        "version": 1
    }
}