[
  {
    "inputs": [],
    "name": "InvalidInitialization",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "NotInitializing",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "owner",
        "type": "address"
      }
    ],
    "name": "OwnableInvalidOwner",
    "type": "error"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "account",
        "type": "address"
      }
    ],
    "name": "OwnableUnauthorizedAccount",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "UnknownCoreType",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "UnknownLP",
    "type": "error"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "string",
        "name": "coreType",
        "type": "string"
      },
      {
        "indexed": false,
        "internalType": "address",
        "name": "coreBeacon",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "address",
        "name": "azuroBetBeacon",
        "type": "address"
      }
    ],
    "name": "CoreTypeUpdated",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "uint64",
        "name": "version",
        "type": "uint64"
      }
    ],
    "name": "Initialized",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "lp",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "core",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "string",
        "name": "coreType",
        "type": "string"
      }
    ],
    "name": "NewCore",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "lp",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "core",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "string",
        "name": "coreType",
        "type": "string"
      },
      {
        "indexed": false,
        "internalType": "address",
        "name": "access",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "address",
        "name": "vault",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "address",
        "name": "token",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "address",
        "name": "azuroBet",
        "type": "address"
      }
    ],
    "name": "NewPool",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "previousOwner",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "newOwner",
        "type": "address"
      }
    ],
    "name": "OwnershipTransferred",
    "type": "event"
  },
  {
    "inputs": [],
    "name": "accessBeacon",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "lp",
        "type": "address"
      }
    ],
    "name": "checkLP",
    "outputs": [],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "name": "coreBeacons",
    "outputs": [
      {
        "internalType": "address",
        "name": "core",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "azuroBet",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "token",
        "type": "address"
      },
      {
        "internalType": "uint128",
        "name": "minDepo",
        "type": "uint128"
      },
      {
        "internalType": "uint64",
        "name": "daoFee",
        "type": "uint64"
      },
      {
        "internalType": "uint64",
        "name": "dataProviderFee",
        "type": "uint64"
      },
      {
        "internalType": "uint64",
        "name": "affiliateFee",
        "type": "uint64"
      },
      {
        "internalType": "string",
        "name": "coreType",
        "type": "string"
      }
    ],
    "name": "createPool",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "vault",
        "type": "address"
      },
      {
        "internalType": "uint128",
        "name": "minDepo",
        "type": "uint128"
      },
      {
        "internalType": "uint64",
        "name": "daoFee",
        "type": "uint64"
      },
      {
        "internalType": "uint64",
        "name": "dataProviderFee",
        "type": "uint64"
      },
      {
        "internalType": "uint64",
        "name": "affiliateFee",
        "type": "uint64"
      },
      {
        "internalType": "string",
        "name": "coreType",
        "type": "string"
      }
    ],
    "name": "createPoolWithDeployedVault",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "accessBeacon_",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "lpBeacon_",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "vaultBeacon_",
        "type": "address"
      }
    ],
    "name": "initialize",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "lpBeacon",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "owner",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "lp",
        "type": "address"
      },
      {
        "internalType": "string",
        "name": "coreType",
        "type": "string"
      }
    ],
    "name": "plugCore",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "name": "registeredLPs",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "renounceOwnership",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "newOwner",
        "type": "address"
      }
    ],
    "name": "transferOwnership",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "string",
        "name": "coreType",
        "type": "string"
      },
      {
        "internalType": "address",
        "name": "coreBeacon",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "azuroBetBeacon",
        "type": "address"
      }
    ],
    "name": "updateCoreType",
    "outputs": [],
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "vaultBeacon",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  }
]
