{
  "contractName": "ControlledMock",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "contract Controller",
          "name": "_controller",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "sender",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        }
      ],
      "name": "EtherReceived",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "bytes32",
          "name": "id",
          "type": "bytes32"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "addr",
          "type": "address"
        }
      ],
      "name": "ModuleCached",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [],
      "name": "OnlyConfigGovernorCalled",
      "type": "event"
    },
    {
      "constant": false,
      "inputs": [
        {
          "internalType": "bytes32[]",
          "name": "_ids",
          "type": "bytes32[]"
        },
        {
          "internalType": "address[]",
          "name": "_addresses",
          "type": "address[]"
        }
      ],
      "name": "cacheModules",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "counter",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "fail",
      "outputs": [],
      "payable": false,
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getController",
      "outputs": [
        {
          "internalType": "contract Controller",
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [],
      "name": "onlyConfigGovernorFn",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [],
      "name": "receiveEther",
      "outputs": [],
      "payable": true,
      "stateMutability": "payable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_counter",
          "type": "uint256"
        }
      ],
      "name": "setCounter",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x608060405234801561001057600080fd5b5060405161078c38038061078c8339818101604052602081101561003357600080fd5b505180610048816001600160e01b0361012e16565b6040518060400160405280601b81526020017f4354445f434f4e54524f4c4c45525f4e4f545f434f4e54524143540000000000815250906101075760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156100cc5781810151838201526020016100b4565b50505050905090810190601f1680156100f95780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600080546001600160a01b0319166001600160a01b039290921691909117905550610151565b60006001600160a01b0382166101465750600061014c565b50803b15155b919050565b61062c806101606000396000f3fe6080604052600436106100605760003560e01c80633018205f146100655780634e112d361461009657806361bc221a146101635780636b1638751461018a5780638bb5d9c31461019f578063a3912ec8146101c9578063a9cc4718146101d1575b600080fd5b34801561007157600080fd5b5061007a6101e6565b604080516001600160a01b039092168252519081900360200190f35b3480156100a257600080fd5b50610161600480360360408110156100b957600080fd5b810190602081018135600160201b8111156100d357600080fd5b8201836020820111156100e557600080fd5b803590602001918460208302840111600160201b8311171561010657600080fd5b919390929091602081019035600160201b81111561012357600080fd5b82018360208201111561013557600080fd5b803590602001918460208302840111600160201b8311171561015657600080fd5b5090925090506101f5565b005b34801561016f57600080fd5b50610178610427565b60408051918252519081900360200190f35b34801561019657600080fd5b5061016161042d565b3480156101ab57600080fd5b50610161600480360360208110156101c257600080fd5b50356104f7565b6101616104fc565b3480156101dd57600080fd5b50610161610538565b6000546001600160a01b031690565b60005460408051808201909152601981527821aa222fa9a2a72222a92fa727aa2fa1a7a72a2927a62622a960391b6020820152906001600160a01b031633146102bc5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610281578181015183820152602001610269565b50505050905090810190601f1680156102ae5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060408051808201909152601f81527f4354445f494e56414c49445f4d4f44554c45535f43414348455f494e50555400602082015283821461033f5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610281578181015183820152602001610269565b5060005b838110156104205782828281811061035757fe5b905060200201356001600160a01b03166001600087878581811061037757fe5b90506020020135815260200190815260200160002060006101000a8154816001600160a01b0302191690836001600160a01b031602179055507f60bd2091d76fc7f3330a4d5e9fd21180cf5de4b91e9972d2d56f41896c036a408585838181106103dd57fe5b905060200201358484848181106103f057fe5b60408051948552602091820293909301356001600160a01b031690840152508051918290030190a1600101610343565b5050505050565b60025481565b610435610577565b6001600160a01b0316336001600160a01b0316146040518060400160405280601e81526020017f4354445f53454e4445525f4e4f545f434f4e4649475f474f5645524e4f520000815250906104cb5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610281578181015183820152602001610269565b506040517fec12cced0c52bdaa1ec334c6fc090b65e43e9f567461de53c7ac4b791ecffac690600090a1565b600255565b6040805133815234602082015281517f1e57e3bb474320be3d2c77138f75b7c3941292d647f5f9634e33a8e94e0e069b929181900390910190a1565b6040805162461bcd60e51b815260206004820152600f60248201526e10d3d3951493d313115117d1905253608a1b604482015290519081900360640190fd5b60008060009054906101000a90046001600160a01b03166001600160a01b03166397023f816040518163ffffffff1660e01b815260040160206040518083038186803b1580156105c657600080fd5b505afa1580156105da573d6000803e3d6000fd5b505050506040513d60208110156105f057600080fd5b505190509056fea265627a7a7231582019b797a5c8df48391f99fb5b1cbb2e78a6eb505d58404e0252a1af63d854842a64736f6c63430005110032",
  "deployedBytecode": "0x6080604052600436106100605760003560e01c80633018205f146100655780634e112d361461009657806361bc221a146101635780636b1638751461018a5780638bb5d9c31461019f578063a3912ec8146101c9578063a9cc4718146101d1575b600080fd5b34801561007157600080fd5b5061007a6101e6565b604080516001600160a01b039092168252519081900360200190f35b3480156100a257600080fd5b50610161600480360360408110156100b957600080fd5b810190602081018135600160201b8111156100d357600080fd5b8201836020820111156100e557600080fd5b803590602001918460208302840111600160201b8311171561010657600080fd5b919390929091602081019035600160201b81111561012357600080fd5b82018360208201111561013557600080fd5b803590602001918460208302840111600160201b8311171561015657600080fd5b5090925090506101f5565b005b34801561016f57600080fd5b50610178610427565b60408051918252519081900360200190f35b34801561019657600080fd5b5061016161042d565b3480156101ab57600080fd5b50610161600480360360208110156101c257600080fd5b50356104f7565b6101616104fc565b3480156101dd57600080fd5b50610161610538565b6000546001600160a01b031690565b60005460408051808201909152601981527821aa222fa9a2a72222a92fa727aa2fa1a7a72a2927a62622a960391b6020820152906001600160a01b031633146102bc5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610281578181015183820152602001610269565b50505050905090810190601f1680156102ae5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060408051808201909152601f81527f4354445f494e56414c49445f4d4f44554c45535f43414348455f494e50555400602082015283821461033f5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610281578181015183820152602001610269565b5060005b838110156104205782828281811061035757fe5b905060200201356001600160a01b03166001600087878581811061037757fe5b90506020020135815260200190815260200160002060006101000a8154816001600160a01b0302191690836001600160a01b031602179055507f60bd2091d76fc7f3330a4d5e9fd21180cf5de4b91e9972d2d56f41896c036a408585838181106103dd57fe5b905060200201358484848181106103f057fe5b60408051948552602091820293909301356001600160a01b031690840152508051918290030190a1600101610343565b5050505050565b60025481565b610435610577565b6001600160a01b0316336001600160a01b0316146040518060400160405280601e81526020017f4354445f53454e4445525f4e4f545f434f4e4649475f474f5645524e4f520000815250906104cb5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610281578181015183820152602001610269565b506040517fec12cced0c52bdaa1ec334c6fc090b65e43e9f567461de53c7ac4b791ecffac690600090a1565b600255565b6040805133815234602082015281517f1e57e3bb474320be3d2c77138f75b7c3941292d647f5f9634e33a8e94e0e069b929181900390910190a1565b6040805162461bcd60e51b815260206004820152600f60248201526e10d3d3951493d313115117d1905253608a1b604482015290519081900360640190fd5b60008060009054906101000a90046001600160a01b03166001600160a01b03166397023f816040518163ffffffff1660e01b815260040160206040518083038186803b1580156105c657600080fd5b505afa1580156105da573d6000803e3d6000fd5b505050506040513d60208110156105f057600080fd5b505190509056fea265627a7a7231582019b797a5c8df48391f99fb5b1cbb2e78a6eb505d58404e0252a1af63d854842a64736f6c63430005110032",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
