{
  "_format": "hh-sol-artifact-1",
  "contractName": "OwnerManager",
  "sourceName": "lib/safe-contracts/contracts/base/OwnerManager.sol",
  "abi": [
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "AddedOwner",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "threshold",
          "type": "uint256"
        }
      ],
      "name": "ChangedThreshold",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "RemovedOwner",
      "type": "event"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "_threshold",
          "type": "uint256"
        }
      ],
      "name": "addOwnerWithThreshold",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_threshold",
          "type": "uint256"
        }
      ],
      "name": "changeThreshold",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getOwners",
      "outputs": [
        {
          "internalType": "address[]",
          "name": "",
          "type": "address[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getThreshold",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "isOwner",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "prevOwner",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "_threshold",
          "type": "uint256"
        }
      ],
      "name": "removeOwner",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "prevOwner",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "oldOwner",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "swapOwner",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x608060405234801561001057600080fd5b50610b01806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c8063a0e67e2b1161005b578063a0e67e2b146100d2578063e318b52b146100e7578063e75235b8146100fa578063f8dc5dd91461010b57600080fd5b80630d582f13146100825780632f54bf6e14610097578063694e80c3146100bf575b600080fd5b6100956100903660046109b0565b61011e565b005b6100aa6100a536600461090f565b6102b8565b60405190151581526020015b60405180910390f35b6100956100cd3660046109da565b6102f3565b6100da6103c1565b6040516100b691906109f3565b6100956100f5366004610931565b6104b1565b6002546040519081526020016100b6565b610095610119366004610974565b6106f3565b6101266108a2565b6001600160a01b0382161580159061014857506001600160a01b038216600114155b801561015d57506001600160a01b0382163014155b6101965760405162461bcd60e51b8152602060048201526005602482015264475332303360d81b60448201526064015b60405180910390fd5b6001600160a01b0382811660009081526020819052604090205416156101e65760405162461bcd60e51b815260206004820152600560248201526411d4cc8c0d60da1b604482015260640161018d565b600060208190527fada5013122d395ba3c54772283fb069b10426056ef8ca54750cb9bb552a59e7d80546001600160a01b038581168085526040852080549290931673ffffffffffffffffffffffffffffffffffffffff19928316179092556001808552835490911690911790915580549161026183610a6e565b90915550506040516001600160a01b03831681527f9465fa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa7f60b2ea269060200160405180910390a180600254146102b4576102b4816102f3565b5050565b60006001600160a01b0382166001148015906102ed57506001600160a01b038281166000908152602081905260409020541615155b92915050565b6102fb6108a2565b6001548111156103355760405162461bcd60e51b8152602060048201526005602482015264475332303160d81b604482015260640161018d565b60018110156103865760405162461bcd60e51b815260206004820152600560248201527f4753323032000000000000000000000000000000000000000000000000000000604482015260640161018d565b60028190556040518181527f610f7ff2b304ae8903c3de74c60c6ab1f7d6226b3f52c5161905bb5ad4039c939060200160405180910390a150565b6060600060015467ffffffffffffffff8111156103e0576103e0610ab5565b604051908082528060200260200182016040528015610409578160200160208202803683370190505b506001600090815260208190527fada5013122d395ba3c54772283fb069b10426056ef8ca54750cb9bb552a59e7d54919250906001600160a01b03165b6001600160a01b0381166001146104a9578083838151811061046a5761046a610a9f565b6001600160a01b0392831660209182029290920181019190915291811660009081529182905260409091205416816104a181610a6e565b925050610446565b509092915050565b6104b96108a2565b6001600160a01b038116158015906104db57506001600160a01b038116600114155b80156104f057506001600160a01b0381163014155b6105245760405162461bcd60e51b8152602060048201526005602482015264475332303360d81b604482015260640161018d565b6001600160a01b0381811660009081526020819052604090205416156105745760405162461bcd60e51b815260206004820152600560248201526411d4cc8c0d60da1b604482015260640161018d565b6001600160a01b0382161580159061059657506001600160a01b038216600114155b6105ca5760405162461bcd60e51b8152602060048201526005602482015264475332303360d81b604482015260640161018d565b6001600160a01b0383811660009081526020819052604090205481169083161461061e5760405162461bcd60e51b8152602060048201526005602482015264475332303560d81b604482015260640161018d565b6001600160a01b038281166000818152602081815260408083208054878716808652838620805492891673ffffffffffffffffffffffffffffffffffffffff19938416179055968a1685528285208054821690971790965592849052825490941690915591519081527ff8d49fc529812e9a7c5c50e69c20f0dccc0db8fa95c98bc58cc9a4f1c1299eaf910160405180910390a16040516001600160a01b03821681527f9465fa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa7f60b2ea269060200160405180910390a1505050565b6106fb6108a2565b806001805461070a9190610a40565b10156107405760405162461bcd60e51b8152602060048201526005602482015264475332303160d81b604482015260640161018d565b6001600160a01b0382161580159061076257506001600160a01b038216600114155b6107965760405162461bcd60e51b8152602060048201526005602482015264475332303360d81b604482015260640161018d565b6001600160a01b038381166000908152602081905260409020548116908316146107ea5760405162461bcd60e51b8152602060048201526005602482015264475332303560d81b604482015260640161018d565b6001600160a01b038281166000818152602081905260408082208054888616845291832080549290951673ffffffffffffffffffffffffffffffffffffffff19928316179094559181528254909116909155600180549161084a83610a57565b90915550506040516001600160a01b03831681527ff8d49fc529812e9a7c5c50e69c20f0dccc0db8fa95c98bc58cc9a4f1c1299eaf9060200160405180910390a1806002541461089d5761089d816102f3565b505050565b3330146108f15760405162461bcd60e51b815260206004820152600560248201527f4753303331000000000000000000000000000000000000000000000000000000604482015260640161018d565b565b80356001600160a01b038116811461090a57600080fd5b919050565b60006020828403121561092157600080fd5b61092a826108f3565b9392505050565b60008060006060848603121561094657600080fd5b61094f846108f3565b925061095d602085016108f3565b915061096b604085016108f3565b90509250925092565b60008060006060848603121561098957600080fd5b610992846108f3565b92506109a0602085016108f3565b9150604084013590509250925092565b600080604083850312156109c357600080fd5b6109cc836108f3565b946020939093013593505050565b6000602082840312156109ec57600080fd5b5035919050565b6020808252825182820181905260009190848201906040850190845b81811015610a345783516001600160a01b031683529284019291840191600101610a0f565b50909695505050505050565b600082821015610a5257610a52610a89565b500390565b600081610a6657610a66610a89565b506000190190565b6000600019821415610a8257610a82610a89565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fdfea2646970667358221220b6660f423d3c96d0d0669dbb2800e0576cc94f479ebe30dd436a67061ce30dac64736f6c63430008070033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061007d5760003560e01c8063a0e67e2b1161005b578063a0e67e2b146100d2578063e318b52b146100e7578063e75235b8146100fa578063f8dc5dd91461010b57600080fd5b80630d582f13146100825780632f54bf6e14610097578063694e80c3146100bf575b600080fd5b6100956100903660046109b0565b61011e565b005b6100aa6100a536600461090f565b6102b8565b60405190151581526020015b60405180910390f35b6100956100cd3660046109da565b6102f3565b6100da6103c1565b6040516100b691906109f3565b6100956100f5366004610931565b6104b1565b6002546040519081526020016100b6565b610095610119366004610974565b6106f3565b6101266108a2565b6001600160a01b0382161580159061014857506001600160a01b038216600114155b801561015d57506001600160a01b0382163014155b6101965760405162461bcd60e51b8152602060048201526005602482015264475332303360d81b60448201526064015b60405180910390fd5b6001600160a01b0382811660009081526020819052604090205416156101e65760405162461bcd60e51b815260206004820152600560248201526411d4cc8c0d60da1b604482015260640161018d565b600060208190527fada5013122d395ba3c54772283fb069b10426056ef8ca54750cb9bb552a59e7d80546001600160a01b038581168085526040852080549290931673ffffffffffffffffffffffffffffffffffffffff19928316179092556001808552835490911690911790915580549161026183610a6e565b90915550506040516001600160a01b03831681527f9465fa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa7f60b2ea269060200160405180910390a180600254146102b4576102b4816102f3565b5050565b60006001600160a01b0382166001148015906102ed57506001600160a01b038281166000908152602081905260409020541615155b92915050565b6102fb6108a2565b6001548111156103355760405162461bcd60e51b8152602060048201526005602482015264475332303160d81b604482015260640161018d565b60018110156103865760405162461bcd60e51b815260206004820152600560248201527f4753323032000000000000000000000000000000000000000000000000000000604482015260640161018d565b60028190556040518181527f610f7ff2b304ae8903c3de74c60c6ab1f7d6226b3f52c5161905bb5ad4039c939060200160405180910390a150565b6060600060015467ffffffffffffffff8111156103e0576103e0610ab5565b604051908082528060200260200182016040528015610409578160200160208202803683370190505b506001600090815260208190527fada5013122d395ba3c54772283fb069b10426056ef8ca54750cb9bb552a59e7d54919250906001600160a01b03165b6001600160a01b0381166001146104a9578083838151811061046a5761046a610a9f565b6001600160a01b0392831660209182029290920181019190915291811660009081529182905260409091205416816104a181610a6e565b925050610446565b509092915050565b6104b96108a2565b6001600160a01b038116158015906104db57506001600160a01b038116600114155b80156104f057506001600160a01b0381163014155b6105245760405162461bcd60e51b8152602060048201526005602482015264475332303360d81b604482015260640161018d565b6001600160a01b0381811660009081526020819052604090205416156105745760405162461bcd60e51b815260206004820152600560248201526411d4cc8c0d60da1b604482015260640161018d565b6001600160a01b0382161580159061059657506001600160a01b038216600114155b6105ca5760405162461bcd60e51b8152602060048201526005602482015264475332303360d81b604482015260640161018d565b6001600160a01b0383811660009081526020819052604090205481169083161461061e5760405162461bcd60e51b8152602060048201526005602482015264475332303560d81b604482015260640161018d565b6001600160a01b038281166000818152602081815260408083208054878716808652838620805492891673ffffffffffffffffffffffffffffffffffffffff19938416179055968a1685528285208054821690971790965592849052825490941690915591519081527ff8d49fc529812e9a7c5c50e69c20f0dccc0db8fa95c98bc58cc9a4f1c1299eaf910160405180910390a16040516001600160a01b03821681527f9465fa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa7f60b2ea269060200160405180910390a1505050565b6106fb6108a2565b806001805461070a9190610a40565b10156107405760405162461bcd60e51b8152602060048201526005602482015264475332303160d81b604482015260640161018d565b6001600160a01b0382161580159061076257506001600160a01b038216600114155b6107965760405162461bcd60e51b8152602060048201526005602482015264475332303360d81b604482015260640161018d565b6001600160a01b038381166000908152602081905260409020548116908316146107ea5760405162461bcd60e51b8152602060048201526005602482015264475332303560d81b604482015260640161018d565b6001600160a01b038281166000818152602081905260408082208054888616845291832080549290951673ffffffffffffffffffffffffffffffffffffffff19928316179094559181528254909116909155600180549161084a83610a57565b90915550506040516001600160a01b03831681527ff8d49fc529812e9a7c5c50e69c20f0dccc0db8fa95c98bc58cc9a4f1c1299eaf9060200160405180910390a1806002541461089d5761089d816102f3565b505050565b3330146108f15760405162461bcd60e51b815260206004820152600560248201527f4753303331000000000000000000000000000000000000000000000000000000604482015260640161018d565b565b80356001600160a01b038116811461090a57600080fd5b919050565b60006020828403121561092157600080fd5b61092a826108f3565b9392505050565b60008060006060848603121561094657600080fd5b61094f846108f3565b925061095d602085016108f3565b915061096b604085016108f3565b90509250925092565b60008060006060848603121561098957600080fd5b610992846108f3565b92506109a0602085016108f3565b9150604084013590509250925092565b600080604083850312156109c357600080fd5b6109cc836108f3565b946020939093013593505050565b6000602082840312156109ec57600080fd5b5035919050565b6020808252825182820181905260009190848201906040850190845b81811015610a345783516001600160a01b031683529284019291840191600101610a0f565b50909695505050505050565b600082821015610a5257610a52610a89565b500390565b600081610a6657610a66610a89565b506000190190565b6000600019821415610a8257610a82610a89565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fdfea2646970667358221220b6660f423d3c96d0d0669dbb2800e0576cc94f479ebe30dd436a67061ce30dac64736f6c63430008070033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
