{
  "_format": "hh-sol-artifact-1",
  "contractName": "MasterDeployer",
  "sourceName": "contracts/deployer/MasterDeployer.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_barFee",
          "type": "uint256"
        },
        {
          "internalType": "address",
          "name": "_barFeeTo",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_bento",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "factory",
          "type": "address"
        }
      ],
      "name": "AddToWhitelist",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "barFee",
          "type": "uint256"
        }
      ],
      "name": "BarFeeUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "factory",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "pool",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "bytes",
          "name": "deployData",
          "type": "bytes"
        }
      ],
      "name": "DeployPool",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "factory",
          "type": "address"
        }
      ],
      "name": "RemoveFromWhitelist",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "sender",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "recipient",
          "type": "address"
        }
      ],
      "name": "TransferOwner",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "sender",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "recipient",
          "type": "address"
        }
      ],
      "name": "TransferOwnerClaim",
      "type": "event"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_factory",
          "type": "address"
        }
      ],
      "name": "addToWhitelist",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "barFee",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "barFeeTo",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "bento",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "claimOwner",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_factory",
          "type": "address"
        },
        {
          "internalType": "bytes",
          "name": "_deployData",
          "type": "bytes"
        }
      ],
      "name": "deployPool",
      "outputs": [
        {
          "internalType": "address",
          "name": "pool",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "owner",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "pendingOwner",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "name": "pools",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_factory",
          "type": "address"
        }
      ],
      "name": "removeFromWhitelist",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_barFee",
          "type": "uint256"
        }
      ],
      "name": "setBarFee",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "recipient",
          "type": "address"
        },
        {
          "internalType": "bool",
          "name": "direct",
          "type": "bool"
        }
      ],
      "name": "transferOwner",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "name": "whitelistedFactories",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "bytecode": "0x60c060405234801561001057600080fd5b50604051610de3380380610de383398101604081905261002f91610182565b600080546001600160a01b0319163390811782556040519091907f5bb496b3f951b55d3a1d8e479725a4d25bdc7644fc355f0b71c540354820a1c5908290a36127108311156100b75760405162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4241525f46454560881b60448201526064015b60405180910390fd5b6001600160a01b0382166100fc5760405162461bcd60e51b815260206004820152600c60248201526b5a45524f5f4144445245535360a01b60448201526064016100ae565b6001600160a01b0381166101415760405162461bcd60e51b815260206004820152600c60248201526b5a45524f5f4144445245535360a01b60448201526064016100ae565b6002929092556001600160601b0319606091821b811660805291901b1660a0526101be565b80516001600160a01b038116811461017d57600080fd5b919050565b60008060006060848603121561019757600080fd5b835192506101a760208501610166565b91506101b560408501610166565b90509250925092565b60805160601c60a05160601c610bfb6101e8600039600061016a0152600060fe0152610bfb6000f3fe608060405234801561001057600080fd5b50600436106100df5760003560e01c80638ab1d6811161008c578063c14ad80211610066578063c14ad80214610215578063cf81afaa1461022c578063e30c39781461023f578063e43252d71461025f57600080fd5b80638ab1d681146101bf5780638da5cb5b146101d2578063a4063dbc146101f257600080fd5b80633bd1adec116100bd5780633bd1adec1461015d5780634da31827146101655780636f50f2f41461018c57600080fd5b806306e22d12146100e45780630c0a0cd2146100f9578063250558dc1461014a575b600080fd5b6100f76100f2366004610b3a565b610272565b005b6101207f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b610120610158366004610ab5565b610397565b6100f7610564565b6101207f000000000000000000000000000000000000000000000000000000000000000081565b6101af61019a366004610a36565b60046020526000908152604090205460ff1681565b6040519015158152602001610141565b6100f76101cd366004610a36565b610662565b6000546101209073ffffffffffffffffffffffffffffffffffffffff1681565b6101af610200366004610a36565b60036020526000908152604090205460ff1681565b61021e60025481565b604051908152602001610141565b6100f761023a366004610a77565b610757565b6001546101209073ffffffffffffffffffffffffffffffffffffffff1681565b6100f761026d366004610a36565b61093e565b60005473ffffffffffffffffffffffffffffffffffffffff1633146102f8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4e4f545f4f574e4552000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b612710811115610364576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f494e56414c49445f4241525f464545000000000000000000000000000000000060448201526064016102ef565b600281905560405181907f880a5214911723edb25bb08410581af1de2e40c52eda03920990c4bc27011fb690600090a250565b73ffffffffffffffffffffffffffffffffffffffff831660009081526004602052604081205460ff16610426576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f464143544f52595f4e4f545f57484954454c495354454400000000000000000060448201526064016102ef565b6040517f27c3cae100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8516906327c3cae19061047a9086908690600401610b53565b602060405180830381600087803b15801561049457600080fd5b505af11580156104a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104cc9190610a5a565b73ffffffffffffffffffffffffffffffffffffffff8082166000818152600360205260409081902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555192935091908616907fe469f9471ac1d98222517eb2cdff1ef4df5f7880269173bb782bb78e499d9de3906105559087908790610b53565b60405180910390a39392505050565b60015473ffffffffffffffffffffffffffffffffffffffff1633146105e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4e4f545f50454e44494e475f4f574e455200000000000000000000000000000060448201526064016102ef565b60008054604051339273ffffffffffffffffffffffffffffffffffffffff909216917f5bb496b3f951b55d3a1d8e479725a4d25bdc7644fc355f0b71c540354820a1c591a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000009081163317909155600180549091169055565b60005473ffffffffffffffffffffffffffffffffffffffff1633146106e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4e4f545f4f574e4552000000000000000000000000000000000000000000000060448201526064016102ef565b73ffffffffffffffffffffffffffffffffffffffff811660008181526004602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055517f1f756c8b089af6b33ee121fee8badac2553a2fa89c0575ea91ff8792617746c29190a250565b60005473ffffffffffffffffffffffffffffffffffffffff1633146107d8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4e4f545f4f574e4552000000000000000000000000000000000000000000000060448201526064016102ef565b73ffffffffffffffffffffffffffffffffffffffff8216610855576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f5a45524f5f41444452455353000000000000000000000000000000000000000060448201526064016102ef565b80156108cc57600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081178255604051909133917f5bb496b3f951b55d3a1d8e479725a4d25bdc7644fc355f0b71c540354820a1c59190a35050565b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff841690811790915560405133907f87f5c8846f4c51400fa448cfb84edcec5cc0f333b6d20a5b903e050823dcb66790600090a35050565b60005473ffffffffffffffffffffffffffffffffffffffff1633146109bf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4e4f545f4f574e4552000000000000000000000000000000000000000000000060448201526064016102ef565b73ffffffffffffffffffffffffffffffffffffffff811660008181526004602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055517f75b2135d1c8c3519f3c09c43fe6527089ef09f40c7981ebf0ed46e79e79032c79190a250565b600060208284031215610a4857600080fd5b8135610a5381610ba0565b9392505050565b600060208284031215610a6c57600080fd5b8151610a5381610ba0565b60008060408385031215610a8a57600080fd5b8235610a9581610ba0565b915060208301358015158114610aaa57600080fd5b809150509250929050565b600080600060408486031215610aca57600080fd5b8335610ad581610ba0565b9250602084013567ffffffffffffffff80821115610af257600080fd5b818601915086601f830112610b0657600080fd5b813581811115610b1557600080fd5b876020828501011115610b2757600080fd5b6020830194508093505050509250925092565b600060208284031215610b4c57600080fd5b5035919050565b60208152816020820152818360408301376000818301604090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0160101919050565b73ffffffffffffffffffffffffffffffffffffffff81168114610bc257600080fd5b5056fea26469706673582212206048df326ffea94c3a1fa819787ec5041b15c8e0c106db3d9a44fa150c7bee5964736f6c63430008070033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100df5760003560e01c80638ab1d6811161008c578063c14ad80211610066578063c14ad80214610215578063cf81afaa1461022c578063e30c39781461023f578063e43252d71461025f57600080fd5b80638ab1d681146101bf5780638da5cb5b146101d2578063a4063dbc146101f257600080fd5b80633bd1adec116100bd5780633bd1adec1461015d5780634da31827146101655780636f50f2f41461018c57600080fd5b806306e22d12146100e45780630c0a0cd2146100f9578063250558dc1461014a575b600080fd5b6100f76100f2366004610b3a565b610272565b005b6101207f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b610120610158366004610ab5565b610397565b6100f7610564565b6101207f000000000000000000000000000000000000000000000000000000000000000081565b6101af61019a366004610a36565b60046020526000908152604090205460ff1681565b6040519015158152602001610141565b6100f76101cd366004610a36565b610662565b6000546101209073ffffffffffffffffffffffffffffffffffffffff1681565b6101af610200366004610a36565b60036020526000908152604090205460ff1681565b61021e60025481565b604051908152602001610141565b6100f761023a366004610a77565b610757565b6001546101209073ffffffffffffffffffffffffffffffffffffffff1681565b6100f761026d366004610a36565b61093e565b60005473ffffffffffffffffffffffffffffffffffffffff1633146102f8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4e4f545f4f574e4552000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b612710811115610364576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f494e56414c49445f4241525f464545000000000000000000000000000000000060448201526064016102ef565b600281905560405181907f880a5214911723edb25bb08410581af1de2e40c52eda03920990c4bc27011fb690600090a250565b73ffffffffffffffffffffffffffffffffffffffff831660009081526004602052604081205460ff16610426576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f464143544f52595f4e4f545f57484954454c495354454400000000000000000060448201526064016102ef565b6040517f27c3cae100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8516906327c3cae19061047a9086908690600401610b53565b602060405180830381600087803b15801561049457600080fd5b505af11580156104a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104cc9190610a5a565b73ffffffffffffffffffffffffffffffffffffffff8082166000818152600360205260409081902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555192935091908616907fe469f9471ac1d98222517eb2cdff1ef4df5f7880269173bb782bb78e499d9de3906105559087908790610b53565b60405180910390a39392505050565b60015473ffffffffffffffffffffffffffffffffffffffff1633146105e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4e4f545f50454e44494e475f4f574e455200000000000000000000000000000060448201526064016102ef565b60008054604051339273ffffffffffffffffffffffffffffffffffffffff909216917f5bb496b3f951b55d3a1d8e479725a4d25bdc7644fc355f0b71c540354820a1c591a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000009081163317909155600180549091169055565b60005473ffffffffffffffffffffffffffffffffffffffff1633146106e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4e4f545f4f574e4552000000000000000000000000000000000000000000000060448201526064016102ef565b73ffffffffffffffffffffffffffffffffffffffff811660008181526004602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055517f1f756c8b089af6b33ee121fee8badac2553a2fa89c0575ea91ff8792617746c29190a250565b60005473ffffffffffffffffffffffffffffffffffffffff1633146107d8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4e4f545f4f574e4552000000000000000000000000000000000000000000000060448201526064016102ef565b73ffffffffffffffffffffffffffffffffffffffff8216610855576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f5a45524f5f41444452455353000000000000000000000000000000000000000060448201526064016102ef565b80156108cc57600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081178255604051909133917f5bb496b3f951b55d3a1d8e479725a4d25bdc7644fc355f0b71c540354820a1c59190a35050565b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff841690811790915560405133907f87f5c8846f4c51400fa448cfb84edcec5cc0f333b6d20a5b903e050823dcb66790600090a35050565b60005473ffffffffffffffffffffffffffffffffffffffff1633146109bf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4e4f545f4f574e4552000000000000000000000000000000000000000000000060448201526064016102ef565b73ffffffffffffffffffffffffffffffffffffffff811660008181526004602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055517f75b2135d1c8c3519f3c09c43fe6527089ef09f40c7981ebf0ed46e79e79032c79190a250565b600060208284031215610a4857600080fd5b8135610a5381610ba0565b9392505050565b600060208284031215610a6c57600080fd5b8151610a5381610ba0565b60008060408385031215610a8a57600080fd5b8235610a9581610ba0565b915060208301358015158114610aaa57600080fd5b809150509250929050565b600080600060408486031215610aca57600080fd5b8335610ad581610ba0565b9250602084013567ffffffffffffffff80821115610af257600080fd5b818601915086601f830112610b0657600080fd5b813581811115610b1557600080fd5b876020828501011115610b2757600080fd5b6020830194508093505050509250925092565b600060208284031215610b4c57600080fd5b5035919050565b60208152816020820152818360408301376000818301604090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0160101919050565b73ffffffffffffffffffffffffffffffffffffffff81168114610bc257600080fd5b5056fea26469706673582212206048df326ffea94c3a1fa819787ec5041b15c8e0c106db3d9a44fa150c7bee5964736f6c63430008070033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
