{
    "contractName": "ColonyNetworkDataTypes",
    "abi": [
        {
            "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": 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": "resolver",
                    "type": "address"
                }
            ],
            "name": "ColonyNetworkInitialised",
            "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": 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": "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": "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": "skillId",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "parentSkillId",
                    "type": "uint256"
                }
            ],
            "name": "SkillAdded",
            "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": "token",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "bool",
                    "name": "status",
                    "type": "bool"
                }
            ],
            "name": "TokenWhitelisted",
            "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"
        }
    ],
    "devdoc": {
        "events": {
            "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"
                }
            },
            "ColonyLabelRegistered(address,bytes32)": {
                "params": {
                    "colony": "The colony address registered",
                    "label": "The label registered"
                }
            },
            "ColonyNetworkInitialised(address)": {
                "params": {
                    "resolver": "The Resolver contract address used by the Colony version 1"
                }
            },
            "ColonyVersionAdded(uint256,address)": {
                "params": {
                    "resolver": "The new colony contract resolver contract instance",
                    "version": "The new int colony version, e.g. 2, 3, 4, etc"
                }
            },
            "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"
                }
            },
            "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"
                }
            },
            "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"
                }
            },
            "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"
                }
            },
            "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"
                }
            },
            "TokenWhitelisted(address,bool)": {
                "params": {
                    "status": "The whitelist status",
                    "token": "The token being set"
                }
            },
            "UserLabelRegistered(address,bytes32)": {
                "params": {
                    "label": "The label registered",
                    "user": "The user address registered"
                }
            }
        },
        "kind": "dev",
        "methods": {},
        "version": 1
    },
    "userdoc": {
        "events": {
            "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"
            },
            "ColonyLabelRegistered(address,bytes32)": {
                "notice": "Event logged when a \"colony.joincolony.eth\" label is registered"
            },
            "ColonyNetworkInitialised(address)": {
                "notice": "Event logged when the colony network is intialised. This is only ever emitted once in a network's lifetime"
            },
            "ColonyVersionAdded(uint256,address)": {
                "notice": "Event logged when a new colony contract version is set"
            },
            "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"
            },
            "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"
            },
            "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"
            },
            "SkillAdded(uint256,uint256)": {
                "notice": "Event logged when a new skill is added"
            },
            "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"
            },
            "TokenWhitelisted(address,bool)": {
                "notice": "Event logged when the payout whitelist is updated"
            },
            "UserLabelRegistered(address,bytes32)": {
                "notice": "Event logged when a \"user.joincolony.eth\" label is registered"
            }
        },
        "kind": "user",
        "methods": {},
        "version": 1
    }
}