From ef4437188977be62612aa08c9ab9124ca58151b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillaume=20Dieudonn=C3=A9?= <8122069+GuiDieudo@users.noreply.github.com> Date: Sun, 27 Nov 2022 20:19:03 +0100 Subject: [PATCH 1/6] feat: adding creatorFee and Treasury Fee to loaded data in dapp --- .../dapp/src/state/games/fetchGameData.ts | 25 ++++- .../src/state/games/fetchGamePlayerData.ts | 91 ------------------- .../dapp/src/state/games/fetchGamesFull.ts | 11 ++- packages/dapp/src/state/games/selectors.ts | 6 ++ packages/dapp/src/state/games/transformers.ts | 6 +- packages/dapp/src/state/types.ts | 4 + .../components/GameCard/CardPlayerSection.tsx | 16 +++- .../Games/components/GameCard/GameCard.tsx | 4 + .../GameCardButtons/ClaimAllFeeButton.tsx | 17 +++- .../GameCardButtons/ClaimCreatorFeeButton.tsx | 14 ++- .../ClaimTreasuryFeeButton.tsx | 15 ++- 11 files changed, 103 insertions(+), 106 deletions(-) diff --git a/packages/dapp/src/state/games/fetchGameData.ts b/packages/dapp/src/state/games/fetchGameData.ts index 5410b92..79dae92 100644 --- a/packages/dapp/src/state/games/fetchGameData.ts +++ b/packages/dapp/src/state/games/fetchGameData.ts @@ -30,14 +30,35 @@ export const fetchPublicGamesData = async ( return chunk(gameMultiCallResult, chunkSize) } -export const fetchGamesRemainingPlayersCount = async ( +export const fetchGamesCreatorAmounts = async ( games: GameFactory.GameStructOutput[], chainId = ChainId.BSC, ): Promise => { const gameCalls = games.map((game) => { return { address: game.deployedAddress, - name: 'getRemainingPlayersCount', + name: 'creatorAmount', + } + }) + const chunkSize = gameCalls.length / games.length + + const gameMultiCallResult = await multicallv2({ + abi: internal[chainId || ChainId.BSC].GameV1.abi, + calls: gameCalls, + chainId, + }) + + return chunk(gameMultiCallResult, chunkSize) +} + +export const fetchGamesTreasuryAmounts = async ( + games: GameFactory.GameStructOutput[], + chainId = ChainId.BSC, +): Promise => { + const gameCalls = games.map((game) => { + return { + address: game.deployedAddress, + name: 'treasuryAmount', } }) const chunkSize = gameCalls.length / games.length diff --git a/packages/dapp/src/state/games/fetchGamePlayerData.ts b/packages/dapp/src/state/games/fetchGamePlayerData.ts index e7298c1..904ecfa 100644 --- a/packages/dapp/src/state/games/fetchGamePlayerData.ts +++ b/packages/dapp/src/state/games/fetchGamePlayerData.ts @@ -80,94 +80,3 @@ export const fetchGamePlayersData = async (game: any, chainId = ChainId.BSC): Pr return chunk(gameMultiCallResult, chunkSize) } - -export const fetchGamePlayerAllowances = async ( - account: string, - gamesToFetch: SerializedGame[], - chainId: number, - proxyAddress?: string, -) => { - const isBscNetwork = verifyBscNetwork(chainId) - - const calls = gamesToFetch.map((game) => { - const contractAddress = game.address - return { address: contractAddress, name: 'allowance', params: [account, proxyAddress] } - }) - - const rawLpAllowances = await multicall(erc20ABI, calls, chainId) - const parsedLpAllowances = rawLpAllowances.map((lpBalance) => { - return new BigNumber(lpBalance).toJSON() - }) - - return parsedLpAllowances -} - -export const fetchGamePlayerTokenBalances = async ( - account: string, - gamesToFetch: SerializedGame[], - chainId: number, -) => { - const calls = gamesToFetch.map((game) => { - const contractAddress = game.address - return { - address: contractAddress, - name: 'balanceOf', - params: [account], - } - }) - - const rawTokenBalances = await multicall(erc20ABI, calls, chainId) - const parsedTokenBalances = rawTokenBalances.map((tokenBalance) => { - return new BigNumber(tokenBalance).toJSON() - }) - return parsedTokenBalances -} - -export const fetchGamePlayerStakedBalances = async ( - account: string, - gamesToFetch: SerializedGame[], - chainId: number, -) => { - const isBscNetwork = verifyBscNetwork(chainId) - - const calls = gamesToFetch.map((game) => { - return { - address: account, - name: 'userInfo', - params: [game.id], - } - }) - - const rawStakedBalances = await multicallv2({ - abi: isBscNetwork ? null : null, - calls, - chainId, - options: { requireSuccess: false }, - }) - const parsedStakedBalances = rawStakedBalances.map((stakedBalance) => { - return new BigNumber(stakedBalance[0]._hex).toJSON() - }) - return parsedStakedBalances -} - -export const fetchGamePlayerEarnings = async (account: string, gamesToFetch: SerializedGame[], chainId: number) => { - const isBscNetwork = verifyBscNetwork(chainId) - const multiCallChainId = isChainTestnet(chainId) ? ChainId.BSC_TESTNET : ChainId.BSC - const userAddress = account - - const calls = gamesToFetch.map((game) => { - return { - address: account, - name: 'pendingCake', - params: [game.id, userAddress], - } - }) - - const rawEarnings = await multicallv2({ abi: null, calls, chainId: multiCallChainId }) - - const parsedEarnings = rawEarnings.map((earnings) => { - return new BigNumber(earnings).toJSON() - }) - - return parsedEarnings -} diff --git a/packages/dapp/src/state/games/fetchGamesFull.ts b/packages/dapp/src/state/games/fetchGamesFull.ts index ee11ac0..dfb3ee1 100644 --- a/packages/dapp/src/state/games/fetchGamesFull.ts +++ b/packages/dapp/src/state/games/fetchGamesFull.ts @@ -5,7 +5,8 @@ import { gameBaseTransformer, gameExtendedTransformer } from './transformers' import { fetchPublicGamesData, - fetchGamesRemainingPlayersCount, + fetchGamesTreasuryAmounts, + fetchGamesCreatorAmounts, fetchGamesPlayersAddresses, fetchGamesPrizes, fetchGamesPlayersData, @@ -16,11 +17,15 @@ const fetchGamesFull = async (chainId: number): Promise => { const gameFactoryContract: GameFactory = getGameFactoryV1Contract(chainId) const gamesToFetch: GameFactory.GameStructOutput[] = await gameFactoryContract.getDeployedGames() - const [gameData, gamePlayers] = await Promise.all([ + const [gameData, gamePlayers, gameCreatorAmounts, gameTreasuryAmounts] = await Promise.all([ fetchPublicGamesData(gamesToFetch, chainId), fetchGamesPlayersAddresses(gamesToFetch, chainId), + fetchGamesCreatorAmounts(gamesToFetch, chainId), + fetchGamesTreasuryAmounts(gamesToFetch, chainId), ]) - const transformedGames = gamesToFetch.map(gameBaseTransformer(gameData, gamePlayers)) + const transformedGames = gamesToFetch.map( + gameBaseTransformer(gameData, gamePlayers, gameCreatorAmounts, gameTreasuryAmounts), + ) // TODO GUIGUI HANDLE gamePlayersData const [gamePrizes /* , gamePlayersData */] = await Promise.all([ fetchGamesPrizes(transformedGames, chainId), diff --git a/packages/dapp/src/state/games/selectors.ts b/packages/dapp/src/state/games/selectors.ts index 854dbf5..8b010ef 100644 --- a/packages/dapp/src/state/games/selectors.ts +++ b/packages/dapp/src/state/games/selectors.ts @@ -67,7 +67,9 @@ const deserializeGame = (game: SerializedGame): DeserializedGame => { creator, admin, treasuryFee, + treasuryAmount, creatorFee, + creatorAmount, playerAddresses, } = game @@ -90,7 +92,11 @@ const deserializeGame = (game: SerializedGame): DeserializedGame => { creator, admin, treasuryFee: treasuryFee ? new BigNumber(treasuryFee) : BIG_ZERO, + // treasuryAmount: treasuryAmount ? new BigNumber(treasuryAmount) : BIG_ZERO, + treasuryAmount, creatorFee: creatorFee ? new BigNumber(creatorFee) : BIG_ZERO, + // creatorAmount: creatorAmount ? new BigNumber(creatorAmount) : BIG_ZERO, + creatorAmount, playerAddresses, prizes: deserializeGamePrize(game), userData: deserializeGameUserData(game), diff --git a/packages/dapp/src/state/games/transformers.ts b/packages/dapp/src/state/games/transformers.ts index 54870c8..40551e7 100644 --- a/packages/dapp/src/state/games/transformers.ts +++ b/packages/dapp/src/state/games/transformers.ts @@ -18,7 +18,7 @@ function parseStringOrBytes32(str: string | undefined, bytes32: string | undefin : defaultValue } -export const gameBaseTransformer = (gameData, gamePlayers) => { +export const gameBaseTransformer = (gameData, gamePlayers, gameCreatorAmounts, gameTreasuryAmounts) => { return (game, index): SerializedGame => { const { deployedAddress: address, gameCreationAmount } = game const [ @@ -44,6 +44,8 @@ export const gameBaseTransformer = (gameData, gamePlayers) => { ] = gameData[index] const [[playerAddresses]] = gamePlayers[index] + const [[creatorAmount]] = gameCreatorAmounts[index] + const [[treasuryAmount]] = gameTreasuryAmounts[index] return { id: id.toNumber(), @@ -56,7 +58,9 @@ export const gameBaseTransformer = (gameData, gamePlayers) => { registrationAmount: formatEther(`${registrationAmount}`), gameCreationAmount: formatEther(`${gameCreationAmount}`), creatorFee: creatorFee.toString(), + creatorAmount: creatorAmount.toString(), treasuryFee: treasuryFee.toString(), + treasuryAmount: treasuryAmount.toString(), isInProgress, isPaused, isDeleted: false, diff --git a/packages/dapp/src/state/types.ts b/packages/dapp/src/state/types.ts index 0e54b88..a79ac5a 100644 --- a/packages/dapp/src/state/types.ts +++ b/packages/dapp/src/state/types.ts @@ -105,7 +105,9 @@ export interface SerializedGame { creator: string admin: string treasuryFee: string + treasuryAmount: string creatorFee: string + creatorAmount: string playerAddresses: string[] prizes: SerializedPrizeData[] userData?: SerializedGameUserData @@ -131,7 +133,9 @@ export interface DeserializedGame { creator: string admin: string treasuryFee: BigNumber + treasuryAmount: string creatorFee: BigNumber + creatorAmount: string playerAddresses: string[] prizes: DeserializedPrizeData[] userData?: DeserializedGameUserData diff --git a/packages/dapp/src/views/Games/components/GameCard/CardPlayerSection.tsx b/packages/dapp/src/views/Games/components/GameCard/CardPlayerSection.tsx index cd9c279..eb47ade 100644 --- a/packages/dapp/src/views/Games/components/GameCard/CardPlayerSection.tsx +++ b/packages/dapp/src/views/Games/components/GameCard/CardPlayerSection.tsx @@ -36,6 +36,8 @@ interface GameCardPlayerSectionProps { remainingPlayersCount: BigNumber playerAddressesCount: BigNumber encodedCron: string + creatorAmount: string + treasuryAmount: string isPlaying: boolean isWonLastGames: boolean isCanVoteSplitPot: boolean @@ -62,6 +64,8 @@ const CardPlayerSection: React.FC} )} - {isPaused && isCreator && isAdmin && } - {isPaused && isCreator && !isAdmin && } - {isPaused && isAdmin && !isCreator && } + {isCreator && isAdmin && !!+treasuryAmount && !!+creatorAmount && ( + + )} + {isCreator && !isAdmin && !!+creatorAmount && ( + + )} + {isAdmin && !isCreator && !!+treasuryAmount && ( + + )} )} diff --git a/packages/dapp/src/views/Games/components/GameCard/GameCard.tsx b/packages/dapp/src/views/Games/components/GameCard/GameCard.tsx index eb30050..f518510 100644 --- a/packages/dapp/src/views/Games/components/GameCard/GameCard.tsx +++ b/packages/dapp/src/views/Games/components/GameCard/GameCard.tsx @@ -69,7 +69,9 @@ const GameCard: React.FC> = ({ game, acco encodedCron, creator, treasuryFee, + treasuryAmount, creatorFee, + creatorAmount, prizes, userData: { isCreator, @@ -174,6 +176,8 @@ const GameCard: React.FC> = ({ game, acco isInTimeRange={isInTimeRange} gameCreationAmount={gameCreationAmount} registrationAmount={registrationAmount} + creatorAmount={creatorAmount} + treasuryAmount={treasuryAmount} isReady={isReady} isPaused={isPaused} isCreator={isCreator} diff --git a/packages/dapp/src/views/Games/components/GameCardButtons/ClaimAllFeeButton.tsx b/packages/dapp/src/views/Games/components/GameCardButtons/ClaimAllFeeButton.tsx index 51aac33..17fcb10 100644 --- a/packages/dapp/src/views/Games/components/GameCardButtons/ClaimAllFeeButton.tsx +++ b/packages/dapp/src/views/Games/components/GameCardButtons/ClaimAllFeeButton.tsx @@ -2,17 +2,30 @@ import { useMemo } from 'react' import { useTranslation } from '@pancakeswap/localization' import { Button, AutoRenewIcon } from '@pancakeswap/uikit' import { useClaimAllFee } from 'views/Games/hooks/useClaimAllFee' +import { formatEther } from '@ethersproject/units' +import useActiveWeb3React from 'hooks/useActiveWeb3React' interface ClaimAllFeeButtonProps { address: string + treasuryAmount: string + creatorAmount: string } -const ClaimAllFeeButton: React.FC> = ({ address }) => { +const ClaimAllFeeButton: React.FC> = ({ + address, + treasuryAmount, + creatorAmount, +}) => { const { t } = useTranslation() + const { chain } = useActiveWeb3React() + const chainSymbol = chain?.nativeCurrency?.symbol || 'BNB' + console.log('🚀 ~ file: ClaimAllFeeButton.tsx ~ line 22 ~ chainSymbol', chainSymbol) + const { isPending, handleClaimAllFee } = useClaimAllFee(address) const isDisabledButton = useMemo(() => !address || isPending, [address, isPending]) + const claimAmount = parseFloat(formatEther(Number(treasuryAmount) + Number(creatorAmount))) return ( ) } diff --git a/packages/dapp/src/views/Games/components/GameCardButtons/ClaimCreatorFeeButton.tsx b/packages/dapp/src/views/Games/components/GameCardButtons/ClaimCreatorFeeButton.tsx index fc9e63a..abf60ef 100644 --- a/packages/dapp/src/views/Games/components/GameCardButtons/ClaimCreatorFeeButton.tsx +++ b/packages/dapp/src/views/Games/components/GameCardButtons/ClaimCreatorFeeButton.tsx @@ -2,16 +2,26 @@ import { useMemo } from 'react' import { useTranslation } from '@pancakeswap/localization' import { Button, AutoRenewIcon } from '@pancakeswap/uikit' import { useClaimCreatorFee } from 'views/Games/hooks/useClaimCreatorFee' +import { formatEther } from '@ethersproject/units' +import useActiveWeb3React from 'hooks/useActiveWeb3React' interface ClaimCreatorFeeButtonProps { address: string + creatorAmount: string } -const ClaimCreatorFeeButton: React.FC> = ({ address }) => { +const ClaimCreatorFeeButton: React.FC> = ({ + address, + creatorAmount, +}) => { const { t } = useTranslation() + const { chain } = useActiveWeb3React() + const chainSymbol = chain?.nativeCurrency?.symbol || 'BNB' + const { isPending, handleClaimCreatorFee } = useClaimCreatorFee(address) const isDisabledButton = useMemo(() => !address || isPending, [address, isPending]) + const claimAmount = parseFloat(formatEther(creatorAmount)) return ( ) } diff --git a/packages/dapp/src/views/Games/components/GameCardButtons/ClaimTreasuryFeeButton.tsx b/packages/dapp/src/views/Games/components/GameCardButtons/ClaimTreasuryFeeButton.tsx index 131166b..739575d 100644 --- a/packages/dapp/src/views/Games/components/GameCardButtons/ClaimTreasuryFeeButton.tsx +++ b/packages/dapp/src/views/Games/components/GameCardButtons/ClaimTreasuryFeeButton.tsx @@ -2,17 +2,28 @@ import { useMemo } from 'react' import { useTranslation } from '@pancakeswap/localization' import { Button, AutoRenewIcon } from '@pancakeswap/uikit' import { useClaimTreasuryFee } from 'views/Games/hooks/useClaimTreasuryFee' +import { formatEther } from '@ethersproject/units' +import useActiveWeb3React from 'hooks/useActiveWeb3React' interface ClaimTreasuryFeeButtonProps { address: string + treasuryAmount: string } -const ClaimTreasuryFeeButton: React.FC> = ({ address }) => { +const ClaimTreasuryFeeButton: React.FC> = ({ + address, + treasuryAmount, +}) => { const { t } = useTranslation() + const { chain } = useActiveWeb3React() + const chainSymbol = chain?.nativeCurrency?.symbol || 'BNB' + const { isPending, handleClaimTreasuryFee } = useClaimTreasuryFee(address) const isDisabledButton = useMemo(() => !address || isPending, [address, isPending]) + const claimAmount = parseFloat(formatEther(treasuryAmount)) + return ( ) } From 63d782d2701e20533fc36fdff2b0869bbc53747d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillaume=20Dieudonn=C3=A9?= <8122069+GuiDieudo@users.noreply.github.com> Date: Sun, 27 Nov 2022 20:26:17 +0100 Subject: [PATCH 2/6] feat: adding versionId --- .../dapp/src/config/internal/internal.json | 10974 +--------------- .../types/typechain/contracts/GameV1.ts | 3 + .../contracts/interfaces/GameV1Interface.ts | 3 + .../contracts/GameFactory__factory.ts | 2 +- .../factories/contracts/GameV1__factory.ts | 7 +- .../interfaces/GameV1Interface__factory.ts | 5 + .../dapp/src/state/games/fetchGamesFull.ts | 1 + packages/dapp/src/state/games/selectors.ts | 2 + packages/dapp/src/state/games/transformers.ts | 2 + packages/dapp/src/state/types.ts | 2 + packages/hardhat/contracts/GameV1.sol | 1 + .../contracts/interfaces/GameV1Interface.sol | 1 + 12 files changed, 28 insertions(+), 10975 deletions(-) diff --git a/packages/dapp/src/config/internal/internal.json b/packages/dapp/src/config/internal/internal.json index 987f4a4..a366714 100644 --- a/packages/dapp/src/config/internal/internal.json +++ b/packages/dapp/src/config/internal/internal.json @@ -1,10973 +1 @@ -{ - "5": { - "GameFactory": { - "address": "0xaa318806D683765E6576636A2d88EE14fDa9c720", - "libraries": {}, - "transactionHash": "0x3b41d62fc13c88dd3d03acfb4c061dfea39502ecf873a688a9dea9d76fd8bc88", - "abi": [ - { - "inputs": [ - { "internalType": "address", "name": "_game", "type": "address" }, - { - "internalType": "address", - "name": "_cronUpkeep", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_gameCreationAmount", - "type": "uint256" - }, - { - "internalType": "uint256[]", - "name": "_authorizedAmounts", - "type": "uint256[]" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "cronUpkeep", - "type": "address" - } - ], - "name": "CronUpkeepUpdated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "receiver", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "FailedTransfer", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "nextId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "gameAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "implementationVersion", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "creatorAddress", - "type": "address" - } - ], - "name": "GameCreated", - "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" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Paused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "Received", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Unpaused", - "type": "event" - }, - { "stateMutability": "payable", "type": "fallback" }, - { - "inputs": [ - { - "internalType": "uint256[]", - "name": "_authorizedAmounts", - "type": "uint256[]" - } - ], - "name": "addAuthorizedAmounts", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "name": "authorizedAmounts", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { "internalType": "bytes32", "name": "_name", "type": "bytes32" }, - { - "internalType": "uint256", - "name": "_maxPlayers", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_playTimeRange", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_registrationAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_treasuryFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_creatorFee", - "type": "uint256" - }, - { - "internalType": "string", - "name": "_encodedCron", - "type": "string" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "standard", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "internalType": "struct GameV1Interface.Prize[]", - "name": "_prizes", - "type": "tuple[]" - } - ], - "name": "createNewGame", - "outputs": [{ "internalType": "address", "name": "game", "type": "address" }], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "cronUpkeep", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "name": "deployedGames", - "outputs": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "uint256", - "name": "versionId", - "type": "uint256" - }, - { "internalType": "address", "name": "creator", "type": "address" }, - { - "internalType": "address", - "name": "deployedAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "gameCreationAmount", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "gameCreationAmount", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "name": "games", - "outputs": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "address", - "name": "deployedAddress", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_authorizedAmount", - "type": "uint256" - } - ], - "name": "getAuthorizedAmount", - "outputs": [ - { - "components": [ - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { "internalType": "bool", "name": "isUsed", "type": "bool" } - ], - "internalType": "struct GameFactory.AuthorizedAmount", - "name": "gameAuthorisedAmount", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getAuthorizedAmounts", - "outputs": [ - { - "internalType": "uint256[]", - "name": "gameAuthorisedAmounts", - "type": "uint256[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getDeployedGames", - "outputs": [ - { - "components": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "uint256", - "name": "versionId", - "type": "uint256" - }, - { - "internalType": "address", - "name": "creator", - "type": "address" - }, - { - "internalType": "address", - "name": "deployedAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "gameCreationAmount", - "type": "uint256" - } - ], - "internalType": "struct GameFactory.Game[]", - "name": "allGames", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "latestVersionId", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "nextId", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "pauseAllGamesAndFactory", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "paused", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "resumeAllGamesAndFactory", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "_game", "type": "address" }], - "name": "setNewGameV1", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_adminAddress", - "type": "address" - } - ], - "name": "transferAdminOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "newOwner", "type": "address" }], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "unpause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_cronUpkeep", - "type": "address" - } - ], - "name": "updateCronUpkeep", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "name": "usedAuthorizedAmounts", - "outputs": [ - { "internalType": "uint256", "name": "amount", "type": "uint256" }, - { "internalType": "bool", "name": "isUsed", "type": "bool" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "withdrawFunds", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { "stateMutability": "payable", "type": "receive" } - ], - "date": "2022-11-27T16:25:12.333Z", - "olds": [] - }, - "GameV1": { - "address": "0x82BF8997DC54A3E447BcF4E636cBFc45A13D0Ed9", - "libraries": { "Cron": "0xb37EEC7c8a7312687777e4E61c4D2C12e2Fe0DD2" }, - "transactionHash": "0x69063710025c28aa4125a972369ee0d91df4735dfb88eae96407788228313c19", - "abi": [ - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "oldAdmin", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newAdmin", - "type": "address" - } - ], - "name": "AdminOwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "CreatorFeeClaimed", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "oldCreator", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newCreator", - "type": "address" - } - ], - "name": "CreatorOwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "jobId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "cronUpkeep", - "type": "address" - } - ], - "name": "CronUpkeepUpdated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "jobId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "string", - "name": "encodedCron", - "type": "string" - } - ], - "name": "EncodedCronUpdated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "oldFactory", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newFactory", - "type": "address" - } - ], - "name": "FactoryOwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "receiver", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "FailedTransfer", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "roundCount", - "type": "uint256" - } - ], - "name": "GameLost", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "claimer", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amountClaimed", - "type": "uint256" - } - ], - "name": "GamePrizeClaimed", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "remainingPlayersCount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amountWon", - "type": "uint256" - } - ], - "name": "GameSplitted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "winnersCounter", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amountWon", - "type": "uint256" - } - ], - "name": "GameWon", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Paused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "playerAddress", - "type": "address" - } - ], - "name": "PlayedRound", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "standard", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "name": "PrizeAdded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "Received", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "playersCount", - "type": "uint256" - } - ], - "name": "RegisteredForGame", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "timelock", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "resetId", - "type": "uint256" - } - ], - "name": "ResetGame", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "timelock", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "playersCount", - "type": "uint256" - } - ], - "name": "StartedGame", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "TreasuryFeeClaimed", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "TreasuryFeeClaimedByFactory", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "emmiter", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "timestamp", - "type": "uint256" - } - ], - "name": "TriggeredDailyCheckpoint", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Unpaused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "playerAddress", - "type": "address" - } - ], - "name": "VoteToSplitPot", - "type": "event" - }, - { "stateMutability": "payable", "type": "fallback" }, - { - "inputs": [], - "name": "MAX_CREATOR_FEE", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "MAX_TREASURY_FEE", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "standard", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "internalType": "struct GameV1Interface.Prize[]", - "name": "_prizes", - "type": "tuple[]" - } - ], - "name": "addPrizes", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "claimCreatorFee", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], - "name": "claimPrize", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "claimTreasuryFee", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "creator", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "creatorAmount", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "creatorFee", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "cronUpkeep", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "encodedCron", - "outputs": [{ "internalType": "string", "name": "", "type": "string" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "factory", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getGameData", - "outputs": [ - { - "components": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "name", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "playerAddressesCount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "remainingPlayersCount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "maxPlayers", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "registrationAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "playTimeRange", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "treasuryFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "creatorFee", - "type": "uint256" - }, - { "internalType": "bool", "name": "isPaused", "type": "bool" }, - { - "internalType": "bool", - "name": "isInProgress", - "type": "bool" - }, - { - "internalType": "address", - "name": "creator", - "type": "address" - }, - { - "internalType": "address", - "name": "admin", - "type": "address" - }, - { - "internalType": "string", - "name": "encodedCron", - "type": "string" - } - ], - "internalType": "struct GameV1Interface.GameData", - "name": "gameData", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "_player", "type": "address" }], - "name": "getPlayer", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "roundRangeLowerLimit", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "roundRangeUpperLimit", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "hasPlayedRound", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "roundCount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { "internalType": "bool", "name": "hasLost", "type": "bool" }, - { "internalType": "bool", "name": "isSplitOk", "type": "bool" } - ], - "internalType": "struct GameV1Interface.Player", - "name": "gamePlayer", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getPlayerAddresses", - "outputs": [ - { - "internalType": "address[]", - "name": "gamePlayerAddresses", - "type": "address[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], - "name": "getPrizes", - "outputs": [ - { - "components": [ - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "standard", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "internalType": "struct GameV1Interface.Prize[]", - "name": "gamePrizes", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getRemainingPlayersCount", - "outputs": [ - { - "internalType": "uint256", - "name": "remainingPlayersCount", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], - "name": "getWinners", - "outputs": [ - { - "components": [ - { - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amountWon", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "prizeClaimed", - "type": "bool" - } - ], - "internalType": "struct GameV1Interface.Winner[]", - "name": "gameWinners", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "id", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "internalType": "address", - "name": "creator", - "type": "address" - }, - { - "internalType": "address", - "name": "cronUpkeep", - "type": "address" - }, - { - "internalType": "bytes32", - "name": "name", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "version", - "type": "uint256" - }, - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "uint256", - "name": "playTimeRange", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "maxPlayers", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "registrationAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "treasuryFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "creatorFee", - "type": "uint256" - }, - { - "internalType": "string", - "name": "encodedCron", - "type": "string" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "standard", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "internalType": "struct GameV1Interface.Prize[]", - "name": "prizes", - "type": "tuple[]" - } - ], - "internalType": "struct GameV1Interface.Initialization", - "name": "_initialization", - "type": "tuple" - } - ], - "name": "initialize", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "isAllPlayersSplitOk", - "outputs": [{ "internalType": "bool", "name": "isSplitOk", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "isGameAllPrizesStandard", - "outputs": [{ "internalType": "bool", "name": "isStandard", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "isGamePayable", - "outputs": [{ "internalType": "bool", "name": "isPayable", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "isInProgress", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "maxPlayers", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "name", - "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "paused", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "playRound", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "playTimeRange", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "name": "playerAddresses", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "", "type": "address" }], - "name": "players", - "outputs": [ - { - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "roundRangeLowerLimit", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "roundRangeUpperLimit", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "hasPlayedRound", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "roundCount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { "internalType": "bool", "name": "hasLost", "type": "bool" }, - { "internalType": "bool", "name": "isSplitOk", "type": "bool" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "registerForGame", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "registrationAmount", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "roundId", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_creatorFee", - "type": "uint256" - } - ], - "name": "setCreatorFee", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_cronUpkeep", - "type": "address" - } - ], - "name": "setCronUpkeep", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "_encodedCron", - "type": "string" - } - ], - "name": "setEncodedCron", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_maxPlayers", - "type": "uint256" - } - ], - "name": "setMaxPlayers", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "bytes32", "name": "_name", "type": "bytes32" }], - "name": "setName", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_treasuryFee", - "type": "uint256" - } - ], - "name": "setTreasuryFee", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "startGame", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_adminAddress", - "type": "address" - } - ], - "name": "transferAdminOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "_creator", "type": "address" }], - "name": "transferCreatorOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "_factory", "type": "address" }], - "name": "transferFactoryOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "treasuryAmount", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "treasuryFee", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "triggerDailyCheckpoint", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "unpause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "version", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "voteToSplitPot", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_receiver", - "type": "address" - } - ], - "name": "withdrawFunds", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { "stateMutability": "payable", "type": "receive" } - ], - "date": "2022-11-27T16:25:12.340Z", - "olds": [] - }, - "CronExternal": { - "address": "0xb37EEC7c8a7312687777e4E61c4D2C12e2Fe0DD2", - "libraries": {}, - "transactionHash": "0x48e281132d77caeb76cf8fe7d7650daca12ef201e5422c33a4d65d4b485b8989", - "abi": [ - { - "inputs": [ - { "internalType": "string", "name": "field", "type": "string" }, - { "internalType": "string", "name": "reason", "type": "string" } - ], - "name": "InvalidField", - "type": "error" - }, - { - "inputs": [{ "internalType": "string", "name": "reason", "type": "string" }], - "name": "InvalidSpec", - "type": "error" - }, - { "inputs": [], "name": "ListTooLarge", "type": "error" }, - { "inputs": [], "name": "UnknownFieldType", "type": "error" }, - { - "inputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "minute", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "hour", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "day", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "month", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "dayOfWeek", - "type": "tuple" - } - ], - "internalType": "struct Spec", - "name": "spec", - "type": "tuple" - } - ], - "name": "lastTick", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "minute", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "hour", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "day", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "month", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "dayOfWeek", - "type": "tuple" - } - ], - "internalType": "struct Spec", - "name": "spec", - "type": "tuple" - }, - { - "internalType": "uint256", - "name": "timestamp", - "type": "uint256" - } - ], - "name": "matches", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "minute", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "hour", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "day", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "month", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "dayOfWeek", - "type": "tuple" - } - ], - "internalType": "struct Spec", - "name": "spec", - "type": "tuple" - } - ], - "name": "nextTick", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "minute", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "hour", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "day", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "month", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "dayOfWeek", - "type": "tuple" - } - ], - "internalType": "struct Spec", - "name": "spec", - "type": "tuple" - } - ], - "name": "toCronString", - "outputs": [{ "internalType": "string", "name": "", "type": "string" }], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [{ "internalType": "string", "name": "cronString", "type": "string" }], - "name": "toEncodedSpec", - "outputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [{ "internalType": "string", "name": "cronString", "type": "string" }], - "name": "toSpec", - "outputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "minute", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "hour", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "day", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "month", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "dayOfWeek", - "type": "tuple" - } - ], - "internalType": "struct Spec", - "name": "", - "type": "tuple" - } - ], - "stateMutability": "pure", - "type": "function" - } - ], - "date": "2022-11-27T16:25:12.345Z", - "olds": [] - }, - "CronUpkeep": { - "address": "0x45aa5aec20F3019A707D0EFb1C6282c4F0Aea44e", - "libraries": { "Cron": "0xb37EEC7c8a7312687777e4E61c4D2C12e2Fe0DD2" }, - "transactionHash": "0xcb221230765e4bdec37d8c0aa22824638d47f582b9949c3bd88802aaf069ce83", - "abi": [ - { - "inputs": [ - { "internalType": "address", "name": "owner", "type": "address" }, - { "internalType": "uint256", "name": "maxJobs", "type": "uint256" }, - { "internalType": "bytes", "name": "firstJob", "type": "bytes" } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { "internalType": "string", "name": "reason", "type": "string" } - ], - "name": "CallFailed", - "type": "error" - }, - { - "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], - "name": "CronJobIDNotFound", - "type": "error" - }, - { "inputs": [], "name": "DontNeedPerformUpkeep", "type": "error" }, - { "inputs": [], "name": "ExceedsMaxJobs", "type": "error" }, - { "inputs": [], "name": "InvalidHandler", "type": "error" }, - { "inputs": [], "name": "OnlySimulatedBackend", "type": "error" }, - { "inputs": [], "name": "TickDoesntMatchSpec", "type": "error" }, - { "inputs": [], "name": "TickInFuture", "type": "error" }, - { "inputs": [], "name": "TickTooOld", "type": "error" }, - { "inputs": [], "name": "UnknownFieldType", "type": "error" }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "uint256", - "name": "id", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "handler", - "type": "bytes" - } - ], - "name": "CronJobCreated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "uint256", - "name": "id", - "type": "uint256" - } - ], - "name": "CronJobDeleted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "uint256", - "name": "id", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "timestamp", - "type": "uint256" - } - ], - "name": "CronJobExecuted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "uint256", - "name": "id", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "handler", - "type": "bytes" - } - ], - "name": "CronJobUpdated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "target", - "type": "address" - } - ], - "name": "DelegatorAdded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "target", - "type": "address" - } - ], - "name": "DelegatorRemoved", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "to", - "type": "address" - } - ], - "name": "OwnershipTransferRequested", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "to", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Paused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Unpaused", - "type": "event" - }, - { - "inputs": [], - "name": "acceptOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegator", - "type": "address" - } - ], - "name": "addDelegator", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }], - "name": "checkUpkeep", - "outputs": [ - { "internalType": "bool", "name": "", "type": "bool" }, - { "internalType": "bytes", "name": "", "type": "bytes" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { "internalType": "address", "name": "target", "type": "address" }, - { "internalType": "bytes", "name": "handler", "type": "bytes" }, - { - "internalType": "bytes", - "name": "encodedCronSpec", - "type": "bytes" - } - ], - "name": "createCronJobFromEncodedSpec", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], - "name": "deleteCronJob", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getActiveCronJobIDs", - "outputs": [{ "internalType": "uint256[]", "name": "", "type": "uint256[]" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], - "name": "getCronJob", - "outputs": [ - { "internalType": "address", "name": "target", "type": "address" }, - { "internalType": "bytes", "name": "handler", "type": "bytes" }, - { - "internalType": "string", - "name": "cronString", - "type": "string" - }, - { "internalType": "uint256", "name": "nextTick", "type": "uint256" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getDelegators", - "outputs": [{ "internalType": "address[]", "name": "", "type": "address[]" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getNextCronJobIDs", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "paused", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "bytes", "name": "performData", "type": "bytes" }], - "name": "performUpkeep", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegator", - "type": "address" - } - ], - "name": "removeDelegator", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "s_maxJobs", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "to", "type": "address" }], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "unpause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "address", - "name": "newTarget", - "type": "address" - }, - { "internalType": "bytes", "name": "newHandler", "type": "bytes" }, - { - "internalType": "bytes", - "name": "newEncodedCronSpec", - "type": "bytes" - } - ], - "name": "updateCronJob", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "date": "2022-11-27T16:25:12.349Z", - "olds": [] - }, - "MultiCall3": { - "address": "0xD960c6f4D7800daFd4508FAE9bD82b9d15CC4608", - "libraries": {}, - "transactionHash": "0x6a019768739fd1cb4d1a1cd9417914913f1d6284c99559f37034171803a67c8e", - "abi": [ - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "aggregate", - "outputs": [ - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - }, - { - "internalType": "bytes[]", - "name": "returnData", - "type": "bytes[]" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "internalType": "bool", - "name": "allowFailure", - "type": "bool" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call3[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "aggregate3", - "outputs": [ - { - "components": [ - { "internalType": "bool", "name": "success", "type": "bool" }, - { - "internalType": "bytes", - "name": "returnData", - "type": "bytes" - } - ], - "internalType": "struct Multicall3.Result[]", - "name": "returnData", - "type": "tuple[]" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "internalType": "bool", - "name": "allowFailure", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call3Value[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "aggregate3Value", - "outputs": [ - { - "components": [ - { "internalType": "bool", "name": "success", "type": "bool" }, - { - "internalType": "bytes", - "name": "returnData", - "type": "bytes" - } - ], - "internalType": "struct Multicall3.Result[]", - "name": "returnData", - "type": "tuple[]" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "blockAndAggregate", - "outputs": [ - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - }, - { - "components": [ - { "internalType": "bool", "name": "success", "type": "bool" }, - { - "internalType": "bytes", - "name": "returnData", - "type": "bytes" - } - ], - "internalType": "struct Multicall3.Result[]", - "name": "returnData", - "type": "tuple[]" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "getBasefee", - "outputs": [{ "internalType": "uint256", "name": "basefee", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - } - ], - "name": "getBlockHash", - "outputs": [ - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getBlockNumber", - "outputs": [ - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getChainId", - "outputs": [{ "internalType": "uint256", "name": "chainid", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getCurrentBlockCoinbase", - "outputs": [{ "internalType": "address", "name": "coinbase", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getCurrentBlockDifficulty", - "outputs": [ - { - "internalType": "uint256", - "name": "difficulty", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getCurrentBlockGasLimit", - "outputs": [{ "internalType": "uint256", "name": "gaslimit", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getCurrentBlockTimestamp", - "outputs": [ - { - "internalType": "uint256", - "name": "timestamp", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "addr", "type": "address" }], - "name": "getEthBalance", - "outputs": [{ "internalType": "uint256", "name": "balance", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getLastBlockHash", - "outputs": [ - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bool", - "name": "requireSuccess", - "type": "bool" - }, - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "tryAggregate", - "outputs": [ - { - "components": [ - { "internalType": "bool", "name": "success", "type": "bool" }, - { - "internalType": "bytes", - "name": "returnData", - "type": "bytes" - } - ], - "internalType": "struct Multicall3.Result[]", - "name": "returnData", - "type": "tuple[]" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bool", - "name": "requireSuccess", - "type": "bool" - }, - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "tryBlockAndAggregate", - "outputs": [ - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - }, - { - "components": [ - { "internalType": "bool", "name": "success", "type": "bool" }, - { - "internalType": "bytes", - "name": "returnData", - "type": "bytes" - } - ], - "internalType": "struct Multicall3.Result[]", - "name": "returnData", - "type": "tuple[]" - } - ], - "stateMutability": "payable", - "type": "function" - } - ], - "date": "2022-11-27T16:25:12.353Z", - "olds": [] - } - }, - "97": { - "GameFactory": { - "address": "0x5B4aCc9eCE43900f0edC4C222109cBdE7d374858", - "libraries": {}, - "transactionHash": "0x177bb144229962f1b6c7da0e344c2d0f14274c8fa72a986708aba74e254f0bbf", - "abi": [ - { - "inputs": [ - { "internalType": "address", "name": "_game", "type": "address" }, - { - "internalType": "address", - "name": "_cronUpkeep", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_gameCreationAmount", - "type": "uint256" - }, - { - "internalType": "uint256[]", - "name": "_authorizedAmounts", - "type": "uint256[]" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "cronUpkeep", - "type": "address" - } - ], - "name": "CronUpkeepUpdated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "receiver", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "FailedTransfer", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "nextId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "gameAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "implementationVersion", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "creatorAddress", - "type": "address" - } - ], - "name": "GameCreated", - "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" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Paused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "Received", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Unpaused", - "type": "event" - }, - { "stateMutability": "payable", "type": "fallback" }, - { - "inputs": [ - { - "internalType": "uint256[]", - "name": "_authorizedAmounts", - "type": "uint256[]" - } - ], - "name": "addAuthorizedAmounts", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "name": "authorizedAmounts", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { "internalType": "bytes32", "name": "_name", "type": "bytes32" }, - { - "internalType": "uint256", - "name": "_maxPlayers", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_playTimeRange", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_registrationAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_treasuryFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_creatorFee", - "type": "uint256" - }, - { - "internalType": "string", - "name": "_encodedCron", - "type": "string" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "standard", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "internalType": "struct GameV1Interface.Prize[]", - "name": "_prizes", - "type": "tuple[]" - } - ], - "name": "createNewGame", - "outputs": [{ "internalType": "address", "name": "game", "type": "address" }], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "cronUpkeep", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "name": "deployedGames", - "outputs": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "uint256", - "name": "versionId", - "type": "uint256" - }, - { "internalType": "address", "name": "creator", "type": "address" }, - { - "internalType": "address", - "name": "deployedAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "gameCreationAmount", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "gameCreationAmount", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "name": "games", - "outputs": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "address", - "name": "deployedAddress", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_authorizedAmount", - "type": "uint256" - } - ], - "name": "getAuthorizedAmount", - "outputs": [ - { - "components": [ - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { "internalType": "bool", "name": "isUsed", "type": "bool" } - ], - "internalType": "struct GameFactory.AuthorizedAmount", - "name": "gameAuthorisedAmount", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getAuthorizedAmounts", - "outputs": [ - { - "internalType": "uint256[]", - "name": "gameAuthorisedAmounts", - "type": "uint256[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getDeployedGames", - "outputs": [ - { - "components": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "uint256", - "name": "versionId", - "type": "uint256" - }, - { - "internalType": "address", - "name": "creator", - "type": "address" - }, - { - "internalType": "address", - "name": "deployedAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "gameCreationAmount", - "type": "uint256" - } - ], - "internalType": "struct GameFactory.Game[]", - "name": "allGames", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "latestVersionId", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "nextId", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "pauseAllGamesAndFactory", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "paused", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "resumeAllGamesAndFactory", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "_game", "type": "address" }], - "name": "setNewGameV1", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_adminAddress", - "type": "address" - } - ], - "name": "transferAdminOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "newOwner", "type": "address" }], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "unpause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_cronUpkeep", - "type": "address" - } - ], - "name": "updateCronUpkeep", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "name": "usedAuthorizedAmounts", - "outputs": [ - { "internalType": "uint256", "name": "amount", "type": "uint256" }, - { "internalType": "bool", "name": "isUsed", "type": "bool" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "withdrawFunds", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { "stateMutability": "payable", "type": "receive" } - ], - "date": "2022-11-27T15:59:24.095Z", - "olds": [] - }, - "GameV1": { - "address": "0x5fAC8090B45e9948fb1B8E37d2C9EE95a896c4D1", - "libraries": { "Cron": "0x9ccB826aD25Db07D8b86288D7A0ad02dea2c1acC" }, - "transactionHash": "0x101948b12290d19d9d7128e24c65ce80e148007c1b1e75c02937d3008066a0df", - "abi": [ - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "oldAdmin", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newAdmin", - "type": "address" - } - ], - "name": "AdminOwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "CreatorFeeClaimed", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "oldCreator", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newCreator", - "type": "address" - } - ], - "name": "CreatorOwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "jobId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "cronUpkeep", - "type": "address" - } - ], - "name": "CronUpkeepUpdated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "jobId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "string", - "name": "encodedCron", - "type": "string" - } - ], - "name": "EncodedCronUpdated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "oldFactory", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newFactory", - "type": "address" - } - ], - "name": "FactoryOwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "receiver", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "FailedTransfer", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "roundCount", - "type": "uint256" - } - ], - "name": "GameLost", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "claimer", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amountClaimed", - "type": "uint256" - } - ], - "name": "GamePrizeClaimed", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "remainingPlayersCount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amountWon", - "type": "uint256" - } - ], - "name": "GameSplitted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "winnersCounter", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amountWon", - "type": "uint256" - } - ], - "name": "GameWon", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Paused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "playerAddress", - "type": "address" - } - ], - "name": "PlayedRound", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "standard", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "name": "PrizeAdded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "Received", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "playersCount", - "type": "uint256" - } - ], - "name": "RegisteredForGame", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "timelock", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "resetId", - "type": "uint256" - } - ], - "name": "ResetGame", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "timelock", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "playersCount", - "type": "uint256" - } - ], - "name": "StartedGame", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "TreasuryFeeClaimed", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "TreasuryFeeClaimedByFactory", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "emmiter", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "timestamp", - "type": "uint256" - } - ], - "name": "TriggeredDailyCheckpoint", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Unpaused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "playerAddress", - "type": "address" - } - ], - "name": "VoteToSplitPot", - "type": "event" - }, - { "stateMutability": "payable", "type": "fallback" }, - { - "inputs": [], - "name": "MAX_CREATOR_FEE", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "MAX_TREASURY_FEE", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "standard", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "internalType": "struct GameV1Interface.Prize[]", - "name": "_prizes", - "type": "tuple[]" - } - ], - "name": "addPrizes", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "claimCreatorFee", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], - "name": "claimPrize", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "claimTreasuryFee", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "creator", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "creatorAmount", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "creatorFee", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "cronUpkeep", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "encodedCron", - "outputs": [{ "internalType": "string", "name": "", "type": "string" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "factory", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getGameData", - "outputs": [ - { - "components": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "name", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "playerAddressesCount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "remainingPlayersCount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "maxPlayers", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "registrationAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "playTimeRange", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "treasuryFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "creatorFee", - "type": "uint256" - }, - { "internalType": "bool", "name": "isPaused", "type": "bool" }, - { - "internalType": "bool", - "name": "isInProgress", - "type": "bool" - }, - { - "internalType": "address", - "name": "creator", - "type": "address" - }, - { - "internalType": "address", - "name": "admin", - "type": "address" - }, - { - "internalType": "string", - "name": "encodedCron", - "type": "string" - } - ], - "internalType": "struct GameV1Interface.GameData", - "name": "gameData", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "_player", "type": "address" }], - "name": "getPlayer", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "roundRangeLowerLimit", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "roundRangeUpperLimit", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "hasPlayedRound", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "roundCount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { "internalType": "bool", "name": "hasLost", "type": "bool" }, - { "internalType": "bool", "name": "isSplitOk", "type": "bool" } - ], - "internalType": "struct GameV1Interface.Player", - "name": "gamePlayer", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getPlayerAddresses", - "outputs": [ - { - "internalType": "address[]", - "name": "gamePlayerAddresses", - "type": "address[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], - "name": "getPrizes", - "outputs": [ - { - "components": [ - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "standard", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "internalType": "struct GameV1Interface.Prize[]", - "name": "gamePrizes", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getRemainingPlayersCount", - "outputs": [ - { - "internalType": "uint256", - "name": "remainingPlayersCount", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], - "name": "getWinners", - "outputs": [ - { - "components": [ - { - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amountWon", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "prizeClaimed", - "type": "bool" - } - ], - "internalType": "struct GameV1Interface.Winner[]", - "name": "gameWinners", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "id", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "internalType": "address", - "name": "creator", - "type": "address" - }, - { - "internalType": "address", - "name": "cronUpkeep", - "type": "address" - }, - { - "internalType": "bytes32", - "name": "name", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "version", - "type": "uint256" - }, - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "uint256", - "name": "playTimeRange", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "maxPlayers", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "registrationAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "treasuryFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "creatorFee", - "type": "uint256" - }, - { - "internalType": "string", - "name": "encodedCron", - "type": "string" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "standard", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "internalType": "struct GameV1Interface.Prize[]", - "name": "prizes", - "type": "tuple[]" - } - ], - "internalType": "struct GameV1Interface.Initialization", - "name": "_initialization", - "type": "tuple" - } - ], - "name": "initialize", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "isAllPlayersSplitOk", - "outputs": [{ "internalType": "bool", "name": "isSplitOk", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "isGameAllPrizesStandard", - "outputs": [{ "internalType": "bool", "name": "isStandard", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "isGamePayable", - "outputs": [{ "internalType": "bool", "name": "isPayable", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "isInProgress", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "maxPlayers", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "name", - "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "paused", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "playRound", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "playTimeRange", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "name": "playerAddresses", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "", "type": "address" }], - "name": "players", - "outputs": [ - { - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "roundRangeLowerLimit", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "roundRangeUpperLimit", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "hasPlayedRound", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "roundCount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { "internalType": "bool", "name": "hasLost", "type": "bool" }, - { "internalType": "bool", "name": "isSplitOk", "type": "bool" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "registerForGame", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "registrationAmount", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "roundId", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_creatorFee", - "type": "uint256" - } - ], - "name": "setCreatorFee", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_cronUpkeep", - "type": "address" - } - ], - "name": "setCronUpkeep", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "_encodedCron", - "type": "string" - } - ], - "name": "setEncodedCron", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_maxPlayers", - "type": "uint256" - } - ], - "name": "setMaxPlayers", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "bytes32", "name": "_name", "type": "bytes32" }], - "name": "setName", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_treasuryFee", - "type": "uint256" - } - ], - "name": "setTreasuryFee", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "startGame", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_adminAddress", - "type": "address" - } - ], - "name": "transferAdminOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "_creator", "type": "address" }], - "name": "transferCreatorOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "_factory", "type": "address" }], - "name": "transferFactoryOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "treasuryAmount", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "treasuryFee", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "triggerDailyCheckpoint", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "unpause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "version", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "voteToSplitPot", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_receiver", - "type": "address" - } - ], - "name": "withdrawFunds", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { "stateMutability": "payable", "type": "receive" } - ], - "date": "2022-11-27T15:59:24.097Z", - "olds": [] - }, - "CronExternal": { - "address": "0x9ccB826aD25Db07D8b86288D7A0ad02dea2c1acC", - "libraries": {}, - "transactionHash": "0xd0b29d5bb6059714b6142a1f23abd6ae5628c3f7155e116ac2f0d7999ac70a56", - "abi": [ - { - "inputs": [ - { "internalType": "string", "name": "field", "type": "string" }, - { "internalType": "string", "name": "reason", "type": "string" } - ], - "name": "InvalidField", - "type": "error" - }, - { - "inputs": [{ "internalType": "string", "name": "reason", "type": "string" }], - "name": "InvalidSpec", - "type": "error" - }, - { "inputs": [], "name": "ListTooLarge", "type": "error" }, - { "inputs": [], "name": "UnknownFieldType", "type": "error" }, - { - "inputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "minute", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "hour", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "day", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "month", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "dayOfWeek", - "type": "tuple" - } - ], - "internalType": "struct Spec", - "name": "spec", - "type": "tuple" - } - ], - "name": "lastTick", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "minute", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "hour", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "day", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "month", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "dayOfWeek", - "type": "tuple" - } - ], - "internalType": "struct Spec", - "name": "spec", - "type": "tuple" - }, - { - "internalType": "uint256", - "name": "timestamp", - "type": "uint256" - } - ], - "name": "matches", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "minute", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "hour", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "day", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "month", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "dayOfWeek", - "type": "tuple" - } - ], - "internalType": "struct Spec", - "name": "spec", - "type": "tuple" - } - ], - "name": "nextTick", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "minute", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "hour", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "day", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "month", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "dayOfWeek", - "type": "tuple" - } - ], - "internalType": "struct Spec", - "name": "spec", - "type": "tuple" - } - ], - "name": "toCronString", - "outputs": [{ "internalType": "string", "name": "", "type": "string" }], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [{ "internalType": "string", "name": "cronString", "type": "string" }], - "name": "toEncodedSpec", - "outputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [{ "internalType": "string", "name": "cronString", "type": "string" }], - "name": "toSpec", - "outputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "minute", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "hour", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "day", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "month", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "dayOfWeek", - "type": "tuple" - } - ], - "internalType": "struct Spec", - "name": "", - "type": "tuple" - } - ], - "stateMutability": "pure", - "type": "function" - } - ], - "date": "2022-11-27T15:59:24.100Z", - "olds": [] - }, - "CronUpkeep": { - "address": "0xb49E61eA8A132bb507d9AC60ABeBaF8D5e8a500D", - "libraries": { "Cron": "0x9ccB826aD25Db07D8b86288D7A0ad02dea2c1acC" }, - "transactionHash": "0x65cfd492b572b8fba7e6dd7e94e67f5d16c2957d5fb2d721c6d12ffcbc13041b", - "abi": [ - { - "inputs": [ - { "internalType": "address", "name": "owner", "type": "address" }, - { "internalType": "uint256", "name": "maxJobs", "type": "uint256" }, - { "internalType": "bytes", "name": "firstJob", "type": "bytes" } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { "internalType": "string", "name": "reason", "type": "string" } - ], - "name": "CallFailed", - "type": "error" - }, - { - "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], - "name": "CronJobIDNotFound", - "type": "error" - }, - { "inputs": [], "name": "DontNeedPerformUpkeep", "type": "error" }, - { "inputs": [], "name": "ExceedsMaxJobs", "type": "error" }, - { "inputs": [], "name": "InvalidHandler", "type": "error" }, - { "inputs": [], "name": "OnlySimulatedBackend", "type": "error" }, - { "inputs": [], "name": "TickDoesntMatchSpec", "type": "error" }, - { "inputs": [], "name": "TickInFuture", "type": "error" }, - { "inputs": [], "name": "TickTooOld", "type": "error" }, - { "inputs": [], "name": "UnknownFieldType", "type": "error" }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "uint256", - "name": "id", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "handler", - "type": "bytes" - } - ], - "name": "CronJobCreated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "uint256", - "name": "id", - "type": "uint256" - } - ], - "name": "CronJobDeleted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "uint256", - "name": "id", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "timestamp", - "type": "uint256" - } - ], - "name": "CronJobExecuted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "uint256", - "name": "id", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "handler", - "type": "bytes" - } - ], - "name": "CronJobUpdated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "target", - "type": "address" - } - ], - "name": "DelegatorAdded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "target", - "type": "address" - } - ], - "name": "DelegatorRemoved", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "to", - "type": "address" - } - ], - "name": "OwnershipTransferRequested", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "to", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Paused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Unpaused", - "type": "event" - }, - { - "inputs": [], - "name": "acceptOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegator", - "type": "address" - } - ], - "name": "addDelegator", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }], - "name": "checkUpkeep", - "outputs": [ - { "internalType": "bool", "name": "", "type": "bool" }, - { "internalType": "bytes", "name": "", "type": "bytes" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { "internalType": "address", "name": "target", "type": "address" }, - { "internalType": "bytes", "name": "handler", "type": "bytes" }, - { - "internalType": "bytes", - "name": "encodedCronSpec", - "type": "bytes" - } - ], - "name": "createCronJobFromEncodedSpec", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], - "name": "deleteCronJob", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getActiveCronJobIDs", - "outputs": [{ "internalType": "uint256[]", "name": "", "type": "uint256[]" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], - "name": "getCronJob", - "outputs": [ - { "internalType": "address", "name": "target", "type": "address" }, - { "internalType": "bytes", "name": "handler", "type": "bytes" }, - { - "internalType": "string", - "name": "cronString", - "type": "string" - }, - { "internalType": "uint256", "name": "nextTick", "type": "uint256" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getDelegators", - "outputs": [{ "internalType": "address[]", "name": "", "type": "address[]" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getNextCronJobIDs", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "paused", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "bytes", "name": "performData", "type": "bytes" }], - "name": "performUpkeep", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegator", - "type": "address" - } - ], - "name": "removeDelegator", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "s_maxJobs", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "to", "type": "address" }], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "unpause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "address", - "name": "newTarget", - "type": "address" - }, - { "internalType": "bytes", "name": "newHandler", "type": "bytes" }, - { - "internalType": "bytes", - "name": "newEncodedCronSpec", - "type": "bytes" - } - ], - "name": "updateCronJob", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "date": "2022-11-27T15:59:24.102Z", - "olds": [] - }, - "MultiCall3": { - "address": "0x9e5eD465c11ec50DC07481b8c1B69Dee910f28C1", - "libraries": {}, - "transactionHash": "0x913a8fc62180fb0de5e280aaefd29824633e64b229f912e198f1d62dc33dcd12", - "abi": [ - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "aggregate", - "outputs": [ - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - }, - { - "internalType": "bytes[]", - "name": "returnData", - "type": "bytes[]" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "internalType": "bool", - "name": "allowFailure", - "type": "bool" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call3[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "aggregate3", - "outputs": [ - { - "components": [ - { "internalType": "bool", "name": "success", "type": "bool" }, - { - "internalType": "bytes", - "name": "returnData", - "type": "bytes" - } - ], - "internalType": "struct Multicall3.Result[]", - "name": "returnData", - "type": "tuple[]" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "internalType": "bool", - "name": "allowFailure", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call3Value[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "aggregate3Value", - "outputs": [ - { - "components": [ - { "internalType": "bool", "name": "success", "type": "bool" }, - { - "internalType": "bytes", - "name": "returnData", - "type": "bytes" - } - ], - "internalType": "struct Multicall3.Result[]", - "name": "returnData", - "type": "tuple[]" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "blockAndAggregate", - "outputs": [ - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - }, - { - "components": [ - { "internalType": "bool", "name": "success", "type": "bool" }, - { - "internalType": "bytes", - "name": "returnData", - "type": "bytes" - } - ], - "internalType": "struct Multicall3.Result[]", - "name": "returnData", - "type": "tuple[]" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "getBasefee", - "outputs": [{ "internalType": "uint256", "name": "basefee", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - } - ], - "name": "getBlockHash", - "outputs": [ - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getBlockNumber", - "outputs": [ - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getChainId", - "outputs": [{ "internalType": "uint256", "name": "chainid", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getCurrentBlockCoinbase", - "outputs": [{ "internalType": "address", "name": "coinbase", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getCurrentBlockDifficulty", - "outputs": [ - { - "internalType": "uint256", - "name": "difficulty", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getCurrentBlockGasLimit", - "outputs": [{ "internalType": "uint256", "name": "gaslimit", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getCurrentBlockTimestamp", - "outputs": [ - { - "internalType": "uint256", - "name": "timestamp", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "addr", "type": "address" }], - "name": "getEthBalance", - "outputs": [{ "internalType": "uint256", "name": "balance", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getLastBlockHash", - "outputs": [ - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bool", - "name": "requireSuccess", - "type": "bool" - }, - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "tryAggregate", - "outputs": [ - { - "components": [ - { "internalType": "bool", "name": "success", "type": "bool" }, - { - "internalType": "bytes", - "name": "returnData", - "type": "bytes" - } - ], - "internalType": "struct Multicall3.Result[]", - "name": "returnData", - "type": "tuple[]" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bool", - "name": "requireSuccess", - "type": "bool" - }, - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "tryBlockAndAggregate", - "outputs": [ - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - }, - { - "components": [ - { "internalType": "bool", "name": "success", "type": "bool" }, - { - "internalType": "bytes", - "name": "returnData", - "type": "bytes" - } - ], - "internalType": "struct Multicall3.Result[]", - "name": "returnData", - "type": "tuple[]" - } - ], - "stateMutability": "payable", - "type": "function" - } - ], - "date": "2022-11-27T15:59:24.104Z", - "olds": [] - } - }, - "80001": { - "GameFactory": { - "address": "0xEC767280c8b789ef260E8e7D63Ee85d023C5F9ea", - "libraries": {}, - "transactionHash": "0xa38d62ed0097c94087d40d9a8b707e0e980f86afc7ea4888ee73b74186aeefc7", - "abi": [ - { - "inputs": [ - { "internalType": "address", "name": "_game", "type": "address" }, - { - "internalType": "address", - "name": "_cronUpkeep", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_gameCreationAmount", - "type": "uint256" - }, - { - "internalType": "uint256[]", - "name": "_authorizedAmounts", - "type": "uint256[]" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "cronUpkeep", - "type": "address" - } - ], - "name": "CronUpkeepUpdated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "receiver", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "FailedTransfer", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "nextId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "gameAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "implementationVersion", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "creatorAddress", - "type": "address" - } - ], - "name": "GameCreated", - "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" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Paused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "Received", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Unpaused", - "type": "event" - }, - { "stateMutability": "payable", "type": "fallback" }, - { - "inputs": [ - { - "internalType": "uint256[]", - "name": "_authorizedAmounts", - "type": "uint256[]" - } - ], - "name": "addAuthorizedAmounts", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "name": "authorizedAmounts", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { "internalType": "bytes32", "name": "_name", "type": "bytes32" }, - { - "internalType": "uint256", - "name": "_maxPlayers", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_playTimeRange", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_registrationAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_treasuryFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_creatorFee", - "type": "uint256" - }, - { - "internalType": "string", - "name": "_encodedCron", - "type": "string" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "standard", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "internalType": "struct GameV1Interface.Prize[]", - "name": "_prizes", - "type": "tuple[]" - } - ], - "name": "createNewGame", - "outputs": [{ "internalType": "address", "name": "game", "type": "address" }], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "cronUpkeep", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "name": "deployedGames", - "outputs": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "uint256", - "name": "versionId", - "type": "uint256" - }, - { "internalType": "address", "name": "creator", "type": "address" }, - { - "internalType": "address", - "name": "deployedAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "gameCreationAmount", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "gameCreationAmount", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "name": "games", - "outputs": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "address", - "name": "deployedAddress", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_authorizedAmount", - "type": "uint256" - } - ], - "name": "getAuthorizedAmount", - "outputs": [ - { - "components": [ - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { "internalType": "bool", "name": "isUsed", "type": "bool" } - ], - "internalType": "struct GameFactory.AuthorizedAmount", - "name": "gameAuthorisedAmount", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getAuthorizedAmounts", - "outputs": [ - { - "internalType": "uint256[]", - "name": "gameAuthorisedAmounts", - "type": "uint256[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getDeployedGames", - "outputs": [ - { - "components": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "uint256", - "name": "versionId", - "type": "uint256" - }, - { - "internalType": "address", - "name": "creator", - "type": "address" - }, - { - "internalType": "address", - "name": "deployedAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "gameCreationAmount", - "type": "uint256" - } - ], - "internalType": "struct GameFactory.Game[]", - "name": "allGames", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "latestVersionId", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "nextId", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "pauseAllGamesAndFactory", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "paused", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "resumeAllGamesAndFactory", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "_game", "type": "address" }], - "name": "setNewGameV1", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_adminAddress", - "type": "address" - } - ], - "name": "transferAdminOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "newOwner", "type": "address" }], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "unpause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_cronUpkeep", - "type": "address" - } - ], - "name": "updateCronUpkeep", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "name": "usedAuthorizedAmounts", - "outputs": [ - { "internalType": "uint256", "name": "amount", "type": "uint256" }, - { "internalType": "bool", "name": "isUsed", "type": "bool" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "withdrawFunds", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { "stateMutability": "payable", "type": "receive" } - ], - "date": "2022-11-27T16:12:17.864Z", - "olds": [] - }, - "GameV1": { - "address": "0x4BC8b204ab339969Dc45C631ecc2461F464d34c8", - "libraries": { "Cron": "0xa66C8C212306f6f41bbA974eeD7F72DCd46a55BB" }, - "transactionHash": "0xdec0bafc2c11abc16fad2321c9c788b5fdbc9ee25392006a1909a676b8090291", - "abi": [ - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "oldAdmin", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newAdmin", - "type": "address" - } - ], - "name": "AdminOwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "CreatorFeeClaimed", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "oldCreator", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newCreator", - "type": "address" - } - ], - "name": "CreatorOwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "jobId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "cronUpkeep", - "type": "address" - } - ], - "name": "CronUpkeepUpdated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "jobId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "string", - "name": "encodedCron", - "type": "string" - } - ], - "name": "EncodedCronUpdated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "oldFactory", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newFactory", - "type": "address" - } - ], - "name": "FactoryOwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "receiver", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "FailedTransfer", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "roundCount", - "type": "uint256" - } - ], - "name": "GameLost", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "claimer", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amountClaimed", - "type": "uint256" - } - ], - "name": "GamePrizeClaimed", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "remainingPlayersCount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amountWon", - "type": "uint256" - } - ], - "name": "GameSplitted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "winnersCounter", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amountWon", - "type": "uint256" - } - ], - "name": "GameWon", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Paused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "playerAddress", - "type": "address" - } - ], - "name": "PlayedRound", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "standard", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "name": "PrizeAdded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "Received", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "playersCount", - "type": "uint256" - } - ], - "name": "RegisteredForGame", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "timelock", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "resetId", - "type": "uint256" - } - ], - "name": "ResetGame", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "timelock", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "playersCount", - "type": "uint256" - } - ], - "name": "StartedGame", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "TreasuryFeeClaimed", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "TreasuryFeeClaimedByFactory", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "emmiter", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "timestamp", - "type": "uint256" - } - ], - "name": "TriggeredDailyCheckpoint", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Unpaused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "playerAddress", - "type": "address" - } - ], - "name": "VoteToSplitPot", - "type": "event" - }, - { "stateMutability": "payable", "type": "fallback" }, - { - "inputs": [], - "name": "MAX_CREATOR_FEE", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "MAX_TREASURY_FEE", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "standard", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "internalType": "struct GameV1Interface.Prize[]", - "name": "_prizes", - "type": "tuple[]" - } - ], - "name": "addPrizes", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "claimCreatorFee", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], - "name": "claimPrize", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "claimTreasuryFee", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "creator", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "creatorAmount", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "creatorFee", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "cronUpkeep", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "encodedCron", - "outputs": [{ "internalType": "string", "name": "", "type": "string" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "factory", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getGameData", - "outputs": [ - { - "components": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "name", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "playerAddressesCount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "remainingPlayersCount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "maxPlayers", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "registrationAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "playTimeRange", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "treasuryFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "creatorFee", - "type": "uint256" - }, - { "internalType": "bool", "name": "isPaused", "type": "bool" }, - { - "internalType": "bool", - "name": "isInProgress", - "type": "bool" - }, - { - "internalType": "address", - "name": "creator", - "type": "address" - }, - { - "internalType": "address", - "name": "admin", - "type": "address" - }, - { - "internalType": "string", - "name": "encodedCron", - "type": "string" - } - ], - "internalType": "struct GameV1Interface.GameData", - "name": "gameData", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "_player", "type": "address" }], - "name": "getPlayer", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "roundRangeLowerLimit", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "roundRangeUpperLimit", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "hasPlayedRound", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "roundCount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { "internalType": "bool", "name": "hasLost", "type": "bool" }, - { "internalType": "bool", "name": "isSplitOk", "type": "bool" } - ], - "internalType": "struct GameV1Interface.Player", - "name": "gamePlayer", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getPlayerAddresses", - "outputs": [ - { - "internalType": "address[]", - "name": "gamePlayerAddresses", - "type": "address[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], - "name": "getPrizes", - "outputs": [ - { - "components": [ - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "standard", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "internalType": "struct GameV1Interface.Prize[]", - "name": "gamePrizes", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getRemainingPlayersCount", - "outputs": [ - { - "internalType": "uint256", - "name": "remainingPlayersCount", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], - "name": "getWinners", - "outputs": [ - { - "components": [ - { - "internalType": "uint256", - "name": "roundId", - "type": "uint256" - }, - { - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amountWon", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "prizeClaimed", - "type": "bool" - } - ], - "internalType": "struct GameV1Interface.Winner[]", - "name": "gameWinners", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "id", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "internalType": "address", - "name": "creator", - "type": "address" - }, - { - "internalType": "address", - "name": "cronUpkeep", - "type": "address" - }, - { - "internalType": "bytes32", - "name": "name", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "version", - "type": "uint256" - }, - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "uint256", - "name": "playTimeRange", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "maxPlayers", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "registrationAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "treasuryFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "creatorFee", - "type": "uint256" - }, - { - "internalType": "string", - "name": "encodedCron", - "type": "string" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "standard", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "internalType": "struct GameV1Interface.Prize[]", - "name": "prizes", - "type": "tuple[]" - } - ], - "internalType": "struct GameV1Interface.Initialization", - "name": "_initialization", - "type": "tuple" - } - ], - "name": "initialize", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "isAllPlayersSplitOk", - "outputs": [{ "internalType": "bool", "name": "isSplitOk", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "isGameAllPrizesStandard", - "outputs": [{ "internalType": "bool", "name": "isStandard", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "isGamePayable", - "outputs": [{ "internalType": "bool", "name": "isPayable", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "isInProgress", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "maxPlayers", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "name", - "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "paused", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "playRound", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "playTimeRange", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "name": "playerAddresses", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "", "type": "address" }], - "name": "players", - "outputs": [ - { - "internalType": "address", - "name": "playerAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "roundRangeLowerLimit", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "roundRangeUpperLimit", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "hasPlayedRound", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "roundCount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "position", - "type": "uint256" - }, - { "internalType": "bool", "name": "hasLost", "type": "bool" }, - { "internalType": "bool", "name": "isSplitOk", "type": "bool" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "registerForGame", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "registrationAmount", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "roundId", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_creatorFee", - "type": "uint256" - } - ], - "name": "setCreatorFee", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_cronUpkeep", - "type": "address" - } - ], - "name": "setCronUpkeep", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "_encodedCron", - "type": "string" - } - ], - "name": "setEncodedCron", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_maxPlayers", - "type": "uint256" - } - ], - "name": "setMaxPlayers", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "bytes32", "name": "_name", "type": "bytes32" }], - "name": "setName", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_treasuryFee", - "type": "uint256" - } - ], - "name": "setTreasuryFee", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "startGame", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_adminAddress", - "type": "address" - } - ], - "name": "transferAdminOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "_creator", "type": "address" }], - "name": "transferCreatorOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "_factory", "type": "address" }], - "name": "transferFactoryOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "treasuryAmount", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "treasuryFee", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "triggerDailyCheckpoint", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "unpause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "version", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "voteToSplitPot", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_receiver", - "type": "address" - } - ], - "name": "withdrawFunds", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { "stateMutability": "payable", "type": "receive" } - ], - "date": "2022-11-27T16:12:17.869Z", - "olds": [] - }, - "CronExternal": { - "address": "0xa66C8C212306f6f41bbA974eeD7F72DCd46a55BB", - "libraries": {}, - "transactionHash": "0xdbd29928a0e8982be758fb4bc058aa9447f0c1944580fbb9f649ce56283a5e38", - "abi": [ - { - "inputs": [ - { "internalType": "string", "name": "field", "type": "string" }, - { "internalType": "string", "name": "reason", "type": "string" } - ], - "name": "InvalidField", - "type": "error" - }, - { - "inputs": [{ "internalType": "string", "name": "reason", "type": "string" }], - "name": "InvalidSpec", - "type": "error" - }, - { "inputs": [], "name": "ListTooLarge", "type": "error" }, - { "inputs": [], "name": "UnknownFieldType", "type": "error" }, - { - "inputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "minute", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "hour", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "day", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "month", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "dayOfWeek", - "type": "tuple" - } - ], - "internalType": "struct Spec", - "name": "spec", - "type": "tuple" - } - ], - "name": "lastTick", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "minute", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "hour", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "day", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "month", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "dayOfWeek", - "type": "tuple" - } - ], - "internalType": "struct Spec", - "name": "spec", - "type": "tuple" - }, - { - "internalType": "uint256", - "name": "timestamp", - "type": "uint256" - } - ], - "name": "matches", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "minute", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "hour", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "day", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "month", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "dayOfWeek", - "type": "tuple" - } - ], - "internalType": "struct Spec", - "name": "spec", - "type": "tuple" - } - ], - "name": "nextTick", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "minute", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "hour", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "day", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "month", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "dayOfWeek", - "type": "tuple" - } - ], - "internalType": "struct Spec", - "name": "spec", - "type": "tuple" - } - ], - "name": "toCronString", - "outputs": [{ "internalType": "string", "name": "", "type": "string" }], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [{ "internalType": "string", "name": "cronString", "type": "string" }], - "name": "toEncodedSpec", - "outputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [{ "internalType": "string", "name": "cronString", "type": "string" }], - "name": "toSpec", - "outputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "minute", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "hour", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "day", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "month", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "enum FieldType", - "name": "fieldType", - "type": "FieldType" - }, - { - "internalType": "uint8", - "name": "singleValue", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "interval", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeStart", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "rangeEnd", - "type": "uint8" - }, - { - "internalType": "uint8", - "name": "listLength", - "type": "uint8" - }, - { - "internalType": "uint8[26]", - "name": "list", - "type": "uint8[26]" - } - ], - "internalType": "struct Field", - "name": "dayOfWeek", - "type": "tuple" - } - ], - "internalType": "struct Spec", - "name": "", - "type": "tuple" - } - ], - "stateMutability": "pure", - "type": "function" - } - ], - "date": "2022-11-27T16:12:17.873Z", - "olds": [] - }, - "CronUpkeep": { - "address": "0xa9296aF2f631086d52fD02693F2A8996dD4156a0", - "libraries": { "Cron": "0xa66C8C212306f6f41bbA974eeD7F72DCd46a55BB" }, - "transactionHash": "0xe880f8e46acc54eabde06487b94f06920cddfff4e7ef38de0a8db52cefc4883f", - "abi": [ - { - "inputs": [ - { "internalType": "address", "name": "owner", "type": "address" }, - { "internalType": "uint256", "name": "maxJobs", "type": "uint256" }, - { "internalType": "bytes", "name": "firstJob", "type": "bytes" } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { "internalType": "string", "name": "reason", "type": "string" } - ], - "name": "CallFailed", - "type": "error" - }, - { - "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], - "name": "CronJobIDNotFound", - "type": "error" - }, - { "inputs": [], "name": "DontNeedPerformUpkeep", "type": "error" }, - { "inputs": [], "name": "ExceedsMaxJobs", "type": "error" }, - { "inputs": [], "name": "InvalidHandler", "type": "error" }, - { "inputs": [], "name": "OnlySimulatedBackend", "type": "error" }, - { "inputs": [], "name": "TickDoesntMatchSpec", "type": "error" }, - { "inputs": [], "name": "TickInFuture", "type": "error" }, - { "inputs": [], "name": "TickTooOld", "type": "error" }, - { "inputs": [], "name": "UnknownFieldType", "type": "error" }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "uint256", - "name": "id", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "handler", - "type": "bytes" - } - ], - "name": "CronJobCreated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "uint256", - "name": "id", - "type": "uint256" - } - ], - "name": "CronJobDeleted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "uint256", - "name": "id", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "timestamp", - "type": "uint256" - } - ], - "name": "CronJobExecuted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "uint256", - "name": "id", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "handler", - "type": "bytes" - } - ], - "name": "CronJobUpdated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "target", - "type": "address" - } - ], - "name": "DelegatorAdded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "target", - "type": "address" - } - ], - "name": "DelegatorRemoved", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "to", - "type": "address" - } - ], - "name": "OwnershipTransferRequested", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "to", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Paused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Unpaused", - "type": "event" - }, - { - "inputs": [], - "name": "acceptOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegator", - "type": "address" - } - ], - "name": "addDelegator", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }], - "name": "checkUpkeep", - "outputs": [ - { "internalType": "bool", "name": "", "type": "bool" }, - { "internalType": "bytes", "name": "", "type": "bytes" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { "internalType": "address", "name": "target", "type": "address" }, - { "internalType": "bytes", "name": "handler", "type": "bytes" }, - { - "internalType": "bytes", - "name": "encodedCronSpec", - "type": "bytes" - } - ], - "name": "createCronJobFromEncodedSpec", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], - "name": "deleteCronJob", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getActiveCronJobIDs", - "outputs": [{ "internalType": "uint256[]", "name": "", "type": "uint256[]" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], - "name": "getCronJob", - "outputs": [ - { "internalType": "address", "name": "target", "type": "address" }, - { "internalType": "bytes", "name": "handler", "type": "bytes" }, - { - "internalType": "string", - "name": "cronString", - "type": "string" - }, - { "internalType": "uint256", "name": "nextTick", "type": "uint256" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getDelegators", - "outputs": [{ "internalType": "address[]", "name": "", "type": "address[]" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getNextCronJobIDs", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "paused", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "bytes", "name": "performData", "type": "bytes" }], - "name": "performUpkeep", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegator", - "type": "address" - } - ], - "name": "removeDelegator", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "s_maxJobs", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "to", "type": "address" }], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "unpause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { "internalType": "uint256", "name": "id", "type": "uint256" }, - { - "internalType": "address", - "name": "newTarget", - "type": "address" - }, - { "internalType": "bytes", "name": "newHandler", "type": "bytes" }, - { - "internalType": "bytes", - "name": "newEncodedCronSpec", - "type": "bytes" - } - ], - "name": "updateCronJob", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "date": "2022-11-27T16:12:17.877Z", - "olds": [] - }, - "MultiCall3": { - "address": "0xCcE2Ce77027F4Cc43Db57Cb400061f5DAaD96b68", - "libraries": {}, - "transactionHash": "0x6c68e8941f425053641ca2f0984655b2ceadcef450523c02de01551397ef5901", - "abi": [ - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "aggregate", - "outputs": [ - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - }, - { - "internalType": "bytes[]", - "name": "returnData", - "type": "bytes[]" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "internalType": "bool", - "name": "allowFailure", - "type": "bool" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call3[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "aggregate3", - "outputs": [ - { - "components": [ - { "internalType": "bool", "name": "success", "type": "bool" }, - { - "internalType": "bytes", - "name": "returnData", - "type": "bytes" - } - ], - "internalType": "struct Multicall3.Result[]", - "name": "returnData", - "type": "tuple[]" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "internalType": "bool", - "name": "allowFailure", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call3Value[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "aggregate3Value", - "outputs": [ - { - "components": [ - { "internalType": "bool", "name": "success", "type": "bool" }, - { - "internalType": "bytes", - "name": "returnData", - "type": "bytes" - } - ], - "internalType": "struct Multicall3.Result[]", - "name": "returnData", - "type": "tuple[]" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "blockAndAggregate", - "outputs": [ - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - }, - { - "components": [ - { "internalType": "bool", "name": "success", "type": "bool" }, - { - "internalType": "bytes", - "name": "returnData", - "type": "bytes" - } - ], - "internalType": "struct Multicall3.Result[]", - "name": "returnData", - "type": "tuple[]" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "getBasefee", - "outputs": [{ "internalType": "uint256", "name": "basefee", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - } - ], - "name": "getBlockHash", - "outputs": [ - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getBlockNumber", - "outputs": [ - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getChainId", - "outputs": [{ "internalType": "uint256", "name": "chainid", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getCurrentBlockCoinbase", - "outputs": [{ "internalType": "address", "name": "coinbase", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getCurrentBlockDifficulty", - "outputs": [ - { - "internalType": "uint256", - "name": "difficulty", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getCurrentBlockGasLimit", - "outputs": [{ "internalType": "uint256", "name": "gaslimit", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getCurrentBlockTimestamp", - "outputs": [ - { - "internalType": "uint256", - "name": "timestamp", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "addr", "type": "address" }], - "name": "getEthBalance", - "outputs": [{ "internalType": "uint256", "name": "balance", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getLastBlockHash", - "outputs": [ - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bool", - "name": "requireSuccess", - "type": "bool" - }, - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "tryAggregate", - "outputs": [ - { - "components": [ - { "internalType": "bool", "name": "success", "type": "bool" }, - { - "internalType": "bytes", - "name": "returnData", - "type": "bytes" - } - ], - "internalType": "struct Multicall3.Result[]", - "name": "returnData", - "type": "tuple[]" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bool", - "name": "requireSuccess", - "type": "bool" - }, - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { "internalType": "bytes", "name": "callData", "type": "bytes" } - ], - "internalType": "struct Multicall3.Call[]", - "name": "calls", - "type": "tuple[]" - } - ], - "name": "tryBlockAndAggregate", - "outputs": [ - { - "internalType": "uint256", - "name": "blockNumber", - "type": "uint256" - }, - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - }, - { - "components": [ - { "internalType": "bool", "name": "success", "type": "bool" }, - { - "internalType": "bytes", - "name": "returnData", - "type": "bytes" - } - ], - "internalType": "struct Multicall3.Result[]", - "name": "returnData", - "type": "tuple[]" - } - ], - "stateMutability": "payable", - "type": "function" - } - ], - "date": "2022-11-27T16:12:17.881Z", - "olds": [] - } - } -} +{"5":{"GameFactory":{"address":"0xaa318806D683765E6576636A2d88EE14fDa9c720","libraries":{},"transactionHash":"0x3b41d62fc13c88dd3d03acfb4c061dfea39502ecf873a688a9dea9d76fd8bc88","abi":[{"inputs":[{"internalType":"address","name":"_game","type":"address"},{"internalType":"address","name":"_cronUpkeep","type":"address"},{"internalType":"uint256","name":"_gameCreationAmount","type":"uint256"},{"internalType":"uint256[]","name":"_authorizedAmounts","type":"uint256[]"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"cronUpkeep","type":"address"}],"name":"CronUpkeepUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FailedTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"nextId","type":"uint256"},{"indexed":false,"internalType":"address","name":"gameAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"implementationVersion","type":"uint256"},{"indexed":false,"internalType":"address","name":"creatorAddress","type":"address"}],"name":"GameCreated","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"uint256[]","name":"_authorizedAmounts","type":"uint256[]"}],"name":"addAuthorizedAmounts","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"authorizedAmounts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"},{"internalType":"uint256","name":"_maxPlayers","type":"uint256"},{"internalType":"uint256","name":"_playTimeRange","type":"uint256"},{"internalType":"uint256","name":"_registrationAmount","type":"uint256"},{"internalType":"uint256","name":"_treasuryFee","type":"uint256"},{"internalType":"uint256","name":"_creatorFee","type":"uint256"},{"internalType":"string","name":"_encodedCron","type":"string"},{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"_prizes","type":"tuple[]"}],"name":"createNewGame","outputs":[{"internalType":"address","name":"game","type":"address"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"cronUpkeep","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"deployedGames","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"deployedAddress","type":"address"},{"internalType":"uint256","name":"gameCreationAmount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"gameCreationAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"games","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"deployedAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_authorizedAmount","type":"uint256"}],"name":"getAuthorizedAmount","outputs":[{"components":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isUsed","type":"bool"}],"internalType":"struct GameFactory.AuthorizedAmount","name":"gameAuthorisedAmount","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAuthorizedAmounts","outputs":[{"internalType":"uint256[]","name":"gameAuthorisedAmounts","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDeployedGames","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"deployedAddress","type":"address"},{"internalType":"uint256","name":"gameCreationAmount","type":"uint256"}],"internalType":"struct GameFactory.Game[]","name":"allGames","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestVersionId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nextId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pauseAllGamesAndFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"resumeAllGamesAndFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_game","type":"address"}],"name":"setNewGameV1","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adminAddress","type":"address"}],"name":"transferAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_cronUpkeep","type":"address"}],"name":"updateCronUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"usedAuthorizedAmounts","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isUsed","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"date":"2022-11-27T16:25:12.333Z","olds":[]},"GameV1":{"address":"0x82BF8997DC54A3E447BcF4E636cBFc45A13D0Ed9","libraries":{"Cron":"0xb37EEC7c8a7312687777e4E61c4D2C12e2Fe0DD2"},"transactionHash":"0x69063710025c28aa4125a972369ee0d91df4735dfb88eae96407788228313c19","abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"CreatorFeeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldCreator","type":"address"},{"indexed":false,"internalType":"address","name":"newCreator","type":"address"}],"name":"CreatorOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"jobId","type":"uint256"},{"indexed":false,"internalType":"address","name":"cronUpkeep","type":"address"}],"name":"CronUpkeepUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"jobId","type":"uint256"},{"indexed":false,"internalType":"string","name":"encodedCron","type":"string"}],"name":"EncodedCronUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldFactory","type":"address"},{"indexed":false,"internalType":"address","name":"newFactory","type":"address"}],"name":"FactoryOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FailedTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"roundCount","type":"uint256"}],"name":"GameLost","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"claimer","type":"address"},{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountClaimed","type":"uint256"}],"name":"GamePrizeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountWon","type":"uint256"}],"name":"GameSplitted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"winnersCounter","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountWon","type":"uint256"}],"name":"GameWon","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"}],"name":"PlayedRound","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"position","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"standard","type":"uint256"},{"indexed":false,"internalType":"address","name":"contractAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"PrizeAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"playersCount","type":"uint256"}],"name":"RegisteredForGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timelock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"resetId","type":"uint256"}],"name":"ResetGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timelock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"playersCount","type":"uint256"}],"name":"StartedGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TreasuryFeeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TreasuryFeeClaimedByFactory","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"emmiter","type":"address"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"TriggeredDailyCheckpoint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"}],"name":"VoteToSplitPot","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"MAX_CREATOR_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_TREASURY_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"_prizes","type":"tuple[]"}],"name":"addPrizes","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"claimCreatorFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"claimPrize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimTreasuryFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"creator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"creatorAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"creatorFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cronUpkeep","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"encodedCron","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"factory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getGameData","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"roundId","type":"uint256"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"uint256","name":"playerAddressesCount","type":"uint256"},{"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"},{"internalType":"uint256","name":"maxPlayers","type":"uint256"},{"internalType":"uint256","name":"registrationAmount","type":"uint256"},{"internalType":"uint256","name":"playTimeRange","type":"uint256"},{"internalType":"uint256","name":"treasuryFee","type":"uint256"},{"internalType":"uint256","name":"creatorFee","type":"uint256"},{"internalType":"bool","name":"isPaused","type":"bool"},{"internalType":"bool","name":"isInProgress","type":"bool"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"admin","type":"address"},{"internalType":"string","name":"encodedCron","type":"string"}],"internalType":"struct GameV1Interface.GameData","name":"gameData","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_player","type":"address"}],"name":"getPlayer","outputs":[{"components":[{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"roundRangeLowerLimit","type":"uint256"},{"internalType":"uint256","name":"roundRangeUpperLimit","type":"uint256"},{"internalType":"bool","name":"hasPlayedRound","type":"bool"},{"internalType":"uint256","name":"roundCount","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"hasLost","type":"bool"},{"internalType":"bool","name":"isSplitOk","type":"bool"}],"internalType":"struct GameV1Interface.Player","name":"gamePlayer","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getPlayerAddresses","outputs":[{"internalType":"address[]","name":"gamePlayerAddresses","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"getPrizes","outputs":[{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"gamePrizes","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRemainingPlayersCount","outputs":[{"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"getWinners","outputs":[{"components":[{"internalType":"uint256","name":"roundId","type":"uint256"},{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"amountWon","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"prizeClaimed","type":"bool"}],"internalType":"struct GameV1Interface.Winner[]","name":"gameWinners","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"id","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"cronUpkeep","type":"address"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"uint256","name":"version","type":"uint256"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"playTimeRange","type":"uint256"},{"internalType":"uint256","name":"maxPlayers","type":"uint256"},{"internalType":"uint256","name":"registrationAmount","type":"uint256"},{"internalType":"uint256","name":"treasuryFee","type":"uint256"},{"internalType":"uint256","name":"creatorFee","type":"uint256"},{"internalType":"string","name":"encodedCron","type":"string"},{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"prizes","type":"tuple[]"}],"internalType":"struct GameV1Interface.Initialization","name":"_initialization","type":"tuple"}],"name":"initialize","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"isAllPlayersSplitOk","outputs":[{"internalType":"bool","name":"isSplitOk","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isGameAllPrizesStandard","outputs":[{"internalType":"bool","name":"isStandard","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isGamePayable","outputs":[{"internalType":"bool","name":"isPayable","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isInProgress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxPlayers","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"playRound","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"playTimeRange","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"playerAddresses","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"players","outputs":[{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"roundRangeLowerLimit","type":"uint256"},{"internalType":"uint256","name":"roundRangeUpperLimit","type":"uint256"},{"internalType":"bool","name":"hasPlayedRound","type":"bool"},{"internalType":"uint256","name":"roundCount","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"hasLost","type":"bool"},{"internalType":"bool","name":"isSplitOk","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"registerForGame","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"registrationAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"roundId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_creatorFee","type":"uint256"}],"name":"setCreatorFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_cronUpkeep","type":"address"}],"name":"setCronUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_encodedCron","type":"string"}],"name":"setEncodedCron","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxPlayers","type":"uint256"}],"name":"setMaxPlayers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_treasuryFee","type":"uint256"}],"name":"setTreasuryFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startGame","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adminAddress","type":"address"}],"name":"transferAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_creator","type":"address"}],"name":"transferCreatorOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_factory","type":"address"}],"name":"transferFactoryOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"treasuryAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"treasuryFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"triggerDailyCheckpoint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"voteToSplitPot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_receiver","type":"address"}],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"date":"2022-11-27T16:25:12.340Z","olds":[]},"CronExternal":{"address":"0xb37EEC7c8a7312687777e4E61c4D2C12e2Fe0DD2","libraries":{},"transactionHash":"0x48e281132d77caeb76cf8fe7d7650daca12ef201e5422c33a4d65d4b485b8989","abi":[{"inputs":[{"internalType":"string","name":"field","type":"string"},{"internalType":"string","name":"reason","type":"string"}],"name":"InvalidField","type":"error"},{"inputs":[{"internalType":"string","name":"reason","type":"string"}],"name":"InvalidSpec","type":"error"},{"inputs":[],"name":"ListTooLarge","type":"error"},{"inputs":[],"name":"UnknownFieldType","type":"error"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"lastTick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"},{"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"matches","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"nextTick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"toCronString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"cronString","type":"string"}],"name":"toEncodedSpec","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"cronString","type":"string"}],"name":"toSpec","outputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"}],"date":"2022-11-27T16:25:12.345Z","olds":[]},"CronUpkeep":{"address":"0x45aa5aec20F3019A707D0EFb1C6282c4F0Aea44e","libraries":{"Cron":"0xb37EEC7c8a7312687777e4E61c4D2C12e2Fe0DD2"},"transactionHash":"0xcb221230765e4bdec37d8c0aa22824638d47f582b9949c3bd88802aaf069ce83","abi":[{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"maxJobs","type":"uint256"},{"internalType":"bytes","name":"firstJob","type":"bytes"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"reason","type":"string"}],"name":"CallFailed","type":"error"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"CronJobIDNotFound","type":"error"},{"inputs":[],"name":"DontNeedPerformUpkeep","type":"error"},{"inputs":[],"name":"ExceedsMaxJobs","type":"error"},{"inputs":[],"name":"InvalidHandler","type":"error"},{"inputs":[],"name":"OnlySimulatedBackend","type":"error"},{"inputs":[],"name":"TickDoesntMatchSpec","type":"error"},{"inputs":[],"name":"TickInFuture","type":"error"},{"inputs":[],"name":"TickTooOld","type":"error"},{"inputs":[],"name":"UnknownFieldType","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"bytes","name":"handler","type":"bytes"}],"name":"CronJobCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"CronJobDeleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"CronJobExecuted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"bytes","name":"handler","type":"bytes"}],"name":"CronJobUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"target","type":"address"}],"name":"DelegatorAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"target","type":"address"}],"name":"DelegatorRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferRequested","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"}],"name":"addDelegator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"name":"checkUpkeep","outputs":[{"internalType":"bool","name":"","type":"bool"},{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"handler","type":"bytes"},{"internalType":"bytes","name":"encodedCronSpec","type":"bytes"}],"name":"createCronJobFromEncodedSpec","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"deleteCronJob","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getActiveCronJobIDs","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"getCronJob","outputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"handler","type":"bytes"},{"internalType":"string","name":"cronString","type":"string"},{"internalType":"uint256","name":"nextTick","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDelegators","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getNextCronJobIDs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"performData","type":"bytes"}],"name":"performUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"}],"name":"removeDelegator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"s_maxJobs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"newTarget","type":"address"},{"internalType":"bytes","name":"newHandler","type":"bytes"},{"internalType":"bytes","name":"newEncodedCronSpec","type":"bytes"}],"name":"updateCronJob","outputs":[],"stateMutability":"nonpayable","type":"function"}],"date":"2022-11-27T16:25:12.349Z","olds":[]},"MultiCall3":{"address":"0xD960c6f4D7800daFd4508FAE9bD82b9d15CC4608","libraries":{},"transactionHash":"0x6a019768739fd1cb4d1a1cd9417914913f1d6284c99559f37034171803a67c8e","abi":[{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"aggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes[]","name":"returnData","type":"bytes[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"allowFailure","type":"bool"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call3[]","name":"calls","type":"tuple[]"}],"name":"aggregate3","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"allowFailure","type":"bool"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call3Value[]","name":"calls","type":"tuple[]"}],"name":"aggregate3Value","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"blockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"getBasefee","outputs":[{"internalType":"uint256","name":"basefee","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"name":"getBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getBlockNumber","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getChainId","outputs":[{"internalType":"uint256","name":"chainid","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockCoinbase","outputs":[{"internalType":"address","name":"coinbase","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockDifficulty","outputs":[{"internalType":"uint256","name":"difficulty","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockGasLimit","outputs":[{"internalType":"uint256","name":"gaslimit","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockTimestamp","outputs":[{"internalType":"uint256","name":"timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"getEthBalance","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getLastBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"tryAggregate","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"tryBlockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"}],"date":"2022-11-27T16:25:12.353Z","olds":[]}},"97":{"GameFactory":{"address":"0x5B4aCc9eCE43900f0edC4C222109cBdE7d374858","libraries":{},"transactionHash":"0x177bb144229962f1b6c7da0e344c2d0f14274c8fa72a986708aba74e254f0bbf","abi":[{"inputs":[{"internalType":"address","name":"_game","type":"address"},{"internalType":"address","name":"_cronUpkeep","type":"address"},{"internalType":"uint256","name":"_gameCreationAmount","type":"uint256"},{"internalType":"uint256[]","name":"_authorizedAmounts","type":"uint256[]"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"cronUpkeep","type":"address"}],"name":"CronUpkeepUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FailedTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"nextId","type":"uint256"},{"indexed":false,"internalType":"address","name":"gameAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"implementationVersion","type":"uint256"},{"indexed":false,"internalType":"address","name":"creatorAddress","type":"address"}],"name":"GameCreated","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"uint256[]","name":"_authorizedAmounts","type":"uint256[]"}],"name":"addAuthorizedAmounts","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"authorizedAmounts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"},{"internalType":"uint256","name":"_maxPlayers","type":"uint256"},{"internalType":"uint256","name":"_playTimeRange","type":"uint256"},{"internalType":"uint256","name":"_registrationAmount","type":"uint256"},{"internalType":"uint256","name":"_treasuryFee","type":"uint256"},{"internalType":"uint256","name":"_creatorFee","type":"uint256"},{"internalType":"string","name":"_encodedCron","type":"string"},{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"_prizes","type":"tuple[]"}],"name":"createNewGame","outputs":[{"internalType":"address","name":"game","type":"address"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"cronUpkeep","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"deployedGames","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"deployedAddress","type":"address"},{"internalType":"uint256","name":"gameCreationAmount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"gameCreationAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"games","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"deployedAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_authorizedAmount","type":"uint256"}],"name":"getAuthorizedAmount","outputs":[{"components":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isUsed","type":"bool"}],"internalType":"struct GameFactory.AuthorizedAmount","name":"gameAuthorisedAmount","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAuthorizedAmounts","outputs":[{"internalType":"uint256[]","name":"gameAuthorisedAmounts","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDeployedGames","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"deployedAddress","type":"address"},{"internalType":"uint256","name":"gameCreationAmount","type":"uint256"}],"internalType":"struct GameFactory.Game[]","name":"allGames","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestVersionId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nextId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pauseAllGamesAndFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"resumeAllGamesAndFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_game","type":"address"}],"name":"setNewGameV1","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adminAddress","type":"address"}],"name":"transferAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_cronUpkeep","type":"address"}],"name":"updateCronUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"usedAuthorizedAmounts","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isUsed","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"date":"2022-11-27T15:59:24.095Z","olds":[]},"GameV1":{"address":"0x5fAC8090B45e9948fb1B8E37d2C9EE95a896c4D1","libraries":{"Cron":"0x9ccB826aD25Db07D8b86288D7A0ad02dea2c1acC"},"transactionHash":"0x101948b12290d19d9d7128e24c65ce80e148007c1b1e75c02937d3008066a0df","abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"CreatorFeeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldCreator","type":"address"},{"indexed":false,"internalType":"address","name":"newCreator","type":"address"}],"name":"CreatorOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"jobId","type":"uint256"},{"indexed":false,"internalType":"address","name":"cronUpkeep","type":"address"}],"name":"CronUpkeepUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"jobId","type":"uint256"},{"indexed":false,"internalType":"string","name":"encodedCron","type":"string"}],"name":"EncodedCronUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldFactory","type":"address"},{"indexed":false,"internalType":"address","name":"newFactory","type":"address"}],"name":"FactoryOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FailedTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"roundCount","type":"uint256"}],"name":"GameLost","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"claimer","type":"address"},{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountClaimed","type":"uint256"}],"name":"GamePrizeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountWon","type":"uint256"}],"name":"GameSplitted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"winnersCounter","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountWon","type":"uint256"}],"name":"GameWon","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"}],"name":"PlayedRound","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"position","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"standard","type":"uint256"},{"indexed":false,"internalType":"address","name":"contractAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"PrizeAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"playersCount","type":"uint256"}],"name":"RegisteredForGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timelock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"resetId","type":"uint256"}],"name":"ResetGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timelock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"playersCount","type":"uint256"}],"name":"StartedGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TreasuryFeeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TreasuryFeeClaimedByFactory","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"emmiter","type":"address"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"TriggeredDailyCheckpoint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"}],"name":"VoteToSplitPot","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"MAX_CREATOR_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_TREASURY_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"_prizes","type":"tuple[]"}],"name":"addPrizes","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"claimCreatorFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"claimPrize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimTreasuryFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"creator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"creatorAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"creatorFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cronUpkeep","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"encodedCron","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"factory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getGameData","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"roundId","type":"uint256"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"uint256","name":"playerAddressesCount","type":"uint256"},{"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"},{"internalType":"uint256","name":"maxPlayers","type":"uint256"},{"internalType":"uint256","name":"registrationAmount","type":"uint256"},{"internalType":"uint256","name":"playTimeRange","type":"uint256"},{"internalType":"uint256","name":"treasuryFee","type":"uint256"},{"internalType":"uint256","name":"creatorFee","type":"uint256"},{"internalType":"bool","name":"isPaused","type":"bool"},{"internalType":"bool","name":"isInProgress","type":"bool"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"admin","type":"address"},{"internalType":"string","name":"encodedCron","type":"string"}],"internalType":"struct GameV1Interface.GameData","name":"gameData","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_player","type":"address"}],"name":"getPlayer","outputs":[{"components":[{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"roundRangeLowerLimit","type":"uint256"},{"internalType":"uint256","name":"roundRangeUpperLimit","type":"uint256"},{"internalType":"bool","name":"hasPlayedRound","type":"bool"},{"internalType":"uint256","name":"roundCount","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"hasLost","type":"bool"},{"internalType":"bool","name":"isSplitOk","type":"bool"}],"internalType":"struct GameV1Interface.Player","name":"gamePlayer","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getPlayerAddresses","outputs":[{"internalType":"address[]","name":"gamePlayerAddresses","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"getPrizes","outputs":[{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"gamePrizes","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRemainingPlayersCount","outputs":[{"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"getWinners","outputs":[{"components":[{"internalType":"uint256","name":"roundId","type":"uint256"},{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"amountWon","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"prizeClaimed","type":"bool"}],"internalType":"struct GameV1Interface.Winner[]","name":"gameWinners","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"id","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"cronUpkeep","type":"address"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"uint256","name":"version","type":"uint256"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"playTimeRange","type":"uint256"},{"internalType":"uint256","name":"maxPlayers","type":"uint256"},{"internalType":"uint256","name":"registrationAmount","type":"uint256"},{"internalType":"uint256","name":"treasuryFee","type":"uint256"},{"internalType":"uint256","name":"creatorFee","type":"uint256"},{"internalType":"string","name":"encodedCron","type":"string"},{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"prizes","type":"tuple[]"}],"internalType":"struct GameV1Interface.Initialization","name":"_initialization","type":"tuple"}],"name":"initialize","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"isAllPlayersSplitOk","outputs":[{"internalType":"bool","name":"isSplitOk","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isGameAllPrizesStandard","outputs":[{"internalType":"bool","name":"isStandard","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isGamePayable","outputs":[{"internalType":"bool","name":"isPayable","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isInProgress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxPlayers","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"playRound","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"playTimeRange","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"playerAddresses","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"players","outputs":[{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"roundRangeLowerLimit","type":"uint256"},{"internalType":"uint256","name":"roundRangeUpperLimit","type":"uint256"},{"internalType":"bool","name":"hasPlayedRound","type":"bool"},{"internalType":"uint256","name":"roundCount","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"hasLost","type":"bool"},{"internalType":"bool","name":"isSplitOk","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"registerForGame","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"registrationAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"roundId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_creatorFee","type":"uint256"}],"name":"setCreatorFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_cronUpkeep","type":"address"}],"name":"setCronUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_encodedCron","type":"string"}],"name":"setEncodedCron","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxPlayers","type":"uint256"}],"name":"setMaxPlayers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_treasuryFee","type":"uint256"}],"name":"setTreasuryFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startGame","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adminAddress","type":"address"}],"name":"transferAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_creator","type":"address"}],"name":"transferCreatorOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_factory","type":"address"}],"name":"transferFactoryOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"treasuryAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"treasuryFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"triggerDailyCheckpoint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"voteToSplitPot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_receiver","type":"address"}],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"date":"2022-11-27T15:59:24.097Z","olds":[]},"CronExternal":{"address":"0x9ccB826aD25Db07D8b86288D7A0ad02dea2c1acC","libraries":{},"transactionHash":"0xd0b29d5bb6059714b6142a1f23abd6ae5628c3f7155e116ac2f0d7999ac70a56","abi":[{"inputs":[{"internalType":"string","name":"field","type":"string"},{"internalType":"string","name":"reason","type":"string"}],"name":"InvalidField","type":"error"},{"inputs":[{"internalType":"string","name":"reason","type":"string"}],"name":"InvalidSpec","type":"error"},{"inputs":[],"name":"ListTooLarge","type":"error"},{"inputs":[],"name":"UnknownFieldType","type":"error"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"lastTick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"},{"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"matches","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"nextTick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"toCronString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"cronString","type":"string"}],"name":"toEncodedSpec","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"cronString","type":"string"}],"name":"toSpec","outputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"}],"date":"2022-11-27T15:59:24.100Z","olds":[]},"CronUpkeep":{"address":"0xb49E61eA8A132bb507d9AC60ABeBaF8D5e8a500D","libraries":{"Cron":"0x9ccB826aD25Db07D8b86288D7A0ad02dea2c1acC"},"transactionHash":"0x65cfd492b572b8fba7e6dd7e94e67f5d16c2957d5fb2d721c6d12ffcbc13041b","abi":[{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"maxJobs","type":"uint256"},{"internalType":"bytes","name":"firstJob","type":"bytes"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"reason","type":"string"}],"name":"CallFailed","type":"error"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"CronJobIDNotFound","type":"error"},{"inputs":[],"name":"DontNeedPerformUpkeep","type":"error"},{"inputs":[],"name":"ExceedsMaxJobs","type":"error"},{"inputs":[],"name":"InvalidHandler","type":"error"},{"inputs":[],"name":"OnlySimulatedBackend","type":"error"},{"inputs":[],"name":"TickDoesntMatchSpec","type":"error"},{"inputs":[],"name":"TickInFuture","type":"error"},{"inputs":[],"name":"TickTooOld","type":"error"},{"inputs":[],"name":"UnknownFieldType","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"bytes","name":"handler","type":"bytes"}],"name":"CronJobCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"CronJobDeleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"CronJobExecuted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"bytes","name":"handler","type":"bytes"}],"name":"CronJobUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"target","type":"address"}],"name":"DelegatorAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"target","type":"address"}],"name":"DelegatorRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferRequested","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"}],"name":"addDelegator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"name":"checkUpkeep","outputs":[{"internalType":"bool","name":"","type":"bool"},{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"handler","type":"bytes"},{"internalType":"bytes","name":"encodedCronSpec","type":"bytes"}],"name":"createCronJobFromEncodedSpec","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"deleteCronJob","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getActiveCronJobIDs","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"getCronJob","outputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"handler","type":"bytes"},{"internalType":"string","name":"cronString","type":"string"},{"internalType":"uint256","name":"nextTick","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDelegators","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getNextCronJobIDs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"performData","type":"bytes"}],"name":"performUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"}],"name":"removeDelegator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"s_maxJobs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"newTarget","type":"address"},{"internalType":"bytes","name":"newHandler","type":"bytes"},{"internalType":"bytes","name":"newEncodedCronSpec","type":"bytes"}],"name":"updateCronJob","outputs":[],"stateMutability":"nonpayable","type":"function"}],"date":"2022-11-27T15:59:24.102Z","olds":[]},"MultiCall3":{"address":"0x9e5eD465c11ec50DC07481b8c1B69Dee910f28C1","libraries":{},"transactionHash":"0x913a8fc62180fb0de5e280aaefd29824633e64b229f912e198f1d62dc33dcd12","abi":[{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"aggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes[]","name":"returnData","type":"bytes[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"allowFailure","type":"bool"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call3[]","name":"calls","type":"tuple[]"}],"name":"aggregate3","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"allowFailure","type":"bool"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call3Value[]","name":"calls","type":"tuple[]"}],"name":"aggregate3Value","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"blockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"getBasefee","outputs":[{"internalType":"uint256","name":"basefee","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"name":"getBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getBlockNumber","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getChainId","outputs":[{"internalType":"uint256","name":"chainid","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockCoinbase","outputs":[{"internalType":"address","name":"coinbase","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockDifficulty","outputs":[{"internalType":"uint256","name":"difficulty","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockGasLimit","outputs":[{"internalType":"uint256","name":"gaslimit","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockTimestamp","outputs":[{"internalType":"uint256","name":"timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"getEthBalance","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getLastBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"tryAggregate","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"tryBlockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"}],"date":"2022-11-27T15:59:24.104Z","olds":[]}},"31337":{"GameFactory":{"address":"0xa513E6E4b8f2a923D98304ec87F64353C4D5C853","libraries":{},"transactionHash":"0xec0f21f324844fb41831a35985e4e850fc347a275ce9105519f3a1f2b9348aab","abi":[{"inputs":[{"internalType":"address","name":"_game","type":"address"},{"internalType":"address","name":"_cronUpkeep","type":"address"},{"internalType":"uint256","name":"_gameCreationAmount","type":"uint256"},{"internalType":"uint256[]","name":"_authorizedAmounts","type":"uint256[]"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"cronUpkeep","type":"address"}],"name":"CronUpkeepUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FailedTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"nextId","type":"uint256"},{"indexed":false,"internalType":"address","name":"gameAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"implementationVersion","type":"uint256"},{"indexed":false,"internalType":"address","name":"creatorAddress","type":"address"}],"name":"GameCreated","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"uint256[]","name":"_authorizedAmounts","type":"uint256[]"}],"name":"addAuthorizedAmounts","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"authorizedAmounts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"},{"internalType":"uint256","name":"_maxPlayers","type":"uint256"},{"internalType":"uint256","name":"_playTimeRange","type":"uint256"},{"internalType":"uint256","name":"_registrationAmount","type":"uint256"},{"internalType":"uint256","name":"_treasuryFee","type":"uint256"},{"internalType":"uint256","name":"_creatorFee","type":"uint256"},{"internalType":"string","name":"_encodedCron","type":"string"},{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"_prizes","type":"tuple[]"}],"name":"createNewGame","outputs":[{"internalType":"address","name":"game","type":"address"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"cronUpkeep","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"deployedGames","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"deployedAddress","type":"address"},{"internalType":"uint256","name":"gameCreationAmount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"gameCreationAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"games","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"deployedAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_authorizedAmount","type":"uint256"}],"name":"getAuthorizedAmount","outputs":[{"components":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isUsed","type":"bool"}],"internalType":"struct GameFactory.AuthorizedAmount","name":"gameAuthorisedAmount","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAuthorizedAmounts","outputs":[{"internalType":"uint256[]","name":"gameAuthorisedAmounts","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDeployedGames","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"deployedAddress","type":"address"},{"internalType":"uint256","name":"gameCreationAmount","type":"uint256"}],"internalType":"struct GameFactory.Game[]","name":"allGames","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestVersionId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nextId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pauseAllGamesAndFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"resumeAllGamesAndFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_game","type":"address"}],"name":"setNewGameV1","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adminAddress","type":"address"}],"name":"transferAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_cronUpkeep","type":"address"}],"name":"updateCronUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"usedAuthorizedAmounts","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isUsed","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"olds":[],"date":"2022-11-27T19:24:33.931Z"},"GameV1":{"address":"0x5FC8d32690cc91D4c39d9d3abcBD16989F875707","libraries":{"Cron":"0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0"},"transactionHash":"0x4375fd251f1f8fd21cd0e27240875fcac2258dc1700d80fa954bfb5e805ac84d","abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"CreatorFeeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldCreator","type":"address"},{"indexed":false,"internalType":"address","name":"newCreator","type":"address"}],"name":"CreatorOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"jobId","type":"uint256"},{"indexed":false,"internalType":"address","name":"cronUpkeep","type":"address"}],"name":"CronUpkeepUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"jobId","type":"uint256"},{"indexed":false,"internalType":"string","name":"encodedCron","type":"string"}],"name":"EncodedCronUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldFactory","type":"address"},{"indexed":false,"internalType":"address","name":"newFactory","type":"address"}],"name":"FactoryOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FailedTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"roundCount","type":"uint256"}],"name":"GameLost","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"claimer","type":"address"},{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountClaimed","type":"uint256"}],"name":"GamePrizeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountWon","type":"uint256"}],"name":"GameSplitted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"winnersCounter","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountWon","type":"uint256"}],"name":"GameWon","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"}],"name":"PlayedRound","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"position","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"standard","type":"uint256"},{"indexed":false,"internalType":"address","name":"contractAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"PrizeAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"playersCount","type":"uint256"}],"name":"RegisteredForGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timelock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"resetId","type":"uint256"}],"name":"ResetGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timelock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"playersCount","type":"uint256"}],"name":"StartedGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TreasuryFeeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TreasuryFeeClaimedByFactory","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"emmiter","type":"address"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"TriggeredDailyCheckpoint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"}],"name":"VoteToSplitPot","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"MAX_CREATOR_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_TREASURY_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"_prizes","type":"tuple[]"}],"name":"addPrizes","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"claimCreatorFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"claimPrize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimTreasuryFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"creator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"creatorAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"creatorFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cronUpkeep","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"encodedCron","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"factory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getGameData","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"uint256","name":"roundId","type":"uint256"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"uint256","name":"playerAddressesCount","type":"uint256"},{"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"},{"internalType":"uint256","name":"maxPlayers","type":"uint256"},{"internalType":"uint256","name":"registrationAmount","type":"uint256"},{"internalType":"uint256","name":"playTimeRange","type":"uint256"},{"internalType":"uint256","name":"treasuryFee","type":"uint256"},{"internalType":"uint256","name":"creatorFee","type":"uint256"},{"internalType":"bool","name":"isPaused","type":"bool"},{"internalType":"bool","name":"isInProgress","type":"bool"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"admin","type":"address"},{"internalType":"string","name":"encodedCron","type":"string"}],"internalType":"struct GameV1Interface.GameData","name":"gameData","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_player","type":"address"}],"name":"getPlayer","outputs":[{"components":[{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"roundRangeLowerLimit","type":"uint256"},{"internalType":"uint256","name":"roundRangeUpperLimit","type":"uint256"},{"internalType":"bool","name":"hasPlayedRound","type":"bool"},{"internalType":"uint256","name":"roundCount","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"hasLost","type":"bool"},{"internalType":"bool","name":"isSplitOk","type":"bool"}],"internalType":"struct GameV1Interface.Player","name":"gamePlayer","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getPlayerAddresses","outputs":[{"internalType":"address[]","name":"gamePlayerAddresses","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"getPrizes","outputs":[{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"gamePrizes","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRemainingPlayersCount","outputs":[{"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"getWinners","outputs":[{"components":[{"internalType":"uint256","name":"roundId","type":"uint256"},{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"amountWon","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"prizeClaimed","type":"bool"}],"internalType":"struct GameV1Interface.Winner[]","name":"gameWinners","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"id","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"cronUpkeep","type":"address"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"uint256","name":"version","type":"uint256"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"playTimeRange","type":"uint256"},{"internalType":"uint256","name":"maxPlayers","type":"uint256"},{"internalType":"uint256","name":"registrationAmount","type":"uint256"},{"internalType":"uint256","name":"treasuryFee","type":"uint256"},{"internalType":"uint256","name":"creatorFee","type":"uint256"},{"internalType":"string","name":"encodedCron","type":"string"},{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"prizes","type":"tuple[]"}],"internalType":"struct GameV1Interface.Initialization","name":"_initialization","type":"tuple"}],"name":"initialize","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"isAllPlayersSplitOk","outputs":[{"internalType":"bool","name":"isSplitOk","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isGameAllPrizesStandard","outputs":[{"internalType":"bool","name":"isStandard","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isGamePayable","outputs":[{"internalType":"bool","name":"isPayable","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isInProgress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxPlayers","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"playRound","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"playTimeRange","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"playerAddresses","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"players","outputs":[{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"roundRangeLowerLimit","type":"uint256"},{"internalType":"uint256","name":"roundRangeUpperLimit","type":"uint256"},{"internalType":"bool","name":"hasPlayedRound","type":"bool"},{"internalType":"uint256","name":"roundCount","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"hasLost","type":"bool"},{"internalType":"bool","name":"isSplitOk","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"registerForGame","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"registrationAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"roundId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_creatorFee","type":"uint256"}],"name":"setCreatorFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_cronUpkeep","type":"address"}],"name":"setCronUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_encodedCron","type":"string"}],"name":"setEncodedCron","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxPlayers","type":"uint256"}],"name":"setMaxPlayers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_treasuryFee","type":"uint256"}],"name":"setTreasuryFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startGame","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adminAddress","type":"address"}],"name":"transferAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_creator","type":"address"}],"name":"transferCreatorOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_factory","type":"address"}],"name":"transferFactoryOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"treasuryAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"treasuryFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"triggerDailyCheckpoint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"voteToSplitPot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_receiver","type":"address"}],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"olds":[],"date":"2022-11-27T19:24:33.932Z"},"CronExternal":{"address":"0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0","libraries":{},"transactionHash":"0xc6209c5c013870559ba0f768cfc96e6abe0a79b9467a8c988baad6ce74a9c61c","abi":[{"inputs":[{"internalType":"string","name":"field","type":"string"},{"internalType":"string","name":"reason","type":"string"}],"name":"InvalidField","type":"error"},{"inputs":[{"internalType":"string","name":"reason","type":"string"}],"name":"InvalidSpec","type":"error"},{"inputs":[],"name":"ListTooLarge","type":"error"},{"inputs":[],"name":"UnknownFieldType","type":"error"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"lastTick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"},{"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"matches","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"nextTick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"toCronString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"cronString","type":"string"}],"name":"toEncodedSpec","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"cronString","type":"string"}],"name":"toSpec","outputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"}],"olds":[],"date":"2022-11-27T19:24:33.935Z"},"CronUpkeep":{"address":"0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9","libraries":{"Cron":"0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0"},"transactionHash":"0x435b49ee8140b9a49a5c7970baef3c86ddac32640a0e6a4d504376d3fd88e8f4","abi":[{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"maxJobs","type":"uint256"},{"internalType":"bytes","name":"firstJob","type":"bytes"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"reason","type":"string"}],"name":"CallFailed","type":"error"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"CronJobIDNotFound","type":"error"},{"inputs":[],"name":"DontNeedPerformUpkeep","type":"error"},{"inputs":[],"name":"ExceedsMaxJobs","type":"error"},{"inputs":[],"name":"InvalidHandler","type":"error"},{"inputs":[],"name":"OnlySimulatedBackend","type":"error"},{"inputs":[],"name":"TickDoesntMatchSpec","type":"error"},{"inputs":[],"name":"TickInFuture","type":"error"},{"inputs":[],"name":"TickTooOld","type":"error"},{"inputs":[],"name":"UnknownFieldType","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"bytes","name":"handler","type":"bytes"}],"name":"CronJobCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"CronJobDeleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"CronJobExecuted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"bytes","name":"handler","type":"bytes"}],"name":"CronJobUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"target","type":"address"}],"name":"DelegatorAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"target","type":"address"}],"name":"DelegatorRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferRequested","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"}],"name":"addDelegator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"name":"checkUpkeep","outputs":[{"internalType":"bool","name":"","type":"bool"},{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"handler","type":"bytes"},{"internalType":"bytes","name":"encodedCronSpec","type":"bytes"}],"name":"createCronJobFromEncodedSpec","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"deleteCronJob","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getActiveCronJobIDs","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"getCronJob","outputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"handler","type":"bytes"},{"internalType":"string","name":"cronString","type":"string"},{"internalType":"uint256","name":"nextTick","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDelegators","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getNextCronJobIDs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"performData","type":"bytes"}],"name":"performUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"}],"name":"removeDelegator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"s_maxJobs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"newTarget","type":"address"},{"internalType":"bytes","name":"newHandler","type":"bytes"},{"internalType":"bytes","name":"newEncodedCronSpec","type":"bytes"}],"name":"updateCronJob","outputs":[],"stateMutability":"nonpayable","type":"function"}],"olds":[],"date":"2022-11-27T19:24:33.937Z"},"MultiCall3":{"address":"0x5FbDB2315678afecb367f032d93F642f64180aa3","libraries":{},"transactionHash":"0x948c6050467e45aeb451cbd990561452e3d80efc17bfd1a565f1083f4cef1c3b","abi":[{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"aggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes[]","name":"returnData","type":"bytes[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"allowFailure","type":"bool"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call3[]","name":"calls","type":"tuple[]"}],"name":"aggregate3","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"allowFailure","type":"bool"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call3Value[]","name":"calls","type":"tuple[]"}],"name":"aggregate3Value","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"blockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"getBasefee","outputs":[{"internalType":"uint256","name":"basefee","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"name":"getBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getBlockNumber","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getChainId","outputs":[{"internalType":"uint256","name":"chainid","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockCoinbase","outputs":[{"internalType":"address","name":"coinbase","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockDifficulty","outputs":[{"internalType":"uint256","name":"difficulty","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockGasLimit","outputs":[{"internalType":"uint256","name":"gaslimit","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockTimestamp","outputs":[{"internalType":"uint256","name":"timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"getEthBalance","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getLastBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"tryAggregate","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"tryBlockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"}],"olds":[],"date":"2022-11-27T19:24:33.939Z"}},"80001":{"GameFactory":{"address":"0xEC767280c8b789ef260E8e7D63Ee85d023C5F9ea","libraries":{},"transactionHash":"0xa38d62ed0097c94087d40d9a8b707e0e980f86afc7ea4888ee73b74186aeefc7","abi":[{"inputs":[{"internalType":"address","name":"_game","type":"address"},{"internalType":"address","name":"_cronUpkeep","type":"address"},{"internalType":"uint256","name":"_gameCreationAmount","type":"uint256"},{"internalType":"uint256[]","name":"_authorizedAmounts","type":"uint256[]"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"cronUpkeep","type":"address"}],"name":"CronUpkeepUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FailedTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"nextId","type":"uint256"},{"indexed":false,"internalType":"address","name":"gameAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"implementationVersion","type":"uint256"},{"indexed":false,"internalType":"address","name":"creatorAddress","type":"address"}],"name":"GameCreated","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"uint256[]","name":"_authorizedAmounts","type":"uint256[]"}],"name":"addAuthorizedAmounts","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"authorizedAmounts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"},{"internalType":"uint256","name":"_maxPlayers","type":"uint256"},{"internalType":"uint256","name":"_playTimeRange","type":"uint256"},{"internalType":"uint256","name":"_registrationAmount","type":"uint256"},{"internalType":"uint256","name":"_treasuryFee","type":"uint256"},{"internalType":"uint256","name":"_creatorFee","type":"uint256"},{"internalType":"string","name":"_encodedCron","type":"string"},{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"_prizes","type":"tuple[]"}],"name":"createNewGame","outputs":[{"internalType":"address","name":"game","type":"address"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"cronUpkeep","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"deployedGames","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"deployedAddress","type":"address"},{"internalType":"uint256","name":"gameCreationAmount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"gameCreationAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"games","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"deployedAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_authorizedAmount","type":"uint256"}],"name":"getAuthorizedAmount","outputs":[{"components":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isUsed","type":"bool"}],"internalType":"struct GameFactory.AuthorizedAmount","name":"gameAuthorisedAmount","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAuthorizedAmounts","outputs":[{"internalType":"uint256[]","name":"gameAuthorisedAmounts","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDeployedGames","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"deployedAddress","type":"address"},{"internalType":"uint256","name":"gameCreationAmount","type":"uint256"}],"internalType":"struct GameFactory.Game[]","name":"allGames","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestVersionId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nextId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pauseAllGamesAndFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"resumeAllGamesAndFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_game","type":"address"}],"name":"setNewGameV1","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adminAddress","type":"address"}],"name":"transferAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_cronUpkeep","type":"address"}],"name":"updateCronUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"usedAuthorizedAmounts","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isUsed","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"date":"2022-11-27T16:12:17.864Z","olds":[]},"GameV1":{"address":"0x4BC8b204ab339969Dc45C631ecc2461F464d34c8","libraries":{"Cron":"0xa66C8C212306f6f41bbA974eeD7F72DCd46a55BB"},"transactionHash":"0xdec0bafc2c11abc16fad2321c9c788b5fdbc9ee25392006a1909a676b8090291","abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"CreatorFeeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldCreator","type":"address"},{"indexed":false,"internalType":"address","name":"newCreator","type":"address"}],"name":"CreatorOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"jobId","type":"uint256"},{"indexed":false,"internalType":"address","name":"cronUpkeep","type":"address"}],"name":"CronUpkeepUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"jobId","type":"uint256"},{"indexed":false,"internalType":"string","name":"encodedCron","type":"string"}],"name":"EncodedCronUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldFactory","type":"address"},{"indexed":false,"internalType":"address","name":"newFactory","type":"address"}],"name":"FactoryOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FailedTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"roundCount","type":"uint256"}],"name":"GameLost","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"claimer","type":"address"},{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountClaimed","type":"uint256"}],"name":"GamePrizeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountWon","type":"uint256"}],"name":"GameSplitted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"winnersCounter","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountWon","type":"uint256"}],"name":"GameWon","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"}],"name":"PlayedRound","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"position","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"standard","type":"uint256"},{"indexed":false,"internalType":"address","name":"contractAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"PrizeAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"playersCount","type":"uint256"}],"name":"RegisteredForGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timelock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"resetId","type":"uint256"}],"name":"ResetGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timelock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"playersCount","type":"uint256"}],"name":"StartedGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TreasuryFeeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TreasuryFeeClaimedByFactory","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"emmiter","type":"address"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"TriggeredDailyCheckpoint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"}],"name":"VoteToSplitPot","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"MAX_CREATOR_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_TREASURY_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"_prizes","type":"tuple[]"}],"name":"addPrizes","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"claimCreatorFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"claimPrize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimTreasuryFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"creator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"creatorAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"creatorFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cronUpkeep","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"encodedCron","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"factory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getGameData","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"roundId","type":"uint256"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"uint256","name":"playerAddressesCount","type":"uint256"},{"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"},{"internalType":"uint256","name":"maxPlayers","type":"uint256"},{"internalType":"uint256","name":"registrationAmount","type":"uint256"},{"internalType":"uint256","name":"playTimeRange","type":"uint256"},{"internalType":"uint256","name":"treasuryFee","type":"uint256"},{"internalType":"uint256","name":"creatorFee","type":"uint256"},{"internalType":"bool","name":"isPaused","type":"bool"},{"internalType":"bool","name":"isInProgress","type":"bool"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"admin","type":"address"},{"internalType":"string","name":"encodedCron","type":"string"}],"internalType":"struct GameV1Interface.GameData","name":"gameData","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_player","type":"address"}],"name":"getPlayer","outputs":[{"components":[{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"roundRangeLowerLimit","type":"uint256"},{"internalType":"uint256","name":"roundRangeUpperLimit","type":"uint256"},{"internalType":"bool","name":"hasPlayedRound","type":"bool"},{"internalType":"uint256","name":"roundCount","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"hasLost","type":"bool"},{"internalType":"bool","name":"isSplitOk","type":"bool"}],"internalType":"struct GameV1Interface.Player","name":"gamePlayer","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getPlayerAddresses","outputs":[{"internalType":"address[]","name":"gamePlayerAddresses","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"getPrizes","outputs":[{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"gamePrizes","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRemainingPlayersCount","outputs":[{"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"getWinners","outputs":[{"components":[{"internalType":"uint256","name":"roundId","type":"uint256"},{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"amountWon","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"prizeClaimed","type":"bool"}],"internalType":"struct GameV1Interface.Winner[]","name":"gameWinners","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"id","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"cronUpkeep","type":"address"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"uint256","name":"version","type":"uint256"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"playTimeRange","type":"uint256"},{"internalType":"uint256","name":"maxPlayers","type":"uint256"},{"internalType":"uint256","name":"registrationAmount","type":"uint256"},{"internalType":"uint256","name":"treasuryFee","type":"uint256"},{"internalType":"uint256","name":"creatorFee","type":"uint256"},{"internalType":"string","name":"encodedCron","type":"string"},{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"prizes","type":"tuple[]"}],"internalType":"struct GameV1Interface.Initialization","name":"_initialization","type":"tuple"}],"name":"initialize","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"isAllPlayersSplitOk","outputs":[{"internalType":"bool","name":"isSplitOk","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isGameAllPrizesStandard","outputs":[{"internalType":"bool","name":"isStandard","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isGamePayable","outputs":[{"internalType":"bool","name":"isPayable","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isInProgress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxPlayers","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"playRound","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"playTimeRange","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"playerAddresses","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"players","outputs":[{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"roundRangeLowerLimit","type":"uint256"},{"internalType":"uint256","name":"roundRangeUpperLimit","type":"uint256"},{"internalType":"bool","name":"hasPlayedRound","type":"bool"},{"internalType":"uint256","name":"roundCount","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"hasLost","type":"bool"},{"internalType":"bool","name":"isSplitOk","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"registerForGame","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"registrationAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"roundId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_creatorFee","type":"uint256"}],"name":"setCreatorFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_cronUpkeep","type":"address"}],"name":"setCronUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_encodedCron","type":"string"}],"name":"setEncodedCron","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxPlayers","type":"uint256"}],"name":"setMaxPlayers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_treasuryFee","type":"uint256"}],"name":"setTreasuryFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startGame","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adminAddress","type":"address"}],"name":"transferAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_creator","type":"address"}],"name":"transferCreatorOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_factory","type":"address"}],"name":"transferFactoryOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"treasuryAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"treasuryFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"triggerDailyCheckpoint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"voteToSplitPot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_receiver","type":"address"}],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"date":"2022-11-27T16:12:17.869Z","olds":[]},"CronExternal":{"address":"0xa66C8C212306f6f41bbA974eeD7F72DCd46a55BB","libraries":{},"transactionHash":"0xdbd29928a0e8982be758fb4bc058aa9447f0c1944580fbb9f649ce56283a5e38","abi":[{"inputs":[{"internalType":"string","name":"field","type":"string"},{"internalType":"string","name":"reason","type":"string"}],"name":"InvalidField","type":"error"},{"inputs":[{"internalType":"string","name":"reason","type":"string"}],"name":"InvalidSpec","type":"error"},{"inputs":[],"name":"ListTooLarge","type":"error"},{"inputs":[],"name":"UnknownFieldType","type":"error"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"lastTick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"},{"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"matches","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"nextTick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"toCronString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"cronString","type":"string"}],"name":"toEncodedSpec","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"cronString","type":"string"}],"name":"toSpec","outputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"}],"date":"2022-11-27T16:12:17.873Z","olds":[]},"CronUpkeep":{"address":"0xa9296aF2f631086d52fD02693F2A8996dD4156a0","libraries":{"Cron":"0xa66C8C212306f6f41bbA974eeD7F72DCd46a55BB"},"transactionHash":"0xe880f8e46acc54eabde06487b94f06920cddfff4e7ef38de0a8db52cefc4883f","abi":[{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"maxJobs","type":"uint256"},{"internalType":"bytes","name":"firstJob","type":"bytes"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"reason","type":"string"}],"name":"CallFailed","type":"error"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"CronJobIDNotFound","type":"error"},{"inputs":[],"name":"DontNeedPerformUpkeep","type":"error"},{"inputs":[],"name":"ExceedsMaxJobs","type":"error"},{"inputs":[],"name":"InvalidHandler","type":"error"},{"inputs":[],"name":"OnlySimulatedBackend","type":"error"},{"inputs":[],"name":"TickDoesntMatchSpec","type":"error"},{"inputs":[],"name":"TickInFuture","type":"error"},{"inputs":[],"name":"TickTooOld","type":"error"},{"inputs":[],"name":"UnknownFieldType","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"bytes","name":"handler","type":"bytes"}],"name":"CronJobCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"CronJobDeleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"CronJobExecuted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"bytes","name":"handler","type":"bytes"}],"name":"CronJobUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"target","type":"address"}],"name":"DelegatorAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"target","type":"address"}],"name":"DelegatorRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferRequested","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"}],"name":"addDelegator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"name":"checkUpkeep","outputs":[{"internalType":"bool","name":"","type":"bool"},{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"handler","type":"bytes"},{"internalType":"bytes","name":"encodedCronSpec","type":"bytes"}],"name":"createCronJobFromEncodedSpec","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"deleteCronJob","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getActiveCronJobIDs","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"getCronJob","outputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"handler","type":"bytes"},{"internalType":"string","name":"cronString","type":"string"},{"internalType":"uint256","name":"nextTick","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDelegators","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getNextCronJobIDs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"performData","type":"bytes"}],"name":"performUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"}],"name":"removeDelegator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"s_maxJobs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"newTarget","type":"address"},{"internalType":"bytes","name":"newHandler","type":"bytes"},{"internalType":"bytes","name":"newEncodedCronSpec","type":"bytes"}],"name":"updateCronJob","outputs":[],"stateMutability":"nonpayable","type":"function"}],"date":"2022-11-27T16:12:17.877Z","olds":[]},"MultiCall3":{"address":"0xCcE2Ce77027F4Cc43Db57Cb400061f5DAaD96b68","libraries":{},"transactionHash":"0x6c68e8941f425053641ca2f0984655b2ceadcef450523c02de01551397ef5901","abi":[{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"aggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes[]","name":"returnData","type":"bytes[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"allowFailure","type":"bool"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call3[]","name":"calls","type":"tuple[]"}],"name":"aggregate3","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"allowFailure","type":"bool"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call3Value[]","name":"calls","type":"tuple[]"}],"name":"aggregate3Value","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"blockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"getBasefee","outputs":[{"internalType":"uint256","name":"basefee","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"name":"getBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getBlockNumber","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getChainId","outputs":[{"internalType":"uint256","name":"chainid","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockCoinbase","outputs":[{"internalType":"address","name":"coinbase","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockDifficulty","outputs":[{"internalType":"uint256","name":"difficulty","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockGasLimit","outputs":[{"internalType":"uint256","name":"gaslimit","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockTimestamp","outputs":[{"internalType":"uint256","name":"timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"getEthBalance","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getLastBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"tryAggregate","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"tryBlockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"}],"date":"2022-11-27T16:12:17.881Z","olds":[]}}} \ No newline at end of file diff --git a/packages/dapp/src/config/types/typechain/contracts/GameV1.ts b/packages/dapp/src/config/types/typechain/contracts/GameV1.ts index 4925282..4ec618e 100644 --- a/packages/dapp/src/config/types/typechain/contracts/GameV1.ts +++ b/packages/dapp/src/config/types/typechain/contracts/GameV1.ts @@ -53,6 +53,7 @@ export declare namespace GameV1Interface { export type GameDataStruct = { id: PromiseOrValue; + versionId: PromiseOrValue; roundId: PromiseOrValue; name: PromiseOrValue; playerAddressesCount: PromiseOrValue; @@ -70,6 +71,7 @@ export declare namespace GameV1Interface { }; export type GameDataStructOutput = [ + BigNumber, BigNumber, BigNumber, string, @@ -87,6 +89,7 @@ export declare namespace GameV1Interface { string ] & { id: BigNumber; + versionId: BigNumber; roundId: BigNumber; name: string; playerAddressesCount: BigNumber; diff --git a/packages/dapp/src/config/types/typechain/contracts/interfaces/GameV1Interface.ts b/packages/dapp/src/config/types/typechain/contracts/interfaces/GameV1Interface.ts index 71b069d..dd85c70 100644 --- a/packages/dapp/src/config/types/typechain/contracts/interfaces/GameV1Interface.ts +++ b/packages/dapp/src/config/types/typechain/contracts/interfaces/GameV1Interface.ts @@ -53,6 +53,7 @@ export declare namespace GameV1Interface { export type GameDataStruct = { id: PromiseOrValue; + versionId: PromiseOrValue; roundId: PromiseOrValue; name: PromiseOrValue; playerAddressesCount: PromiseOrValue; @@ -70,6 +71,7 @@ export declare namespace GameV1Interface { }; export type GameDataStructOutput = [ + BigNumber, BigNumber, BigNumber, string, @@ -87,6 +89,7 @@ export declare namespace GameV1Interface { string ] & { id: BigNumber; + versionId: BigNumber; roundId: BigNumber; name: string; playerAddressesCount: BigNumber; diff --git a/packages/dapp/src/config/types/typechain/factories/contracts/GameFactory__factory.ts b/packages/dapp/src/config/types/typechain/factories/contracts/GameFactory__factory.ts index 7c6e8e9..f61b18c 100644 --- a/packages/dapp/src/config/types/typechain/factories/contracts/GameFactory__factory.ts +++ b/packages/dapp/src/config/types/typechain/factories/contracts/GameFactory__factory.ts @@ -637,7 +637,7 @@ const _abi = [ ]; const _bytecode = - "0x608060405260006003553480156200001657600080fd5b50604051620028e6380380620028e6833981016040819052620000399162000415565b6000805460ff191690556200004e3362000340565b6001808055815182911115620000c65760405162461bcd60e51b815260206004820152603260248201527f617574686f72697a6564416d6f756e74732073686f756c64206265206772656160448201527174686572206f7220657175616c20746f203160701b60648201526084015b60405180910390fd5b846001600160a01b0381166200011f5760405162461bcd60e51b815260206004820152601e60248201527f61646472657373206e65656420746f20626520696e697469616c6973656400006044820152606401620000bd565b846001600160a01b038116620001785760405162461bcd60e51b815260206004820152601e60248201527f61646472657373206e65656420746f20626520696e697469616c6973656400006044820152606401620000bd565b600280546001600160a01b038089166001600160a01b031992831617835560048890556040805180820190915260055481528a8216602082019081526006805460018101825560009182529251929095027ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f810192909255517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4090910180549190921692169190911790555b845181101562000332576200025b8582815181106200024757620002476200053f565b60200260200101516200039960201b60201c565b6200031d5760088582815181106200027757620002776200053f565b602090810291909101810151825460018101845560009384529190922001556040805180820190915285518190879084908110620002b957620002b96200053f565b602002602001015181526020016000151581525060096000878481518110620002e657620002e66200053f565b602090810291909101810151825281810192909252604001600020825181559101516001909101805460ff19169115159190911790555b80620003298162000515565b91505062000224565b50505050505050506200056b565b600080546001600160a01b03838116610100818102610100600160a81b0319851617855560405193049190911692909183917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35050565b6000805b600854811015620003ef578260088281548110620003bf57620003bf6200053f565b90600052602060002001541415620003da5750600192915050565b80620003e68162000515565b9150506200039d565b50600092915050565b80516001600160a01b03811681146200041057600080fd5b919050565b600080600080608085870312156200042c57600080fd5b6200043785620003f8565b9350602062000448818701620003f8565b6040870151606088015191955093506001600160401b03808211156200046d57600080fd5b818801915088601f8301126200048257600080fd5b81518181111562000497576200049762000555565b8060051b604051601f19603f83011681018181108582111715620004bf57620004bf62000555565b604052828152858101935084860182860187018d1015620004df57600080fd5b600095505b8386101562000504578051855260019590950194938601938601620004e4565b50989b979a50959850505050505050565b60006000198214156200053857634e487b7160e01b600052601160045260246000fd5b5060010190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b61236b806200057b6000396000f3fe60806040526004361061019a5760003560e01c80638456cb59116100e1578063ac5f50c81161008a578063ea8ac8cf11610064578063ea8ac8cf14610564578063eae81c371461057a578063f2fde38b1461059c578063fdd3d43d146105bc576101da565b8063ac5f50c8146104a7578063c1e6a4ce14610522578063d59d2efa14610544576101da565b8063953aef90116100bb578063953aef90146104545780639d73613d14610467578063a649beb214610487576101da565b80638456cb59146103fc57806388244f15146104115780638da5cb5b14610431576101da565b80634acb33a011610143578063657908d11161011d578063657908d11461037d57806367f98152146103d1578063715018a6146103e7576101da565b80634acb33a0146102fe5780635c975abb1461033657806361b8ce8c14610359576101da565b80633b7b617a116101745780633b7b617a146102885780633f4ba83a1461029d57806348308bd7146102b2576101da565b806308a80ff51461020f578063117a5b901461023157806324600fc314610273576101da565b366101da57604080513381523460208201527f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f8852587491015b60405180910390a1005b604080513381523460208201527f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f8852587491016101d0565b34801561021b57600080fd5b5061022f61022a366004611d8f565b6105d1565b005b34801561023d57600080fd5b5061025161024c366004611f3a565b6106ab565b604080519283526001600160a01b039091166020830152015b60405180910390f35b34801561027f57600080fd5b5061022f6106e2565b34801561029457600080fd5b5061022f610770565b3480156102a957600080fd5b5061022f6108e9565b3480156102be57600080fd5b506102e96102cd366004611f3a565b6009602052600090815260409020805460019091015460ff1682565b6040805192835290151560208301520161026a565b34801561030a57600080fd5b5060025461031e906001600160a01b031681565b6040516001600160a01b03909116815260200161026a565b34801561034257600080fd5b5060005460ff16604051901515815260200161026a565b34801561036557600080fd5b5061036f60035481565b60405190815260200161026a565b34801561038957600080fd5b5061039d610398366004611f3a565b61096a565b6040805195865260208601949094526001600160a01b0392831693850193909352166060830152608082015260a00161026a565b3480156103dd57600080fd5b5061036f60055481565b3480156103f357600080fd5b5061022f6109b8565b34801561040857600080fd5b5061022f6109ca565b34801561041d57600080fd5b5061022f61042c366004611db1565b610a4b565b34801561043d57600080fd5b5060005461010090046001600160a01b031661031e565b61031e610462366004611e49565b610bb4565b34801561047357600080fd5b5061022f610482366004611d8f565b61116a565b34801561049357600080fd5b5061036f6104a2366004611f3a565b61141c565b3480156104b357600080fd5b506105056104c2366004611f3a565b6040805180820190915260008082526020820152506000908152600960209081526040918290208251808401909352805483526001015460ff1615159082015290565b60408051825181526020928301511515928101929092520161026a565b34801561052e57600080fd5b5061053761143d565b60405161026a919061208a565b34801561055057600080fd5b5061022f61055f366004611d8f565b611495565b34801561057057600080fd5b5061036f60045481565b34801561058657600080fd5b5061058f6115cd565b60405161026a919061200e565b3480156105a857600080fd5b5061022f6105b7366004611d8f565b611666565b3480156105c857600080fd5b5061022f6116f3565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b0316146106475760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e00000000000000000060448201526064015b60405180910390fd5b806001600160a01b03811661069e5760405162461bcd60e51b815260206004820152601e60248201527f61646472657373206e65656420746f20626520696e697469616c697365640000604482015260640161063e565b6106a782611666565b5050565b600681815481106106bb57600080fd5b6000918252602090912060029091020180546001909101549091506001600160a01b031682565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b0316146107535760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604482015260640161063e565b60005461076e9061010090046001600160a01b031647611869565b565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b0316146107e15760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604482015260640161063e565b6107e96119a5565b6107f16119f8565b60005b6007548110156108e657600060078281548110610813576108136122d7565b600091825260208083206040805160a08101825260059094029091018054845260018101549284019290925260028201546001600160a01b039081168483015260038301541660608401819052600492830154608085015281517f8456cb59000000000000000000000000000000000000000000000000000000008152915193955093638456cb599382840193919290919082900301818387803b1580156108ba57600080fd5b505af11580156108ce573d6000803e3d6000fd5b505050505080806108de9061226f565b9150506107f4565b50565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b03161461095a5760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604482015260640161063e565b610962611a52565b61076e611aa4565b6007818154811061097a57600080fd5b60009182526020909120600590910201805460018201546002830154600384015460049094015492945090926001600160a01b039182169291169085565b6109c0611add565b61076e6000611b3d565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b031614610a3b5760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604482015260640161063e565b610a436119a5565b61076e6119f8565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b031614610abc5760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604482015260640161063e565b60005b81518110156106a757610aea828281518110610add57610add6122d7565b6020026020010151611bad565b610ba2576008828281518110610b0257610b026122d7565b602090810291909101810151825460018101845560009384529190922001556040805180820190915282518190849084908110610b4157610b416122d7565b602002602001015181526020016000151581525060096000848481518110610b6b57610b6b6122d7565b602090810291909101810151825281810192909252604001600020825181559101516001909101805460ff19169115159190911790555b80610bac8161226f565b915050610abf565b6000610bbe6119a5565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b03161480610bf057506004543410155b610c615760405162461bcd60e51b8152602060048201526024808201527f4f6e6c792067616d65206372656174696f6e20616d6f756e7420697320616c6c60448201527f6f77656400000000000000000000000000000000000000000000000000000000606482015260840161063e565b60008681526009602052604090205486908114610cc05760405162461bcd60e51b815260206004820181905260248201527f726567697374726174696f6e416d6f7574206973206e6f7420616c6c6f776564604482015260640161063e565b86801580610ce0575060008181526009602052604090206001015460ff16155b610d525760405162461bcd60e51b815260206004820152602160248201527f726567697374726174696f6e416d6f757420697320616c72656164792075736560448201527f6400000000000000000000000000000000000000000000000000000000000000606482015260840161063e565b6000600660055481548110610d6957610d696122d7565b600091825260208220600160029092020101546001600160a01b03169150610d9082611c04565b60008b81526009602090815260408083206001908101805460ff191682179055815160a081018352600354815260058054948201948552338285019081526001600160a01b03808916606085019081526004805460808701908152600780549889018155909a529451959093027fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68881019590955595517fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c689850155517fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68a840180549187167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617905590517fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68b840180549187169190921617905593517fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68c9091015560025490517f21fb4c3500000000000000000000000000000000000000000000000000000000815293945016916321fb4c3591610f40918591016001600160a01b0391909116815260200190565b600060405180830381600087803b158015610f5a57600080fd5b505af1158015610f6e573d6000803e3d6000fd5b50505050610ffb604051806101a0016040528060006001600160a01b0316815260200160006001600160a01b0316815260200160006001600160a01b03168152602001600080191681526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b33602082015260005461010090046001600160a01b03166001600160a01b039081168252600254166040820152606081018e9052600554608082015260035460a082015260c081018c905260e081018d905261010081018b905261012081018a90526101408101899052610160810188905261018081018790526004546000906110859034612258565b9050826001600160a01b0316639647487f82846040518363ffffffff1660e01b81526004016110b491906120ce565b6000604051808303818588803b1580156110cd57600080fd5b505af11580156110e1573d6000803e3d6000fd5b5050600354600554604080519283526001600160a01b03891660208401528201523360608201527fc94e0e39f6c88eefe2da1019ef63fcd57321af4dde03fbe73dadb0275cb06152935060800191506111379050565b60405180910390a16001600360008282546111529190612240565b90915550929f9e505050505050505050505050505050565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b0316146111db5760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604482015260640161063e565b806001600160a01b0381166112325760405162461bcd60e51b815260206004820152601e60248201527f61646472657373206e65656420746f20626520696e697469616c697365640000604482015260640161063e565b600280547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0384169081179091556040519081527fab6a2d4263b3d387f97d78a01e517495e0f6cd26f6d0ecbb9899d6c3922a4f769060200160405180910390a160005b600754811015611417576000600782815481106112bd576112bd6122d7565b60009182526020918290206040805160a081018252600593909302909101805483526001810154938301939093526002808401546001600160a01b039081168484015260038501548116606085018190526004958601546080860152915492517f21fb4c350000000000000000000000000000000000000000000000000000000081529485019190915291935016906321fb4c3590602401600060405180830381600087803b15801561136f57600080fd5b505af1158015611383573d6000803e3d6000fd5b5050505060608101516002546040517fa0dd526f0000000000000000000000000000000000000000000000000000000081526001600160a01b03918216600482015291169063a0dd526f90602401600060405180830381600087803b1580156113eb57600080fd5b505af11580156113ff573d6000803e3d6000fd5b5050505050808061140f9061226f565b91505061129e565b505050565b6008818154811061142c57600080fd5b600091825260209091200154905081565b6060600880548060200260200160405190810160405280929190818152602001828054801561148b57602002820191906000526020600020905b815481526020019060010190808311611477575b5050505050905090565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b0316146115065760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604482015260640161063e565b6001600560008282546115199190612240565b90915550506040805180820190915260055481526001600160a01b03918216602082019081526006805460018101825560009190915291517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600290930292830155517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4090910180547fffffffffffffffffffffffff00000000000000000000000000000000000000001691909216179055565b60606007805480602002602001604051908101604052809291908181526020016000905b8282101561165d5760008481526020908190206040805160a08101825260058602909201805483526001808201548486015260028201546001600160a01b03908116938501939093526003820154909216606084015260040154608083015290835290920191016115f1565b50505050905090565b61166e611add565b6001600160a01b0381166116ea5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161063e565b6108e681611b3d565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b0316146117645760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604482015260640161063e565b61176c611a52565b611774611aa4565b60005b6007548110156108e657600060078281548110611796576117966122d7565b600091825260208083206040805160a08101825260059094029091018054845260018101549284019290925260028201546001600160a01b039081168483015260038301541660608401819052600492830154608085015281517f3f4ba83a000000000000000000000000000000000000000000000000000000008152915193955093633f4ba83a9382840193919290919082900301818387803b15801561183d57600080fd5b505af1158015611851573d6000803e3d6000fd5b505050505080806118619061226f565b915050611777565b47818110156118ba5760405162461bcd60e51b815260206004820152601e60248201527f4e6f7420656e6f75676820696e20636f6e74726163742062616c616e63650000604482015260640161063e565b6000836001600160a01b03168360405160006040518083038185875af1925050503d8060008114611907576040519150601f19603f3d011682016040523d82523d6000602084013e61190c565b606091505b505090508061199f57604080516001600160a01b0386168152602081018590527f3506b32cea6b36a739c1c2a71a9e1b3d6222104389c07219059fa6eb6d2e0563910160405180910390a160405162461bcd60e51b815260206004820152601060248201527f5472616e73666572206661696c65642e00000000000000000000000000000000604482015260640161063e565b50505050565b60005460ff161561076e5760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a2070617573656400000000000000000000000000000000604482015260640161063e565b611a006119a5565b6000805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611a353390565b6040516001600160a01b03909116815260200160405180910390a1565b60005460ff1661076e5760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f7420706175736564000000000000000000000000604482015260640161063e565b611aac611a52565b6000805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33611a35565b6000546001600160a01b0361010090910416331461076e5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161063e565b600080546001600160a01b038381166101008181027fffffffffffffffffffffff0000000000000000000000000000000000000000ff851617855560405193049190911692909183917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35050565b6000805b600854811015611bfb578260088281548110611bcf57611bcf6122d7565b90600052602060002001541415611be95750600192915050565b80611bf38161226f565b915050611bb1565b50600092915050565b60006040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528260601b60148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f09150506001600160a01b038116611cba5760405162461bcd60e51b815260206004820152601660248201527f455243313136373a20637265617465206661696c656400000000000000000000604482015260640161063e565b919050565b80356001600160a01b0381168114611cba57600080fd5b600082601f830112611ce757600080fd5b81356020611cfc611cf78361221c565b6121eb565b8281528181019085830160a080860288018501891015611d1b57600080fd5b6000805b87811015611d805782848c031215611d35578182fd5b611d3d6121c2565b843581528785013588820152604080860135908201526060611d60818701611cbf565b908201526080858101359082015286529486019492820192600101611d1f565b50929998505050505050505050565b600060208284031215611da157600080fd5b611daa82611cbf565b9392505050565b60006020808385031215611dc457600080fd5b823567ffffffffffffffff811115611ddb57600080fd5b8301601f81018513611dec57600080fd5b8035611dfa611cf78261221c565b80828252848201915084840188868560051b8701011115611e1a57600080fd5b600094505b83851015611e3d578035835260019490940193918501918501611e1f565b50979650505050505050565b600080600080600080600080610100898b031215611e6657600080fd5b883597506020808a0135975060408a0135965060608a0135955060808a0135945060a08a0135935060c08a013567ffffffffffffffff80821115611ea957600080fd5b818c0191508c601f830112611ebd57600080fd5b813581811115611ecf57611ecf612306565b611ee184601f19601f840116016121eb565b8181528e85838601011115611ef557600080fd5b818585018683013760009181019094015291935060e08b01359180831115611f1c57600080fd5b5050611f2a8b828c01611cd6565b9150509295985092959890939650565b600060208284031215611f4c57600080fd5b5035919050565b600081518084526020808501945080840160005b83811015611fb6578151805188528381015184890152604080820151908901526060808201516001600160a01b0316908901526080908101519088015260a09096019590820190600101611f67565b509495945050505050565b6000815180845260005b81811015611fe757602081850181015186830182015201611fcb565b81811115611ff9576000602083870101525b50601f01601f19169290920160200192915050565b602080825282518282018190526000919060409081850190868401855b8281101561207d578151805185528681015187860152858101516001600160a01b0390811687870152606080830151909116908601526080908101519085015260a0909301929085019060010161202b565b5091979650505050505050565b6020808252825182820181905260009190848201906040850190845b818110156120c2578351835292840192918401916001016120a6565b50909695505050505050565b602081526120e86020820183516001600160a01b03169052565b6000602083015161210460408401826001600160a01b03169052565b5060408301516001600160a01b03811660608401525060608301516080830152608083015160a083015260a083015160c083015260c083015160e083015260e08301516101008181850152808501519150506101208181850152808501519150506101408181850152808501519150506101608181850152808501519150506101a0610180818186015261219c6101c0860184611fc1565b90860151858203601f1901838701529092506121b88382611f53565b9695505050505050565b60405160a0810167ffffffffffffffff811182821017156121e5576121e5612306565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171561221457612214612306565b604052919050565b600067ffffffffffffffff82111561223657612236612306565b5060051b60200190565b60008219821115612253576122536122a8565b500190565b60008282101561226a5761226a6122a8565b500390565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156122a1576122a16122a8565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fdfea2646970667358221220cca8f862017deb3298822f8e8dae0b3b0a80f6e05dd7e494f881b9a2c4b2663364736f6c63430008060033"; + "0x608060405260006003553480156200001657600080fd5b50604051620028e6380380620028e6833981016040819052620000399162000415565b6000805460ff191690556200004e3362000340565b6001808055815182911115620000c65760405162461bcd60e51b815260206004820152603260248201527f617574686f72697a6564416d6f756e74732073686f756c64206265206772656160448201527174686572206f7220657175616c20746f203160701b60648201526084015b60405180910390fd5b846001600160a01b0381166200011f5760405162461bcd60e51b815260206004820152601e60248201527f61646472657373206e65656420746f20626520696e697469616c6973656400006044820152606401620000bd565b846001600160a01b038116620001785760405162461bcd60e51b815260206004820152601e60248201527f61646472657373206e65656420746f20626520696e697469616c6973656400006044820152606401620000bd565b600280546001600160a01b038089166001600160a01b031992831617835560048890556040805180820190915260055481528a8216602082019081526006805460018101825560009182529251929095027ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f810192909255517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4090910180549190921692169190911790555b845181101562000332576200025b8582815181106200024757620002476200053f565b60200260200101516200039960201b60201c565b6200031d5760088582815181106200027757620002776200053f565b602090810291909101810151825460018101845560009384529190922001556040805180820190915285518190879084908110620002b957620002b96200053f565b602002602001015181526020016000151581525060096000878481518110620002e657620002e66200053f565b602090810291909101810151825281810192909252604001600020825181559101516001909101805460ff19169115159190911790555b80620003298162000515565b91505062000224565b50505050505050506200056b565b600080546001600160a01b03838116610100818102610100600160a81b0319851617855560405193049190911692909183917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35050565b6000805b600854811015620003ef578260088281548110620003bf57620003bf6200053f565b90600052602060002001541415620003da5750600192915050565b80620003e68162000515565b9150506200039d565b50600092915050565b80516001600160a01b03811681146200041057600080fd5b919050565b600080600080608085870312156200042c57600080fd5b6200043785620003f8565b9350602062000448818701620003f8565b6040870151606088015191955093506001600160401b03808211156200046d57600080fd5b818801915088601f8301126200048257600080fd5b81518181111562000497576200049762000555565b8060051b604051601f19603f83011681018181108582111715620004bf57620004bf62000555565b604052828152858101935084860182860187018d1015620004df57600080fd5b600095505b8386101562000504578051855260019590950194938601938601620004e4565b50989b979a50959850505050505050565b60006000198214156200053857634e487b7160e01b600052601160045260246000fd5b5060010190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b61236b806200057b6000396000f3fe60806040526004361061019a5760003560e01c80638456cb59116100e1578063ac5f50c81161008a578063ea8ac8cf11610064578063ea8ac8cf14610564578063eae81c371461057a578063f2fde38b1461059c578063fdd3d43d146105bc576101da565b8063ac5f50c8146104a7578063c1e6a4ce14610522578063d59d2efa14610544576101da565b8063953aef90116100bb578063953aef90146104545780639d73613d14610467578063a649beb214610487576101da565b80638456cb59146103fc57806388244f15146104115780638da5cb5b14610431576101da565b80634acb33a011610143578063657908d11161011d578063657908d11461037d57806367f98152146103d1578063715018a6146103e7576101da565b80634acb33a0146102fe5780635c975abb1461033657806361b8ce8c14610359576101da565b80633b7b617a116101745780633b7b617a146102885780633f4ba83a1461029d57806348308bd7146102b2576101da565b806308a80ff51461020f578063117a5b901461023157806324600fc314610273576101da565b366101da57604080513381523460208201527f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f8852587491015b60405180910390a1005b604080513381523460208201527f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f8852587491016101d0565b34801561021b57600080fd5b5061022f61022a366004611d8f565b6105d1565b005b34801561023d57600080fd5b5061025161024c366004611f3a565b6106ab565b604080519283526001600160a01b039091166020830152015b60405180910390f35b34801561027f57600080fd5b5061022f6106e2565b34801561029457600080fd5b5061022f610770565b3480156102a957600080fd5b5061022f6108e9565b3480156102be57600080fd5b506102e96102cd366004611f3a565b6009602052600090815260409020805460019091015460ff1682565b6040805192835290151560208301520161026a565b34801561030a57600080fd5b5060025461031e906001600160a01b031681565b6040516001600160a01b03909116815260200161026a565b34801561034257600080fd5b5060005460ff16604051901515815260200161026a565b34801561036557600080fd5b5061036f60035481565b60405190815260200161026a565b34801561038957600080fd5b5061039d610398366004611f3a565b61096a565b6040805195865260208601949094526001600160a01b0392831693850193909352166060830152608082015260a00161026a565b3480156103dd57600080fd5b5061036f60055481565b3480156103f357600080fd5b5061022f6109b8565b34801561040857600080fd5b5061022f6109ca565b34801561041d57600080fd5b5061022f61042c366004611db1565b610a4b565b34801561043d57600080fd5b5060005461010090046001600160a01b031661031e565b61031e610462366004611e49565b610bb4565b34801561047357600080fd5b5061022f610482366004611d8f565b61116a565b34801561049357600080fd5b5061036f6104a2366004611f3a565b61141c565b3480156104b357600080fd5b506105056104c2366004611f3a565b6040805180820190915260008082526020820152506000908152600960209081526040918290208251808401909352805483526001015460ff1615159082015290565b60408051825181526020928301511515928101929092520161026a565b34801561052e57600080fd5b5061053761143d565b60405161026a919061208a565b34801561055057600080fd5b5061022f61055f366004611d8f565b611495565b34801561057057600080fd5b5061036f60045481565b34801561058657600080fd5b5061058f6115cd565b60405161026a919061200e565b3480156105a857600080fd5b5061022f6105b7366004611d8f565b611666565b3480156105c857600080fd5b5061022f6116f3565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b0316146106475760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e00000000000000000060448201526064015b60405180910390fd5b806001600160a01b03811661069e5760405162461bcd60e51b815260206004820152601e60248201527f61646472657373206e65656420746f20626520696e697469616c697365640000604482015260640161063e565b6106a782611666565b5050565b600681815481106106bb57600080fd5b6000918252602090912060029091020180546001909101549091506001600160a01b031682565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b0316146107535760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604482015260640161063e565b60005461076e9061010090046001600160a01b031647611869565b565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b0316146107e15760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604482015260640161063e565b6107e96119a5565b6107f16119f8565b60005b6007548110156108e657600060078281548110610813576108136122d7565b600091825260208083206040805160a08101825260059094029091018054845260018101549284019290925260028201546001600160a01b039081168483015260038301541660608401819052600492830154608085015281517f8456cb59000000000000000000000000000000000000000000000000000000008152915193955093638456cb599382840193919290919082900301818387803b1580156108ba57600080fd5b505af11580156108ce573d6000803e3d6000fd5b505050505080806108de9061226f565b9150506107f4565b50565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b03161461095a5760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604482015260640161063e565b610962611a52565b61076e611aa4565b6007818154811061097a57600080fd5b60009182526020909120600590910201805460018201546002830154600384015460049094015492945090926001600160a01b039182169291169085565b6109c0611add565b61076e6000611b3d565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b031614610a3b5760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604482015260640161063e565b610a436119a5565b61076e6119f8565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b031614610abc5760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604482015260640161063e565b60005b81518110156106a757610aea828281518110610add57610add6122d7565b6020026020010151611bad565b610ba2576008828281518110610b0257610b026122d7565b602090810291909101810151825460018101845560009384529190922001556040805180820190915282518190849084908110610b4157610b416122d7565b602002602001015181526020016000151581525060096000848481518110610b6b57610b6b6122d7565b602090810291909101810151825281810192909252604001600020825181559101516001909101805460ff19169115159190911790555b80610bac8161226f565b915050610abf565b6000610bbe6119a5565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b03161480610bf057506004543410155b610c615760405162461bcd60e51b8152602060048201526024808201527f4f6e6c792067616d65206372656174696f6e20616d6f756e7420697320616c6c60448201527f6f77656400000000000000000000000000000000000000000000000000000000606482015260840161063e565b60008681526009602052604090205486908114610cc05760405162461bcd60e51b815260206004820181905260248201527f726567697374726174696f6e416d6f7574206973206e6f7420616c6c6f776564604482015260640161063e565b86801580610ce0575060008181526009602052604090206001015460ff16155b610d525760405162461bcd60e51b815260206004820152602160248201527f726567697374726174696f6e416d6f757420697320616c72656164792075736560448201527f6400000000000000000000000000000000000000000000000000000000000000606482015260840161063e565b6000600660055481548110610d6957610d696122d7565b600091825260208220600160029092020101546001600160a01b03169150610d9082611c04565b60008b81526009602090815260408083206001908101805460ff191682179055815160a081018352600354815260058054948201948552338285019081526001600160a01b03808916606085019081526004805460808701908152600780549889018155909a529451959093027fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68881019590955595517fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c689850155517fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68a840180549187167fffffffffffffffffffffffff000000000000000000000000000000000000000092831617905590517fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68b840180549187169190921617905593517fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68c9091015560025490517f21fb4c3500000000000000000000000000000000000000000000000000000000815293945016916321fb4c3591610f40918591016001600160a01b0391909116815260200190565b600060405180830381600087803b158015610f5a57600080fd5b505af1158015610f6e573d6000803e3d6000fd5b50505050610ffb604051806101a0016040528060006001600160a01b0316815260200160006001600160a01b0316815260200160006001600160a01b03168152602001600080191681526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b33602082015260005461010090046001600160a01b03166001600160a01b039081168252600254166040820152606081018e9052600554608082015260035460a082015260c081018c905260e081018d905261010081018b905261012081018a90526101408101899052610160810188905261018081018790526004546000906110859034612258565b9050826001600160a01b0316639647487f82846040518363ffffffff1660e01b81526004016110b491906120ce565b6000604051808303818588803b1580156110cd57600080fd5b505af11580156110e1573d6000803e3d6000fd5b5050600354600554604080519283526001600160a01b03891660208401528201523360608201527fc94e0e39f6c88eefe2da1019ef63fcd57321af4dde03fbe73dadb0275cb06152935060800191506111379050565b60405180910390a16001600360008282546111529190612240565b90915550929f9e505050505050505050505050505050565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b0316146111db5760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604482015260640161063e565b806001600160a01b0381166112325760405162461bcd60e51b815260206004820152601e60248201527f61646472657373206e65656420746f20626520696e697469616c697365640000604482015260640161063e565b600280547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0384169081179091556040519081527fab6a2d4263b3d387f97d78a01e517495e0f6cd26f6d0ecbb9899d6c3922a4f769060200160405180910390a160005b600754811015611417576000600782815481106112bd576112bd6122d7565b60009182526020918290206040805160a081018252600593909302909101805483526001810154938301939093526002808401546001600160a01b039081168484015260038501548116606085018190526004958601546080860152915492517f21fb4c350000000000000000000000000000000000000000000000000000000081529485019190915291935016906321fb4c3590602401600060405180830381600087803b15801561136f57600080fd5b505af1158015611383573d6000803e3d6000fd5b5050505060608101516002546040517fa0dd526f0000000000000000000000000000000000000000000000000000000081526001600160a01b03918216600482015291169063a0dd526f90602401600060405180830381600087803b1580156113eb57600080fd5b505af11580156113ff573d6000803e3d6000fd5b5050505050808061140f9061226f565b91505061129e565b505050565b6008818154811061142c57600080fd5b600091825260209091200154905081565b6060600880548060200260200160405190810160405280929190818152602001828054801561148b57602002820191906000526020600020905b815481526020019060010190808311611477575b5050505050905090565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b0316146115065760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604482015260640161063e565b6001600560008282546115199190612240565b90915550506040805180820190915260055481526001600160a01b03918216602082019081526006805460018101825560009190915291517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600290930292830155517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4090910180547fffffffffffffffffffffffff00000000000000000000000000000000000000001691909216179055565b60606007805480602002602001604051908101604052809291908181526020016000905b8282101561165d5760008481526020908190206040805160a08101825260058602909201805483526001808201548486015260028201546001600160a01b03908116938501939093526003820154909216606084015260040154608083015290835290920191016115f1565b50505050905090565b61166e611add565b6001600160a01b0381166116ea5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161063e565b6108e681611b3d565b60005461010090046001600160a01b03166001600160a01b0316336001600160a01b0316146117645760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604482015260640161063e565b61176c611a52565b611774611aa4565b60005b6007548110156108e657600060078281548110611796576117966122d7565b600091825260208083206040805160a08101825260059094029091018054845260018101549284019290925260028201546001600160a01b039081168483015260038301541660608401819052600492830154608085015281517f3f4ba83a000000000000000000000000000000000000000000000000000000008152915193955093633f4ba83a9382840193919290919082900301818387803b15801561183d57600080fd5b505af1158015611851573d6000803e3d6000fd5b505050505080806118619061226f565b915050611777565b47818110156118ba5760405162461bcd60e51b815260206004820152601e60248201527f4e6f7420656e6f75676820696e20636f6e74726163742062616c616e63650000604482015260640161063e565b6000836001600160a01b03168360405160006040518083038185875af1925050503d8060008114611907576040519150601f19603f3d011682016040523d82523d6000602084013e61190c565b606091505b505090508061199f57604080516001600160a01b0386168152602081018590527f3506b32cea6b36a739c1c2a71a9e1b3d6222104389c07219059fa6eb6d2e0563910160405180910390a160405162461bcd60e51b815260206004820152601060248201527f5472616e73666572206661696c65642e00000000000000000000000000000000604482015260640161063e565b50505050565b60005460ff161561076e5760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a2070617573656400000000000000000000000000000000604482015260640161063e565b611a006119a5565b6000805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611a353390565b6040516001600160a01b03909116815260200160405180910390a1565b60005460ff1661076e5760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f7420706175736564000000000000000000000000604482015260640161063e565b611aac611a52565b6000805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33611a35565b6000546001600160a01b0361010090910416331461076e5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161063e565b600080546001600160a01b038381166101008181027fffffffffffffffffffffff0000000000000000000000000000000000000000ff851617855560405193049190911692909183917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35050565b6000805b600854811015611bfb578260088281548110611bcf57611bcf6122d7565b90600052602060002001541415611be95750600192915050565b80611bf38161226f565b915050611bb1565b50600092915050565b60006040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528260601b60148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f09150506001600160a01b038116611cba5760405162461bcd60e51b815260206004820152601660248201527f455243313136373a20637265617465206661696c656400000000000000000000604482015260640161063e565b919050565b80356001600160a01b0381168114611cba57600080fd5b600082601f830112611ce757600080fd5b81356020611cfc611cf78361221c565b6121eb565b8281528181019085830160a080860288018501891015611d1b57600080fd5b6000805b87811015611d805782848c031215611d35578182fd5b611d3d6121c2565b843581528785013588820152604080860135908201526060611d60818701611cbf565b908201526080858101359082015286529486019492820192600101611d1f565b50929998505050505050505050565b600060208284031215611da157600080fd5b611daa82611cbf565b9392505050565b60006020808385031215611dc457600080fd5b823567ffffffffffffffff811115611ddb57600080fd5b8301601f81018513611dec57600080fd5b8035611dfa611cf78261221c565b80828252848201915084840188868560051b8701011115611e1a57600080fd5b600094505b83851015611e3d578035835260019490940193918501918501611e1f565b50979650505050505050565b600080600080600080600080610100898b031215611e6657600080fd5b883597506020808a0135975060408a0135965060608a0135955060808a0135945060a08a0135935060c08a013567ffffffffffffffff80821115611ea957600080fd5b818c0191508c601f830112611ebd57600080fd5b813581811115611ecf57611ecf612306565b611ee184601f19601f840116016121eb565b8181528e85838601011115611ef557600080fd5b818585018683013760009181019094015291935060e08b01359180831115611f1c57600080fd5b5050611f2a8b828c01611cd6565b9150509295985092959890939650565b600060208284031215611f4c57600080fd5b5035919050565b600081518084526020808501945080840160005b83811015611fb6578151805188528381015184890152604080820151908901526060808201516001600160a01b0316908901526080908101519088015260a09096019590820190600101611f67565b509495945050505050565b6000815180845260005b81811015611fe757602081850181015186830182015201611fcb565b81811115611ff9576000602083870101525b50601f01601f19169290920160200192915050565b602080825282518282018190526000919060409081850190868401855b8281101561207d578151805185528681015187860152858101516001600160a01b0390811687870152606080830151909116908601526080908101519085015260a0909301929085019060010161202b565b5091979650505050505050565b6020808252825182820181905260009190848201906040850190845b818110156120c2578351835292840192918401916001016120a6565b50909695505050505050565b602081526120e86020820183516001600160a01b03169052565b6000602083015161210460408401826001600160a01b03169052565b5060408301516001600160a01b03811660608401525060608301516080830152608083015160a083015260a083015160c083015260c083015160e083015260e08301516101008181850152808501519150506101208181850152808501519150506101408181850152808501519150506101608181850152808501519150506101a0610180818186015261219c6101c0860184611fc1565b90860151858203601f1901838701529092506121b88382611f53565b9695505050505050565b60405160a0810167ffffffffffffffff811182821017156121e5576121e5612306565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171561221457612214612306565b604052919050565b600067ffffffffffffffff82111561223657612236612306565b5060051b60200190565b60008219821115612253576122536122a8565b500190565b60008282101561226a5761226a6122a8565b500390565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156122a1576122a16122a8565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fdfea264697066735822122026a5d3042d34ef72dd4d5b3b699f0211e03e3245f7d00d76c52fdcb18cbee7d264736f6c63430008060033"; type GameFactoryConstructorParams = | [signer?: Signer] diff --git a/packages/dapp/src/config/types/typechain/factories/contracts/GameV1__factory.ts b/packages/dapp/src/config/types/typechain/factories/contracts/GameV1__factory.ts index 996aa6b..07b0f42 100644 --- a/packages/dapp/src/config/types/typechain/factories/contracts/GameV1__factory.ts +++ b/packages/dapp/src/config/types/typechain/factories/contracts/GameV1__factory.ts @@ -659,6 +659,11 @@ const _abi = [ name: "id", type: "uint256", }, + { + internalType: "uint256", + name: "versionId", + type: "uint256", + }, { internalType: "uint256", name: "roundId", @@ -1478,7 +1483,7 @@ const _abi = [ ]; const _bytecode = - "0x608060405234801561001057600080fd5b5060016000819055805461ffff1916610100179055615ec480620000356000396000f3fe60806040526004361061034e5760003560e01c80636dfc2fa8116101bb578063af4e99de116100f7578063d65ab5f211610095578063daeded601161006f578063daeded6014610a59578063e2eb41ff14610a61578063e88958dc14610b1c578063f2b3c80914610b325761038e565b8063d65ab5f214610a0f578063d709815414610a24578063d7d0666514610a445761038e565b8063bb80651e116100d1578063bb80651e14610997578063c45a0155146109ac578063cc307795146109cc578063cc32d176146109f95761038e565b8063af4e99de1461094a578063af640d0f1461096c578063b2b7de5e146109825761038e565b806388f9eab4116101645780638f9d0e6d1161013e5780638f9d0e6d146108e15780639647487f146108f75780639c5c5ce71461090a578063a0dd526f1461092a5761038e565b806388f9eab41461088b5780638cd221c9146108ab5780638da5cb5b146108c15761038e565b80637f24da91116101955780637f24da911461084c5780638456cb591461086157806387d92f92146108765761038e565b80636dfc2fa8146107f0578063724d49241461080a57806377e741c71461082c5761038e565b8063419d44201161028a578063558e4414116102335780635c12cd4b1161020d5780635c12cd4b146106285780635c975abb1461077f57806368742da6146107a35780636b1426a4146107c35761038e565b8063558e4414146105d05780635ac801fe146105f25780635b0372fd146106125761038e565b80634c2412a2116102645780634c2412a21461058e5780634c783fb6146105a457806354fd4d50146105ba5761038e565b8063419d442014610546578063451c8506146105595780634acb33a01461056e5761038e565b806314e3fda5116102f75780632f0f7dcc116102d15780632f0f7dcc146104e5578063368acb09146105055780633b9373e51461051b5780633f4ba83a146105315761038e565b806314e3fda51461049057806315c6aee2146104a5578063288dee3b146104c55761038e565b806308a80ff51161032857806308a80ff51461043b5780630bc65d4f1461045b5780630dd16fd5146104705761038e565b806302d05d3f146103c357806306fdde0314610400578063081ef73b146104245761038e565b3661038e57604080513381523460208201527f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f8852587491015b60405180910390a1005b604080513381523460208201527f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f885258749101610384565b3480156103cf57600080fd5b506004546103e3906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561040c57600080fd5b5061041660105481565b6040519081526020016103f7565b34801561043057600080fd5b50610439610b48565b005b34801561044757600080fd5b50610439610456366004615646565b610deb565b34801561046757600080fd5b50610439610f13565b34801561047c57600080fd5b5061043961048b366004615722565b61106a565b34801561049c57600080fd5b50610416611190565b3480156104b157600080fd5b506103e36104c0366004615722565b61119f565b3480156104d157600080fd5b506104396104e0366004615722565b6111c9565b3480156104f157600080fd5b50610439610500366004615646565b61138a565b34801561051157600080fd5b50610416600b5481565b34801561052757600080fd5b5061041660095481565b34801561053d57600080fd5b506104396114b2565b610439610554366004615668565b6116cd565b34801561056557600080fd5b50610439611934565b34801561057a57600080fd5b506006546103e3906001600160a01b031681565b34801561059a57600080fd5b5061041660135481565b3480156105b057600080fd5b50610416600d5481565b3480156105c657600080fd5b5061041660115481565b3480156105dc57600080fd5b506105e5611c8d565b6040516103f79190615ade565b3480156105fe57600080fd5b5061043961060d366004615722565b611d1b565b34801561061e57600080fd5b5061041660125481565b34801561063457600080fd5b5061070f610643366004615646565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039081166000908152601660209081526040918290208251610100808201855282549095168152600182015492810192909252600281015492820192909252600382015460ff9081161515606083015260048301546080830152600583015460a0830152600690920154808316151560c08301529290920416151560e082015290565b6040516103f791906000610100820190506001600160a01b03835116825260208301516020830152604083015160408301526060830151151560608301526080830151608083015260a083015160a083015260c0830151151560c083015260e0830151151560e083015292915050565b34801561078b57600080fd5b5060015460ff165b60405190151581526020016103f7565b3480156107af57600080fd5b506104396107be366004615646565b611d7a565b3480156107cf57600080fd5b506107e36107de366004615722565b611e01565b6040516103f79190615a72565b3480156107fc57600080fd5b506014546107939060ff1681565b34801561081657600080fd5b5061081f611ef8565b6040516103f791906159ae565b34801561083857600080fd5b50610439610847366004615722565b611f5a565b34801561085857600080fd5b50610793612060565b34801561086d57600080fd5b5061043961206a565b34801561088257600080fd5b50610439612124565b34801561089757600080fd5b506104396108a63660046157b7565b612276565b3480156108b757600080fd5b50610416600f5481565b3480156108cd57600080fd5b506003546103e3906001600160a01b031681565b3480156108ed57600080fd5b506104166101f481565b610439610905366004615832565b612508565b34801561091657600080fd5b50610439610925366004615646565b612eb1565b34801561093657600080fd5b50610439610945366004615646565b612ff9565b34801561095657600080fd5b5061095f613320565b6040516103f79190615b04565b34801561097857600080fd5b50610416600e5481565b34801561098e57600080fd5b506104396134e8565b3480156109a357600080fd5b506107936135fe565b3480156109b857600080fd5b506005546103e3906001600160a01b031681565b3480156109d857600080fd5b506109ec6109e7366004615722565b613608565b6040516103f791906159fb565b348015610a0557600080fd5b50610416600a5481565b348015610a1b57600080fd5b506104396136ed565b348015610a3057600080fd5b50610439610a3f366004615722565b6137ca565b348015610a5057600080fd5b50610793613b11565b610439613b1e565b348015610a6d57600080fd5b50610ad3610a7c366004615646565b60166020526000908152604090208054600182015460028301546003840154600485015460058601546006909601546001600160a01b03909516959394929360ff9283169391929091808216916101009091041688565b604080516001600160a01b0390991689526020890197909752958701949094529115156060860152608085015260a0840152151560c0830152151560e0820152610100016103f7565b348015610b2857600080fd5b50610416600c5481565b348015610b3e57600080fd5b506104166103e881565b60145460ff16610b9f5760405162461bcd60e51b815260206004820152601760248201527f47616d65206973206e6f7420696e2070726f677265737300000000000000000060448201526064015b60405180910390fd5b336000908152601660205260409020546001600160a01b0316610c105760405162461bcd60e51b815260206004820152602360248201527f506c6179657220686173206e6f7420656e746572656420696e20746869732067604482015262616d6560e81b6064820152608401610b96565b3360009081526016602052604090206006015460ff1615610c735760405162461bcd60e51b815260206004820152601760248201527f506c617965722068617320616c7265616479206c6f73740000000000000000006044820152606401610b96565b6000610c7d613ee2565b90506002601354610c8e9190615d5c565b811115610d2a5760405162461bcd60e51b8152602060048201526044602482018190527f52656d61696e696e6720706c6179657273206d757374206265206c657373206f908201527f7220657175616c207468616e2068616c66206f66207374617274656420706c6160648201527f7965727300000000000000000000000000000000000000000000000000000000608482015260a401610b96565b610d32613f57565b610d7e5760405162461bcd60e51b815260206004820152601660248201527f47616d65206973206e6f742073706c69747461626c65000000000000000000006044820152606401610b96565b3360009081526016602090815260409182902060068101805461ff001916610100179055600f54905483519182526001600160a01b0316918101919091527fecfdb2d4728da7a277729631087c593ef0c5ee7490333d6713592ab5d2ef837d91015b60405180910390a150565b6003546001600160a01b03163314610e455760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e0000000000000000006044820152606401610b96565b806001600160a01b038116610e9c5760405162461bcd60e51b815260206004820152601e60248201527f61646472657373206e65656420746f20626520696e697469616c6973656400006044820152606401610b96565b600354604080516001600160a01b03928316815291841660208301527f1747af0dff66eb7165b467825c51774199b063a569a06cdea4565bac5d1be8cf910160405180910390a1506003805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6003546001600160a01b03163314610f6d5760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e0000000000000000006044820152606401610b96565b600b5460008111610fc05760405162461bcd60e51b815260206004820152601060248201527f4e6f7468696e6720746f20636c61696d000000000000000000000000000000006044820152606401610b96565b600b54804710156110135760405162461bcd60e51b815260206004820152601e60248201527f4e6f7420656e6f75676820696e20636f6e74726163742062616c616e636500006044820152606401610b96565b600b805460009091556040518181527f18255713cc71a701d658d8e5a84c3f4933238261498a7994ee9c009590852e129060200160405180910390a1600354611065906001600160a01b031682613fd2565b505050565b6004546001600160a01b031633148061108d57506003546001600160a01b031633145b6110e45760405162461bcd60e51b815260206004820152602260248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220637265617460448201526137b960f11b6064820152608401610b96565b60145460ff16156111375760405162461bcd60e51b815260206004820152601b60248201527f47616d6520697320616c726561647920696e2070726f677265737300000000006044820152606401610b96565b806101f481111561118a5760405162461bcd60e51b815260206004820152601460248201527f43726561746f722066656520746f6f20686967680000000000000000000000006044820152606401610b96565b50600c55565b600061119a613ee2565b905090565b601581815481106111af57600080fd5b6000918252602090912001546001600160a01b0316905081565b6004546001600160a01b03163314806111ec57506003546001600160a01b031633145b6112435760405162461bcd60e51b815260206004820152602260248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220637265617460448201526137b960f11b6064820152608401610b96565b80600181116112ba5760405162461bcd60e51b815260206004820152602e60248201527f6d6178506c61796572732073686f756c6420626520626967676572207468616e60448201527f206f7220657175616c20746f20320000000000000000000000000000000000006064820152608401610b96565b60648111156113315760405162461bcd60e51b815260206004820152602860248201527f6d6178506c61796572732073686f756c64206e6f74206265206269676765722060448201527f7468616e203130300000000000000000000000000000000000000000000000006064820152608401610b96565b60145460ff16156113845760405162461bcd60e51b815260206004820152601b60248201527f47616d6520697320616c726561647920696e2070726f677265737300000000006044820152606401610b96565b50601355565b6004546001600160a01b031633146113e45760405162461bcd60e51b815260206004820152601960248201527f43616c6c6572206973206e6f74207468652063726561746f72000000000000006044820152606401610b96565b806001600160a01b03811661143b5760405162461bcd60e51b815260206004820152601e60248201527f61646472657373206e65656420746f20626520696e697469616c6973656400006044820152606401610b96565b600454604080516001600160a01b03928316815291841660208301527fff4fcaa45454ebf616ff6a99166f489a8840800456562c311fdc11f494735112910160405180910390a1506004805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6004546001600160a01b03163314806114d557506003546001600160a01b031633145b806114ea57506005546001600160a01b031633145b61155c5760405162461bcd60e51b815260206004820152602d60248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220637265617460448201527f6f72206f7220666163746f7279000000000000000000000000000000000000006064820152608401610b96565b61156461410e565b6006546001600160a01b03166115bc5760405162461bcd60e51b815260206004820152601d60248201527f4b6565706572206e65656420746f20626520696e697469616c697365640000006044820152606401610b96565b600780546115c990615dd2565b1515905061163f5760405162461bcd60e51b815260206004820152602260248201527f4b65657065722063726f6e206e65656420746f20626520696e697469616c697360448201527f65640000000000000000000000000000000000000000000000000000000000006064820152608401610b96565b600f546000908152601860205260409020546116c35760405162461bcd60e51b815260206004820152602760248201527f5072697a65732073686f756c64206265206772656174686572206f722065717560448201527f616c20746f2031000000000000000000000000000000000000000000000000006064820152608401610b96565b6116cb614160565b565b6004546001600160a01b03163314806116f057506003546001600160a01b031633145b6117475760405162461bcd60e51b815260206004820152602260248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220637265617460448201526137b960f11b6064820152608401610b96565b60145460ff161561179a5760405162461bcd60e51b815260206004820152601b60248201527f47616d6520697320616c726561647920696e2070726f677265737300000000006044820152606401610b96565b8060008151116118125760405162461bcd60e51b815260206004820152602760248201527f5072697a65732073686f756c64206265206772656174686572206f722065717560448201527f616c20746f2031000000000000000000000000000000000000000000000000006064820152608401610b96565b60005b81518110156118a657611829816001615d44565b82828151811061183b5761183b615e62565b602002602001015160000151146118945760405162461bcd60e51b815260206004820152601960248201527f5072697a65206c697374206973206e6f74206f726465726564000000000000006044820152606401610b96565b8061189e81615e07565b915050611815565b50816118b1816143a9565b6118ba8361444e565b6118c2613f57565b6110655760405162461bcd60e51b815260206004820152602660248201527f546869732076657273696f6e206f6e6c7920616c6c6f77207374616e6461726460448201527f207072697a6500000000000000000000000000000000000000000000000000006064820152608401610b96565b33803b9081156119865760405162461bcd60e51b815260206004820152601360248201527f4e6f20636f6e747261637420616c6c6f776564000000000000000000000000006044820152606401610b96565b61198e614526565b601354601554146119e15760405162461bcd60e51b815260206004820152601560248201527f546869732067616d65206973206e6f742066756c6c00000000000000000000006044820152606401610b96565b336000908152601660205260409020546001600160a01b0316611a525760405162461bcd60e51b815260206004820152602360248201527f506c6179657220686173206e6f7420656e746572656420696e20746869732067604482015262616d6560e81b6064820152608401610b96565b3360009081526016602052604090206006015460ff1615611ab55760405162461bcd60e51b815260206004820152601760248201527f506c617965722068617320616c7265616479206c6f73740000000000000000006044820152606401610b96565b3360009081526016602052604090206003015460ff1615611b3e5760405162461bcd60e51b815260206004820152602760248201527f506c617965722068617320616c726561647920706c6179656420696e2074686960448201527f7320726f756e64000000000000000000000000000000000000000000000000006064820152608401610b96565b6004546001600160a01b0316331415611b995760405162461bcd60e51b815260206004820152601b60248201527f43616c6c65722063616e2774206265207468652063726561746f7200000000006044820152606401610b96565b60145460ff16611beb5760405162461bcd60e51b815260206004820152601760248201527f47616d65206973206e6f7420696e2070726f67726573730000000000000000006044820152606401610b96565b3360009081526016602052604090206001810154421080611c0f5750806002015442115b15611c1d5761106581614579565b60038101805460ff19166001908117909155600482018054600090611c43908490615d44565b909155505080546040516001600160a01b0390911681527fb319114ddf82ce12987c3ce7bee0048bcf09d254a6f3454d293c8e5d71056657906020015b60405180910390a1505050565b60078054611c9a90615dd2565b80601f0160208091040260200160405190810160405280929190818152602001828054611cc690615dd2565b8015611d135780601f10611ce857610100808354040283529160200191611d13565b820191906000526020600020905b815481529060010190602001808311611cf657829003601f168201915b505050505081565b6004546001600160a01b03163314611d755760405162461bcd60e51b815260206004820152601960248201527f43616c6c6572206973206e6f74207468652063726561746f72000000000000006044820152606401610b96565b601055565b6005546001600160a01b0316331480611d9d57506003546001600160a01b031633145b611df45760405162461bcd60e51b815260206004820152602260248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220666163746f604482015261727960f01b6064820152608401610b96565b611dfe8147613fd2565b50565b606081600f54811115611e565760405162461bcd60e51b815260206004820152601960248201527f5468697320726f756e6420646f6573206e6f74206578697374000000000000006044820152606401610b96565b600083815260176020908152604080832080548251818502810185019093528083529193909284015b82821015611eeb5760008481526020908190206040805160a08101825260058602909201805483526001808201546001600160a01b031684860152600282015492840192909252600381015460608401526004015460ff16151560808301529083529092019101611e7f565b5050505091505b50919050565b60606015805480602002602001604051908101604052809291908181526020018280548015611f5057602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611f32575b5050505050905090565b6003546001600160a01b03163314611fb45760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e0000000000000000006044820152606401610b96565b60145460ff16156120075760405162461bcd60e51b815260206004820152601b60248201527f47616d6520697320616c726561647920696e2070726f677265737300000000006044820152606401610b96565b806103e881111561205a5760405162461bcd60e51b815260206004820152601560248201527f54726561737572792066656520746f6f206869676800000000000000000000006044820152606401610b96565b50600a55565b600061119a613f57565b6004546001600160a01b031633148061208d57506003546001600160a01b031633145b806120a257506005546001600160a01b031633145b6121145760405162461bcd60e51b815260206004820152602d60248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220637265617460448201527f6f72206f7220666163746f7279000000000000000000000000000000000000006064820152608401610b96565b61211c614526565b6116cb6145e5565b6004546001600160a01b0316331461217e5760405162461bcd60e51b815260206004820152601960248201527f43616c6c6572206973206e6f74207468652063726561746f72000000000000006044820152606401610b96565b600d54600081116121d15760405162461bcd60e51b815260206004820152601060248201527f4e6f7468696e6720746f20636c61696d000000000000000000000000000000006044820152606401610b96565b600d54804710156122245760405162461bcd60e51b815260206004820152601e60248201527f4e6f7420656e6f75676820696e20636f6e74726163742062616c616e636500006044820152606401610b96565b600d805460009091556040518181527f4f92ddf6ce836a965caa7f2627f07726ada3bdc07abafe4f7a07af8a81eb0de39060200160405180910390a1600454611065906001600160a01b031682613fd2565b6004546001600160a01b031633148061229957506003546001600160a01b031633145b6122f05760405162461bcd60e51b815260206004820152602260248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220637265617460448201526137b960f11b6064820152608401610b96565b80516123645760405162461bcd60e51b815260206004820152602260248201527f4b65657065722063726f6e206e65656420746f20626520696e697469616c697360448201527f65640000000000000000000000000000000000000000000000000000000000006064820152608401610b96565b805161237790600790602084019061548c565b5060405163e04b976960e01b815260009073__$2a5f91f3b8d172a11a2b02e40add8b4c78$__9063e04b9769906123b390600790600401615af1565b60006040518083038186803b1580156123cb57600080fd5b505af41580156123df573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612407919081019061573b565b90507f99e95fbe7400e59e10d99096b3cbff90483a22a02d077e8e2f1a7b027cf00487600854600760405161243d929190615c3b565b60405180910390a16006546008546040805160048082526024820183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1663595bef2f60e11b17905291517f245c3a8a0000000000000000000000000000000000000000000000000000000081526001600160a01b039094169363245c3a8a936124d293909230929091889101615bf6565b600060405180830381600087803b1580156124ec57600080fd5b505af1158015612500573d6000803e3d6000fd5b505050505050565b600154610100900460ff16156125865760405162461bcd60e51b815260206004820152603060248201527f54686520696d706c656d656e746174696f6e20636f6e74726163742063616e2760448201527f7420626520696e697469616c697a6564000000000000000000000000000000006064820152608401610b96565b6004546001600160a01b0316156125df5760405162461bcd60e51b815260206004820152601c60248201527f436f6e747261637420616c726561647920696e697469616c697a6564000000006044820152606401610b96565b8060e001356001811161265a5760405162461bcd60e51b815260206004820152602e60248201527f6d6178506c61796572732073686f756c6420626520626967676572207468616e60448201527f206f7220657175616c20746f20320000000000000000000000000000000000006064820152608401610b96565b60648111156126d15760405162461bcd60e51b815260206004820152602860248201527f6d6178506c61796572732073686f756c64206e6f74206265206269676765722060448201527f7468616e203130300000000000000000000000000000000000000000000000006064820152608401610b96565b8160c001356000811161274c5760405162461bcd60e51b815260206004820152602560248201527f706c617954696d6552616e67652073686f756c6420626520626967676572207460448201527f68616e20300000000000000000000000000000000000000000000000000000006064820152608401610b96565b600981106127c25760405162461bcd60e51b815260206004820152602960248201527f706c617954696d6552616e67652073686f756c64206e6f74206265206269676760448201527f6572207468616e203800000000000000000000000000000000000000000000006064820152608401610b96565b8261012001356103e881111561281a5760405162461bcd60e51b815260206004820152601560248201527f54726561737572792066656520746f6f206869676800000000000000000000006044820152606401610b96565b8361014001356101f48111156128725760405162461bcd60e51b815260206004820152601460248201527f43726561746f722066656520746f6f20686967680000000000000000000000006044820152606401610b96565b612880610180860186615c54565b808060200260200160405190810160405280939291908181526020016000905b828210156128cc576128bd60a0830286013681900381019061586e565b815260200190600101906128a0565b505050505060008151116129485760405162461bcd60e51b815260206004820152602760248201527f5072697a65732073686f756c64206265206772656174686572206f722065717560448201527f616c20746f2031000000000000000000000000000000000000000000000000006064820152608401610b96565b60005b81518110156129dc5761295f816001615d44565b82828151811061297157612971615e62565b602002602001015160000151146129ca5760405162461bcd60e51b815260206004820152601960248201527f5072697a65206c697374206973206e6f74206f726465726564000000000000006044820152606401610b96565b806129d481615e07565b91505061294b565b506129ea6020870187615646565b6003805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055612a276040870160208801615646565b600480546001600160a01b039290921673ffffffffffffffffffffffffffffffffffffffff199283161790556005805490911633179055606086013560105560006002819055610100870135600955610120870135600a55610140870135600c55600b819055600d81905560a0870135600e556080870135601155600f5560c086013560125560e0860135601355612ac3610160870187615ca4565b612acf91600791615510565b5060405163e04b976960e01b815260009073__$2a5f91f3b8d172a11a2b02e40add8b4c78$__9063e04b976990612b0b90600790600401615af1565b60006040518083038186803b158015612b2357600080fd5b505af4158015612b37573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612b5f919081019061573b565b9050612b716060880160408901615646565b6006805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055612c05612baf610180890189615c54565b808060200260200160405190810160405280939291908181526020016000905b82821015612bfb57612bec60a0830286013681900381019061586e565b81526020019060010190612bcf565b50505050506143a9565b612c6c612c16610180890189615c54565b808060200260200160405190810160405280939291908181526020016000905b82821015612c6257612c5360a0830286013681900381019061586e565b81526020019060010190612c36565b505050505061444e565b60095415158015612c805750612c80613f57565b80612c8b5750600954155b612cd75760405162461bcd60e51b815260206004820152601760248201527f436f6e66696775726174696f6e206d6973736d617463680000000000000000006044820152606401610b96565b612cdf613f57565b612d515760405162461bcd60e51b815260206004820152602660248201527f546869732076657273696f6e206f6e6c7920616c6c6f77207374616e6461726460448201527f207072697a6500000000000000000000000000000000000000000000000000006064820152608401610b96565b600654604080517f448ae98b00000000000000000000000000000000000000000000000000000000815290516000926001600160a01b03169163448ae98b916004808301926020929190829003018186803b158015612daf57600080fd5b505afa158015612dc3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612de7919061588a565b60088190556006546040805160048082526024820183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1663595bef2f60e11b17905291517f80fc37b30000000000000000000000000000000000000000000000000000000081529394506001600160a01b03909216926380fc37b392612e75923092889101615970565b600060405180830381600087803b158015612e8f57600080fd5b505af1158015612ea3573d6000803e3d6000fd5b505050505050505050505050565b6005546001600160a01b0316331480612ed457506003546001600160a01b031633145b612f2b5760405162461bcd60e51b815260206004820152602260248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220666163746f604482015261727960f01b6064820152608401610b96565b806001600160a01b038116612f825760405162461bcd60e51b815260206004820152601e60248201527f61646472657373206e65656420746f20626520696e697469616c6973656400006044820152606401610b96565b600554604080516001600160a01b03928316815291841660208301527f454150024738d97b603d814da3524718dbca71a176ba51eb9978cce32713a5d0910160405180910390a1506005805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6005546001600160a01b031633148061301c57506003546001600160a01b031633145b6130735760405162461bcd60e51b815260206004820152602260248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220666163746f604482015261727960f01b6064820152608401610b96565b806001600160a01b0381166130ca5760405162461bcd60e51b815260206004820152601e60248201527f61646472657373206e65656420746f20626520696e697469616c6973656400006044820152606401610b96565b6006805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0384169081179091556008546040805191825260208201929092527f967edc169058f4cc6ee1336d975d194ac04b9eef04cab44cab8a6104ded9aab8910160405180910390a1600654604080517f448ae98b00000000000000000000000000000000000000000000000000000000815290516000926001600160a01b03169163448ae98b916004808301926020929190829003018186803b15801561319057600080fd5b505afa1580156131a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131c8919061588a565b600881905560405163e04b976960e01b815290915060009073__$2a5f91f3b8d172a11a2b02e40add8b4c78$__9063e04b97699061320b90600790600401615af1565b60006040518083038186803b15801561322357600080fd5b505af4158015613237573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261325f919081019061573b565b6006546040805160048082526024820183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1663595bef2f60e11b17905291517f80fc37b30000000000000000000000000000000000000000000000000000000081529394506001600160a01b03909216926380fc37b3926132e8923092879101615970565b600060405180830381600087803b15801561330257600080fd5b505af1158015613316573d6000803e3d6000fd5b5050505050505050565b6133b2604051806101e001604052806000815260200160008152602001600080191681526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160001515815260200160001515815260200160006001600160a01b0316815260200160006001600160a01b03168152602001606081525090565b604051806101e00160405280600e548152602001600f548152602001601054815260200160158054905081526020016133e9613ee2565b8152602001601354815260200160095481526020016012548152602001600a548152602001600c54815260200161342260015460ff1690565b1515815260145460ff16151560208201526004546001600160a01b0390811660408301526003541660608201526007805460809092019161346290615dd2565b80601f016020809104026020016040519081016040528092919081815260200182805461348e90615dd2565b80156134db5780601f106134b0576101008083540402835291602001916134db565b820191906000526020600020905b8154815290600101906020018083116134be57829003601f168201915b5050505050815250905090565b6006546001600160a01b031633148061350b57506003546001600160a01b031633145b61357d5760405162461bcd60e51b815260206004820152602160248201527f43616c6c6572206973206e6f74207468652061646d696e206f72206b6565706560448201527f72000000000000000000000000000000000000000000000000000000000000006064820152608401610b96565b613585614526565b60145460ff16156135a557613598614671565b6135a0614723565b6135b9565b60135460155414156135b9576135b9614dee565b600f546040805191825233602083015242908201527f4239766e984f5ee305dbb56c4a82bb97b6e3a04e714e529d2d0fa04a1dbbe605906060015b60405180910390a1565b600061119a614e9b565b606081600f5481111561365d5760405162461bcd60e51b815260206004820152601960248201527f5468697320726f756e6420646f6573206e6f74206578697374000000000000006044820152606401610b96565b600083815260186020908152604080832080548251818502810185019093528083529193909284015b82821015611eeb5760008481526020908190206040805160a08101825260058602909201805483526001808201548486015260028201549284019290925260038101546001600160a01b031660608401526004015460808301529083529092019101613686565b6004546001600160a01b031633148061371057506003546001600160a01b031633145b6137675760405162461bcd60e51b815260206004820152602260248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220637265617460448201526137b960f11b6064820152608401610b96565b61376f614526565b601354601554146137c25760405162461bcd60e51b815260206004820152601560248201527f546869732067616d65206973206e6f742066756c6c00000000000000000000006044820152606401610b96565b6116cb614dee565b80600f5481111561381d5760405162461bcd60e51b815260206004820152601960248201527f5468697320726f756e6420646f6573206e6f74206578697374000000000000006044820152606401610b96565b60005b600083815260176020526040902054811015613ac457600083815260176020526040902080543391908390811061385957613859615e62565b60009182526020909120600160059092020101546001600160a01b03161415613ab257600083815260176020526040902080548290811061389c5761389c615e62565b600091825260209091206004600590920201015460ff16156139265760405162461bcd60e51b815260206004820152602360248201527f5072697a6520666f7220746869732067616d6520616c726561647920636c616960448201527f6d656400000000000000000000000000000000000000000000000000000000006064820152608401610b96565b600083815260176020526040902080548290811061394657613946615e62565b9060005260206000209060050201600201544710156139a75760405162461bcd60e51b815260206004820152601c60248201527f4e6f7420656e6f7567682066756e647320696e20636f6e7472616374000000006044820152606401610b96565b6000838152601760205260409020805460019190839081106139cb576139cb615e62565b906000526020600020906005020160040160006101000a81548160ff0219169083151502179055507f7d3ffe46a7d64de05164bc59d03eabfeade72a1b0a833d888df4893868ee99c53384601760008781526020019081526020016000208481548110613a3a57613a3a615e62565b600091825260209182902060026005909202010154604080516001600160a01b0390951685529184019290925282015260600160405180910390a16000838152601760205260409020805461106591339184908110613a9b57613a9b615e62565b906000526020600020906005020160020154613fd2565b80613abc81615e07565b915050613820565b5060405162461bcd60e51b815260206004820152601c60248201527f506c6179657220646964206e6f742077696e20746869732067616d65000000006044820152606401610b96565b5050565b600061119a600954151590565b33803b908115613b705760405162461bcd60e51b815260206004820152601360248201527f4e6f20636f6e747261637420616c6c6f776564000000000000000000000000006044820152606401610b96565b613b78614526565b60145460ff1615613bcb5760405162461bcd60e51b815260206004820152601b60248201527f47616d6520697320616c726561647920696e2070726f677265737300000000006044820152606401610b96565b60135460155410613c1e5760405162461bcd60e51b815260206004820152601160248201527f546869732067616d652069732066756c6c0000000000000000000000000000006044820152606401610b96565b336000908152601660205260409020546001600160a01b031615613c905760405162461bcd60e51b815260206004820152602360248201527f506c6179657220616c726561647920656e746572656420696e20746869732067604482015262616d6560e81b6064820152608401610b96565b6009543414613d075760405162461bcd60e51b815260206004820152602360248201527f4f6e6c7920726567697374726174696f6e20616d6f756e7420697320616c6c6f60448201527f77656400000000000000000000000000000000000000000000000000000000006064820152608401610b96565b6004546001600160a01b0316331415613d625760405162461bcd60e51b815260206004820152601b60248201527f43616c6c65722063616e2774206265207468652063726561746f7200000000006044820152606401610b96565b604051806101000160405280336001600160a01b031681526020016000815260200160008152602001600015158152602001600081526020016015805490506001613dad9190615d44565b8152600060208083018290526040928301829052338083526016825291839020845181546001600160a01b0391821673ffffffffffffffffffffffffffffffffffffffff1991821617835586840151600180850191909155878701516002850155606088015160038501805491151560ff199092169190911790556080880151600485015560a0880151600585015560c088015160068501805460e0909a015115156101000261ff00199215159290921661ffff19909a1699909917179097556015805497880181557f55f448fdea98c4d29eb340757ef0a66cd03dbb9538908a6a81d96026b71ec475909701805490911690941790935554935483519490921684528301527ffba90a4f5dd73b59c50cd0b428870383996a23edb8a0e8110cf06c4e14a01705910160405180910390a15050565b600080805b601554811015611ef2576016600060158381548110613f0857613f08615e62565b60009182526020808320909101546001600160a01b0316835282019290925260400190206006015460ff16613f455781613f4181615e07565b9250505b80613f4f81615e07565b915050613ee7565b6000805b600f54600090815260186020526040902054811015613fca57600f546000908152601860205260409020805482908110613f9757613f97615e62565b906000526020600020906005020160020154600014613fb857600091505090565b80613fc281615e07565b915050613f5b565b506001905090565b80804710156140235760405162461bcd60e51b815260206004820152601e60248201527f4e6f7420656e6f75676820696e20636f6e74726163742062616c616e636500006044820152606401610b96565b6000836001600160a01b03168360405160006040518083038185875af1925050503d8060008114614070576040519150601f19603f3d011682016040523d82523d6000602084013e614075565b606091505b505090508061410857604080516001600160a01b0386168152602081018590527f3506b32cea6b36a739c1c2a71a9e1b3d6222104389c07219059fa6eb6d2e0563910160405180910390a160405162461bcd60e51b815260206004820152601060248201527f5472616e73666572206661696c65642e000000000000000000000000000000006044820152606401610b96565b50505050565b60015460ff166116cb5760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610b96565b61416861410e565b614170614f39565b60005b6015548110156141f2576000601660006015848154811061419657614196615e62565b60009182526020808320909101546001600160a01b031683528201929092526040019020600681015490915060ff166141df576141d281614f86565b60038101805460ff191690555b50806141ea81615e07565b915050614173565b50600654604080517f448ae98b00000000000000000000000000000000000000000000000000000000815290516000926001600160a01b03169163448ae98b916004808301926020929190829003018186803b15801561425157600080fd5b505afa158015614265573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614289919061588a565b600881905560405163e04b976960e01b815290915060009073__$2a5f91f3b8d172a11a2b02e40add8b4c78$__9063e04b9769906142cc90600790600401615af1565b60006040518083038186803b1580156142e457600080fd5b505af41580156142f8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052614320919081019061573b565b6006546040805160048082526024820183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1663595bef2f60e11b17905291517f80fc37b30000000000000000000000000000000000000000000000000000000081529394506001600160a01b03909216926380fc37b3926124d2923092879101615970565b600954156143b45750565b6000805b82518110156143fe578281815181106143d3576143d3615e62565b602002602001015160200151826143ea9190615d44565b9150806143f681615e07565b9150506143b8565b50803414613b0d5760405162461bcd60e51b815260206004820152601d60248201527f4e65656420746f2073656e64207072697a65706f6f6c20616d6f756e740000006044820152606401610b96565b6000805b82518110156144ba5761447d83828151811061447057614470615e62565b6020026020010151614ff8565b82818151811061448f5761448f615e62565b602002602001015160200151826144a69190615d44565b9150806144b281615e07565b915050614452565b5060095415613b0d5760006013546009546144d59190615d70565b90508082146110655760405162461bcd60e51b815260206004820152601960248201527f57726f6e6720746f74616c20616d6f756e7420746f20776f6e000000000000006044820152606401610b96565b60015460ff16156116cb5760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610b96565b614581613ee2565b600582015560068101805461ffff19166001179055600f5481546004830154604080519384526001600160a01b039092166020840152908201527f6dd6b233b201ff5342eb5248f0849dd9ceac79f106942d38bb6341013bb901d590606001610de0565b6145ed614526565b6145f56150da565b6006546008546040517fea87605b0000000000000000000000000000000000000000000000000000000081526001600160a01b039092169163ea87605b916146439160040190815260200190565b600060405180830381600087803b15801561465d57600080fd5b505af1158015614108573d6000803e3d6000fd5b614679614e9b565b1561468057565b60005b601554811015611dfe57600060166000601584815481106146a6576146a6615e62565b60009182526020808320909101546001600160a01b031683528201929092526040019020600381015490915060ff161580156146e75750600681015460ff16155b156146fa576146f581614579565b614710565b61470381614f86565b60038101805460ff191690555b508061471b81615e07565b915050614683565b600061472d613ee2565b90506000614739614e9b565b9050600182118015614749575080155b15614752575050565b600080600060186000600f548152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b828210156147f35760008481526020908190206040805160a08101825260058602909201805483526001808201548486015260028201549284019290925260038101546001600160a01b03166060840152600401546080830152908352909201910161478c565b5050505090508460011415614a995760005b601554811015614a97576000601660006015848154811061482857614828615e62565b60009182526020808320909101546001600160a01b0390811684528382019490945260409283019091208251610100818101855282549095168152600182015492810192909252600281015492820192909252600382015460ff9081161515606083015260048301546080830152600583015460a0830152600690920154808316151560c08301819052939004909116151560e0820152915061498a57612710600a54846000815181106148de576148de615e62565b6020026020010151602001516148f49190615d70565b6148fe9190615d5c565b9450612710600c548460008151811061491957614919615e62565b60200260200101516020015161492f9190615d70565b6149399190615d5c565b9350600084868560008151811061495257614952615e62565b6020026020010151602001516149689190615d8f565b6149729190615d8f565b90506149846000836000015183615115565b50614a84565b8251821080156149bb57508282815181106149a7576149a7615e62565b6020026020010151600001518160a0015111155b15614a8457612710600a54846000815181106149d9576149d9615e62565b6020026020010151602001516149ef9190615d70565b6149f99190615d5c565b9450612710600c5484600081518110614a1457614a14615e62565b602002602001015160200151614a2a9190615d70565b614a349190615d5c565b93506000848685600081518110614a4d57614a4d615e62565b602002602001015160200151614a639190615d8f565b614a6d9190615d8f565b9050614a828260a00151836000015183615115565b505b5080614a8f81615e07565b915050614805565b505b8315614c88576000805b8251811015614ae957828181518110614abe57614abe615e62565b60200260200101516020015182614ad59190615d44565b915080614ae181615e07565b915050614aa3565b50612710600a5482614afb9190615d70565b614b059190615d5c565b9350612710600c5482614b189190615d70565b614b229190615d5c565b9250600083614b318684615d8f565b614b3b9190615d8f565b90506000614b498883615d5c565b905060005b601554811015614c405760006016600060158481548110614b7157614b71615e62565b60009182526020808320909101546001600160a01b0390811684528382019490945260409283019091208251610100818101855282549095168152600182015492810192909252600281015492820192909252600382015460ff9081161515606083015260048301546080830152600583015460a083015260069092015480831615801560c0840181905294909104909216151560e0820152925090614c1857508060e001515b15614c2d57614c2d6001826000015185615115565b5080614c3881615e07565b915050614b4e565b50600f5460408051918252602082018a905281018290527f7db280ec0707115a4035dec4d93ba741848a5f71a7e2c3255ff3825f8868649c9060600160405180910390a15050505b84614dae5760005b8151811015614dac57612710600a54838381518110614cb157614cb1615e62565b602002602001015160200151614cc79190615d70565b614cd19190615d5c565b9350612710600c54838381518110614ceb57614ceb615e62565b602002602001015160200151614d019190615d70565b614d0b9190615d5c565b925060008385848481518110614d2357614d23615e62565b602002602001015160200151614d399190615d8f565b614d439190615d8f565b9050600082600114614d60576004546001600160a01b0316614d6d565b6003546001600160a01b03165b9050614d97848481518110614d8457614d84615e62565b6020026020010151600001518284615115565b50508080614da490615e07565b915050614c90565b505b82600b6000828254614dc09190615d44565b9250508190555081600d6000828254614dd99190615d44565b90915550614de79050615212565b5050505050565b60005b601554811015614e5057614e3e6016600060158481548110614e1557614e15615e62565b60009182526020808320909101546001600160a01b031683528201929092526040019020614f86565b80614e4881615e07565b915050614df1565b506014805460ff191660011790556015546040517ff145761ccef32f84b8528f66139cc490a4c4723a07b1b101ae9d33cad484adef916135f491429190918252602082015260400190565b60008080614ea7613ee2565b905060005b601554811015614f23576016600060158381548110614ecd57614ecd615e62565b60009182526020808320909101546001600160a01b0316835282019290925260400190206006015460ff6101009091041615614f115782614f0d81615e07565b9350505b80614f1b81615e07565b915050614eac565b508015801590614f3257508082145b9250505090565b614f4161410e565b6001805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b0390911681526020016135f4565b8054600090614f9d906001600160a01b03166153e8565b9050614faa81603c615d70565b614fb590603c615d70565b614fbf9042615d44565b6001830155601254614fd290603c615d70565b614fdd90603c615d70565b8260010154614fec9190615d44565b82600201819055505050565b600f8054600090815260186020908152604080832080546001818101835591855293839020865160059095020184815592860151908301819055858201516002840181905560608701516003850180546001600160a01b03831673ffffffffffffffffffffffffffffffffffffffff1990911617905560808801516004909501859055955492517f0f9ff88614db6a0aefd4f588fb854d9b4cbcde7c8c5f4b995624393655f135bd96610de096949590919586526020860194909452604085019290925260608401526001600160a01b0316608083015260a082015260c00190565b6150e2614526565b6001805460ff1916811790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833614f6e565b600f80546000818152601760208181526040808420815160a0810183529586526001600160a01b038981168785018181528885018b81526060808b018f81526080808d018c8152885460018082018b55998e528b8e209e516005909102909e019d8e559451978d01805473ffffffffffffffffffffffffffffffffffffffff19169890971697909717909555905160028b0155925160038a0155516004909801805460ff191698151598909817909755965480865293835293819020548151938452918301919091528101929092529181018390527fa7a879091a62747ea35e0a5f0061f6b3b923d714ea2434cb0529d551603963159101611c80565b6014805460ff1916905560005b6015548110156152c657601660006015838154811061524057615240615e62565b60009182526020808320909101546001600160a01b031683528201929092526040018120805473ffffffffffffffffffffffffffffffffffffffff19168155600181018290556002810182905560038101805460ff19169055600481018290556005810191909155600601805461ffff19169055806152be81615e07565b91505061521f565b506152d360156000615584565b600f546040805142815260208101929092527fe531e53e13c284466c03d8d2e735e896c641a73c7474c668cd2795304a334499910160405180910390a16001600f60008282546153239190615d44565b9091555050600954615337576116cb6145e5565b6000601860006001600f5461534c9190615d8f565b8152602001908152602001600020905060005b8154811015613b0d576153d682828154811061537d5761537d615e62565b60009182526020918290206040805160a08101825260059093029091018054835260018101549383019390935260028301549082015260038201546001600160a01b031660608201526004909101546080820152614ff8565b806153e081615e07565b91505061535f565b60028054600091826153f983615e07565b91905055506000601254601961540f9190615d8f565b905060008142856002546040516020016154619392919092835260609190911b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000166020830152603482015260540190565b6040516020818303038152906040528051906020012060001c6154849190615e22565b949350505050565b82805461549890615dd2565b90600052602060002090601f0160209004810192826154ba5760008555615500565b82601f106154d357805160ff1916838001178555615500565b82800160010185558215615500579182015b828111156155005782518255916020019190600101906154e5565b5061550c92915061559e565b5090565b82805461551c90615dd2565b90600052602060002090601f01602090048101928261553e5760008555615500565b82601f106155575782800160ff19823516178555615500565b82800160010185558215615500579182015b82811115615500578235825591602001919060010190615569565b5080546000825590600052602060002090810190611dfe91905b5b8082111561550c576000815560010161559f565b80356001600160a01b03811681146155ca57600080fd5b919050565b600060a082840312156155e157600080fd5b60405160a0810181811067ffffffffffffffff8211171561560457615604615e78565b8060405250809150823581526020830135602082015260408301356040820152615630606084016155b3565b6060820152608083013560808201525092915050565b60006020828403121561565857600080fd5b615661826155b3565b9392505050565b6000602080838503121561567b57600080fd5b823567ffffffffffffffff8082111561569357600080fd5b818501915085601f8301126156a757600080fd5b8135818111156156b9576156b9615e78565b6156c7848260051b01615ceb565b818152848101925083850160a0808402860187018a10156156e757600080fd5b600095505b83861015615714576156fe8a836155cf565b85526001959095019493860193908101906156ec565b509098975050505050505050565b60006020828403121561573457600080fd5b5035919050565b60006020828403121561574d57600080fd5b815167ffffffffffffffff81111561576457600080fd5b8201601f8101841361577557600080fd5b805161578861578382615d1c565b615ceb565b81815285602083850101111561579d57600080fd5b6157ae826020830160208601615da6565b95945050505050565b6000602082840312156157c957600080fd5b813567ffffffffffffffff8111156157e057600080fd5b8201601f810184136157f157600080fd5b80356157ff61578382615d1c565b81815285602083850101111561581457600080fd5b81602084016020830137600091810160200191909152949350505050565b60006020828403121561584457600080fd5b813567ffffffffffffffff81111561585b57600080fd5b82016101a0818503121561566157600080fd5b600060a0828403121561588057600080fd5b61566183836155cf565b60006020828403121561589c57600080fd5b5051919050565b600081518084526158bb816020860160208601615da6565b601f01601f19169290920160200192915050565b8054600090600181811c90808316806158e957607f831692505b602080841082141561590b57634e487b7160e01b600052602260045260246000fd5b838852818015615922576001811461593657615964565b60ff198616828a0152604089019650615964565b876000528160002060005b8681101561595c5781548b8201850152908501908301615941565b8a0183019750505b50505050505092915050565b6001600160a01b038416815260606020820152600061599260608301856158a3565b82810360408401526159a481856158a3565b9695505050505050565b6020808252825182820181905260009190848201906040850190845b818110156159ef5783516001600160a01b0316835292840192918401916001016159ca565b50909695505050505050565b602080825282518282018190526000919060409081850190868401855b82811015615a6557815180518552868101518786015285810151868601526060808201516001600160a01b0316908601526080908101519085015260a09093019290850190600101615a18565b5091979650505050505050565b602080825282518282018190526000919060409081850190868401855b82811015615a6557815180518552868101516001600160a01b03168786015285810151868601526060808201519086015260809081015115159085015260a09093019290850190600101615a8f565b60208152600061566160208301846158a3565b60208152600061566160208301846158cf565b6020815281516020820152602082015160408201526040820151606082015260608201516080820152608082015160a082015260a082015160c082015260c082015160e0820152600060e0830151610100818185015280850151915050610120818185015280850151915050610140818185015280850151915050610160615b8f8185018315159052565b8401519050610180615ba48482018315159052565b84015190506101a0615bc0848201836001600160a01b03169052565b84015190506101c0615bdc848201836001600160a01b03169052565b8401516101e08481015290506154846102008401826158a3565b8481526001600160a01b0384166020820152608060408201526000615c1e60808301856158a3565b8281036060840152615c3081856158a3565b979650505050505050565b82815260406020820152600061548460408301846158cf565b6000808335601e19843603018112615c6b57600080fd5b83018035915067ffffffffffffffff821115615c8657600080fd5b602001915060a081023603821315615c9d57600080fd5b9250929050565b6000808335601e19843603018112615cbb57600080fd5b83018035915067ffffffffffffffff821115615cd657600080fd5b602001915036819003821315615c9d57600080fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715615d1457615d14615e78565b604052919050565b600067ffffffffffffffff821115615d3657615d36615e78565b50601f01601f191660200190565b60008219821115615d5757615d57615e36565b500190565b600082615d6b57615d6b615e4c565b500490565b6000816000190483118215151615615d8a57615d8a615e36565b500290565b600082821015615da157615da1615e36565b500390565b60005b83811015615dc1578181015183820152602001615da9565b838111156141085750506000910152565b600181811c90821680615de657607f821691505b60208210811415611ef257634e487b7160e01b600052602260045260246000fd5b6000600019821415615e1b57615e1b615e36565b5060010190565b600082615e3157615e31615e4c565b500690565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fdfea2646970667358221220c988c87c723508652633316cad124fca5e28019138fe8128251755c0a00b31f364736f6c63430008060033"; + "0x608060405234801561001057600080fd5b5060016000819055805461ffff1916610100179055615ee280620000356000396000f3fe60806040526004361061034e5760003560e01c80636dfc2fa8116101bb578063af4e99de116100f7578063d65ab5f211610095578063daeded601161006f578063daeded6014610a59578063e2eb41ff14610a61578063e88958dc14610b1c578063f2b3c80914610b325761038e565b8063d65ab5f214610a0f578063d709815414610a24578063d7d0666514610a445761038e565b8063bb80651e116100d1578063bb80651e14610997578063c45a0155146109ac578063cc307795146109cc578063cc32d176146109f95761038e565b8063af4e99de1461094a578063af640d0f1461096c578063b2b7de5e146109825761038e565b806388f9eab4116101645780638f9d0e6d1161013e5780638f9d0e6d146108e15780639647487f146108f75780639c5c5ce71461090a578063a0dd526f1461092a5761038e565b806388f9eab41461088b5780638cd221c9146108ab5780638da5cb5b146108c15761038e565b80637f24da91116101955780637f24da911461084c5780638456cb591461086157806387d92f92146108765761038e565b80636dfc2fa8146107f0578063724d49241461080a57806377e741c71461082c5761038e565b8063419d44201161028a578063558e4414116102335780635c12cd4b1161020d5780635c12cd4b146106285780635c975abb1461077f57806368742da6146107a35780636b1426a4146107c35761038e565b8063558e4414146105d05780635ac801fe146105f25780635b0372fd146106125761038e565b80634c2412a2116102645780634c2412a21461058e5780634c783fb6146105a457806354fd4d50146105ba5761038e565b8063419d442014610546578063451c8506146105595780634acb33a01461056e5761038e565b806314e3fda5116102f75780632f0f7dcc116102d15780632f0f7dcc146104e5578063368acb09146105055780633b9373e51461051b5780633f4ba83a146105315761038e565b806314e3fda51461049057806315c6aee2146104a5578063288dee3b146104c55761038e565b806308a80ff51161032857806308a80ff51461043b5780630bc65d4f1461045b5780630dd16fd5146104705761038e565b806302d05d3f146103c357806306fdde0314610400578063081ef73b146104245761038e565b3661038e57604080513381523460208201527f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f8852587491015b60405180910390a1005b604080513381523460208201527f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f885258749101610384565b3480156103cf57600080fd5b506004546103e3906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561040c57600080fd5b5061041660105481565b6040519081526020016103f7565b34801561043057600080fd5b50610439610b48565b005b34801561044757600080fd5b50610439610456366004615655565b610deb565b34801561046757600080fd5b50610439610f13565b34801561047c57600080fd5b5061043961048b366004615731565b61106a565b34801561049c57600080fd5b50610416611190565b3480156104b157600080fd5b506103e36104c0366004615731565b61119f565b3480156104d157600080fd5b506104396104e0366004615731565b6111c9565b3480156104f157600080fd5b50610439610500366004615655565b61138a565b34801561051157600080fd5b50610416600b5481565b34801561052757600080fd5b5061041660095481565b34801561053d57600080fd5b506104396114b2565b610439610554366004615677565b6116cd565b34801561056557600080fd5b50610439611934565b34801561057a57600080fd5b506006546103e3906001600160a01b031681565b34801561059a57600080fd5b5061041660135481565b3480156105b057600080fd5b50610416600d5481565b3480156105c657600080fd5b5061041660115481565b3480156105dc57600080fd5b506105e5611c8d565b6040516103f79190615aed565b3480156105fe57600080fd5b5061043961060d366004615731565b611d1b565b34801561061e57600080fd5b5061041660125481565b34801561063457600080fd5b5061070f610643366004615655565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039081166000908152601660209081526040918290208251610100808201855282549095168152600182015492810192909252600281015492820192909252600382015460ff9081161515606083015260048301546080830152600583015460a0830152600690920154808316151560c08301529290920416151560e082015290565b6040516103f791906000610100820190506001600160a01b03835116825260208301516020830152604083015160408301526060830151151560608301526080830151608083015260a083015160a083015260c0830151151560c083015260e0830151151560e083015292915050565b34801561078b57600080fd5b5060015460ff165b60405190151581526020016103f7565b3480156107af57600080fd5b506104396107be366004615655565b611d7a565b3480156107cf57600080fd5b506107e36107de366004615731565b611e01565b6040516103f79190615a81565b3480156107fc57600080fd5b506014546107939060ff1681565b34801561081657600080fd5b5061081f611ef8565b6040516103f791906159bd565b34801561083857600080fd5b50610439610847366004615731565b611f5a565b34801561085857600080fd5b50610793612060565b34801561086d57600080fd5b5061043961206a565b34801561088257600080fd5b50610439612124565b34801561089757600080fd5b506104396108a63660046157c6565b612276565b3480156108b757600080fd5b50610416600f5481565b3480156108cd57600080fd5b506003546103e3906001600160a01b031681565b3480156108ed57600080fd5b506104166101f481565b610439610905366004615841565b612508565b34801561091657600080fd5b50610439610925366004615655565b612eb1565b34801561093657600080fd5b50610439610945366004615655565b612ff9565b34801561095657600080fd5b5061095f613320565b6040516103f79190615b13565b34801561097857600080fd5b50610416600e5481565b34801561098e57600080fd5b506104396134f7565b3480156109a357600080fd5b5061079361360d565b3480156109b857600080fd5b506005546103e3906001600160a01b031681565b3480156109d857600080fd5b506109ec6109e7366004615731565b613617565b6040516103f79190615a0a565b348015610a0557600080fd5b50610416600a5481565b348015610a1b57600080fd5b506104396136fc565b348015610a3057600080fd5b50610439610a3f366004615731565b6137d9565b348015610a5057600080fd5b50610793613b20565b610439613b2d565b348015610a6d57600080fd5b50610ad3610a7c366004615655565b60166020526000908152604090208054600182015460028301546003840154600485015460058601546006909601546001600160a01b03909516959394929360ff9283169391929091808216916101009091041688565b604080516001600160a01b0390991689526020890197909752958701949094529115156060860152608085015260a0840152151560c0830152151560e0820152610100016103f7565b348015610b2857600080fd5b50610416600c5481565b348015610b3e57600080fd5b506104166103e881565b60145460ff16610b9f5760405162461bcd60e51b815260206004820152601760248201527f47616d65206973206e6f7420696e2070726f677265737300000000000000000060448201526064015b60405180910390fd5b336000908152601660205260409020546001600160a01b0316610c105760405162461bcd60e51b815260206004820152602360248201527f506c6179657220686173206e6f7420656e746572656420696e20746869732067604482015262616d6560e81b6064820152608401610b96565b3360009081526016602052604090206006015460ff1615610c735760405162461bcd60e51b815260206004820152601760248201527f506c617965722068617320616c7265616479206c6f73740000000000000000006044820152606401610b96565b6000610c7d613ef1565b90506002601354610c8e9190615d7a565b811115610d2a5760405162461bcd60e51b8152602060048201526044602482018190527f52656d61696e696e6720706c6179657273206d757374206265206c657373206f908201527f7220657175616c207468616e2068616c66206f66207374617274656420706c6160648201527f7965727300000000000000000000000000000000000000000000000000000000608482015260a401610b96565b610d32613f66565b610d7e5760405162461bcd60e51b815260206004820152601660248201527f47616d65206973206e6f742073706c69747461626c65000000000000000000006044820152606401610b96565b3360009081526016602090815260409182902060068101805461ff001916610100179055600f54905483519182526001600160a01b0316918101919091527fecfdb2d4728da7a277729631087c593ef0c5ee7490333d6713592ab5d2ef837d91015b60405180910390a150565b6003546001600160a01b03163314610e455760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e0000000000000000006044820152606401610b96565b806001600160a01b038116610e9c5760405162461bcd60e51b815260206004820152601e60248201527f61646472657373206e65656420746f20626520696e697469616c6973656400006044820152606401610b96565b600354604080516001600160a01b03928316815291841660208301527f1747af0dff66eb7165b467825c51774199b063a569a06cdea4565bac5d1be8cf910160405180910390a1506003805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6003546001600160a01b03163314610f6d5760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e0000000000000000006044820152606401610b96565b600b5460008111610fc05760405162461bcd60e51b815260206004820152601060248201527f4e6f7468696e6720746f20636c61696d000000000000000000000000000000006044820152606401610b96565b600b54804710156110135760405162461bcd60e51b815260206004820152601e60248201527f4e6f7420656e6f75676820696e20636f6e74726163742062616c616e636500006044820152606401610b96565b600b805460009091556040518181527f18255713cc71a701d658d8e5a84c3f4933238261498a7994ee9c009590852e129060200160405180910390a1600354611065906001600160a01b031682613fe1565b505050565b6004546001600160a01b031633148061108d57506003546001600160a01b031633145b6110e45760405162461bcd60e51b815260206004820152602260248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220637265617460448201526137b960f11b6064820152608401610b96565b60145460ff16156111375760405162461bcd60e51b815260206004820152601b60248201527f47616d6520697320616c726561647920696e2070726f677265737300000000006044820152606401610b96565b806101f481111561118a5760405162461bcd60e51b815260206004820152601460248201527f43726561746f722066656520746f6f20686967680000000000000000000000006044820152606401610b96565b50600c55565b600061119a613ef1565b905090565b601581815481106111af57600080fd5b6000918252602090912001546001600160a01b0316905081565b6004546001600160a01b03163314806111ec57506003546001600160a01b031633145b6112435760405162461bcd60e51b815260206004820152602260248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220637265617460448201526137b960f11b6064820152608401610b96565b80600181116112ba5760405162461bcd60e51b815260206004820152602e60248201527f6d6178506c61796572732073686f756c6420626520626967676572207468616e60448201527f206f7220657175616c20746f20320000000000000000000000000000000000006064820152608401610b96565b60648111156113315760405162461bcd60e51b815260206004820152602860248201527f6d6178506c61796572732073686f756c64206e6f74206265206269676765722060448201527f7468616e203130300000000000000000000000000000000000000000000000006064820152608401610b96565b60145460ff16156113845760405162461bcd60e51b815260206004820152601b60248201527f47616d6520697320616c726561647920696e2070726f677265737300000000006044820152606401610b96565b50601355565b6004546001600160a01b031633146113e45760405162461bcd60e51b815260206004820152601960248201527f43616c6c6572206973206e6f74207468652063726561746f72000000000000006044820152606401610b96565b806001600160a01b03811661143b5760405162461bcd60e51b815260206004820152601e60248201527f61646472657373206e65656420746f20626520696e697469616c6973656400006044820152606401610b96565b600454604080516001600160a01b03928316815291841660208301527fff4fcaa45454ebf616ff6a99166f489a8840800456562c311fdc11f494735112910160405180910390a1506004805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6004546001600160a01b03163314806114d557506003546001600160a01b031633145b806114ea57506005546001600160a01b031633145b61155c5760405162461bcd60e51b815260206004820152602d60248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220637265617460448201527f6f72206f7220666163746f7279000000000000000000000000000000000000006064820152608401610b96565b61156461411d565b6006546001600160a01b03166115bc5760405162461bcd60e51b815260206004820152601d60248201527f4b6565706572206e65656420746f20626520696e697469616c697365640000006044820152606401610b96565b600780546115c990615df0565b1515905061163f5760405162461bcd60e51b815260206004820152602260248201527f4b65657065722063726f6e206e65656420746f20626520696e697469616c697360448201527f65640000000000000000000000000000000000000000000000000000000000006064820152608401610b96565b600f546000908152601860205260409020546116c35760405162461bcd60e51b815260206004820152602760248201527f5072697a65732073686f756c64206265206772656174686572206f722065717560448201527f616c20746f2031000000000000000000000000000000000000000000000000006064820152608401610b96565b6116cb61416f565b565b6004546001600160a01b03163314806116f057506003546001600160a01b031633145b6117475760405162461bcd60e51b815260206004820152602260248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220637265617460448201526137b960f11b6064820152608401610b96565b60145460ff161561179a5760405162461bcd60e51b815260206004820152601b60248201527f47616d6520697320616c726561647920696e2070726f677265737300000000006044820152606401610b96565b8060008151116118125760405162461bcd60e51b815260206004820152602760248201527f5072697a65732073686f756c64206265206772656174686572206f722065717560448201527f616c20746f2031000000000000000000000000000000000000000000000000006064820152608401610b96565b60005b81518110156118a657611829816001615d62565b82828151811061183b5761183b615e80565b602002602001015160000151146118945760405162461bcd60e51b815260206004820152601960248201527f5072697a65206c697374206973206e6f74206f726465726564000000000000006044820152606401610b96565b8061189e81615e25565b915050611815565b50816118b1816143b8565b6118ba8361445d565b6118c2613f66565b6110655760405162461bcd60e51b815260206004820152602660248201527f546869732076657273696f6e206f6e6c7920616c6c6f77207374616e6461726460448201527f207072697a6500000000000000000000000000000000000000000000000000006064820152608401610b96565b33803b9081156119865760405162461bcd60e51b815260206004820152601360248201527f4e6f20636f6e747261637420616c6c6f776564000000000000000000000000006044820152606401610b96565b61198e614535565b601354601554146119e15760405162461bcd60e51b815260206004820152601560248201527f546869732067616d65206973206e6f742066756c6c00000000000000000000006044820152606401610b96565b336000908152601660205260409020546001600160a01b0316611a525760405162461bcd60e51b815260206004820152602360248201527f506c6179657220686173206e6f7420656e746572656420696e20746869732067604482015262616d6560e81b6064820152608401610b96565b3360009081526016602052604090206006015460ff1615611ab55760405162461bcd60e51b815260206004820152601760248201527f506c617965722068617320616c7265616479206c6f73740000000000000000006044820152606401610b96565b3360009081526016602052604090206003015460ff1615611b3e5760405162461bcd60e51b815260206004820152602760248201527f506c617965722068617320616c726561647920706c6179656420696e2074686960448201527f7320726f756e64000000000000000000000000000000000000000000000000006064820152608401610b96565b6004546001600160a01b0316331415611b995760405162461bcd60e51b815260206004820152601b60248201527f43616c6c65722063616e2774206265207468652063726561746f7200000000006044820152606401610b96565b60145460ff16611beb5760405162461bcd60e51b815260206004820152601760248201527f47616d65206973206e6f7420696e2070726f67726573730000000000000000006044820152606401610b96565b3360009081526016602052604090206001810154421080611c0f5750806002015442115b15611c1d5761106581614588565b60038101805460ff19166001908117909155600482018054600090611c43908490615d62565b909155505080546040516001600160a01b0390911681527fb319114ddf82ce12987c3ce7bee0048bcf09d254a6f3454d293c8e5d71056657906020015b60405180910390a1505050565b60078054611c9a90615df0565b80601f0160208091040260200160405190810160405280929190818152602001828054611cc690615df0565b8015611d135780601f10611ce857610100808354040283529160200191611d13565b820191906000526020600020905b815481529060010190602001808311611cf657829003601f168201915b505050505081565b6004546001600160a01b03163314611d755760405162461bcd60e51b815260206004820152601960248201527f43616c6c6572206973206e6f74207468652063726561746f72000000000000006044820152606401610b96565b601055565b6005546001600160a01b0316331480611d9d57506003546001600160a01b031633145b611df45760405162461bcd60e51b815260206004820152602260248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220666163746f604482015261727960f01b6064820152608401610b96565b611dfe8147613fe1565b50565b606081600f54811115611e565760405162461bcd60e51b815260206004820152601960248201527f5468697320726f756e6420646f6573206e6f74206578697374000000000000006044820152606401610b96565b600083815260176020908152604080832080548251818502810185019093528083529193909284015b82821015611eeb5760008481526020908190206040805160a08101825260058602909201805483526001808201546001600160a01b031684860152600282015492840192909252600381015460608401526004015460ff16151560808301529083529092019101611e7f565b5050505091505b50919050565b60606015805480602002602001604051908101604052809291908181526020018280548015611f5057602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611f32575b5050505050905090565b6003546001600160a01b03163314611fb45760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e0000000000000000006044820152606401610b96565b60145460ff16156120075760405162461bcd60e51b815260206004820152601b60248201527f47616d6520697320616c726561647920696e2070726f677265737300000000006044820152606401610b96565b806103e881111561205a5760405162461bcd60e51b815260206004820152601560248201527f54726561737572792066656520746f6f206869676800000000000000000000006044820152606401610b96565b50600a55565b600061119a613f66565b6004546001600160a01b031633148061208d57506003546001600160a01b031633145b806120a257506005546001600160a01b031633145b6121145760405162461bcd60e51b815260206004820152602d60248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220637265617460448201527f6f72206f7220666163746f7279000000000000000000000000000000000000006064820152608401610b96565b61211c614535565b6116cb6145f4565b6004546001600160a01b0316331461217e5760405162461bcd60e51b815260206004820152601960248201527f43616c6c6572206973206e6f74207468652063726561746f72000000000000006044820152606401610b96565b600d54600081116121d15760405162461bcd60e51b815260206004820152601060248201527f4e6f7468696e6720746f20636c61696d000000000000000000000000000000006044820152606401610b96565b600d54804710156122245760405162461bcd60e51b815260206004820152601e60248201527f4e6f7420656e6f75676820696e20636f6e74726163742062616c616e636500006044820152606401610b96565b600d805460009091556040518181527f4f92ddf6ce836a965caa7f2627f07726ada3bdc07abafe4f7a07af8a81eb0de39060200160405180910390a1600454611065906001600160a01b031682613fe1565b6004546001600160a01b031633148061229957506003546001600160a01b031633145b6122f05760405162461bcd60e51b815260206004820152602260248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220637265617460448201526137b960f11b6064820152608401610b96565b80516123645760405162461bcd60e51b815260206004820152602260248201527f4b65657065722063726f6e206e65656420746f20626520696e697469616c697360448201527f65640000000000000000000000000000000000000000000000000000000000006064820152608401610b96565b805161237790600790602084019061549b565b5060405163e04b976960e01b815260009073__$2a5f91f3b8d172a11a2b02e40add8b4c78$__9063e04b9769906123b390600790600401615b00565b60006040518083038186803b1580156123cb57600080fd5b505af41580156123df573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612407919081019061574a565b90507f99e95fbe7400e59e10d99096b3cbff90483a22a02d077e8e2f1a7b027cf00487600854600760405161243d929190615c59565b60405180910390a16006546008546040805160048082526024820183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1663595bef2f60e11b17905291517f245c3a8a0000000000000000000000000000000000000000000000000000000081526001600160a01b039094169363245c3a8a936124d293909230929091889101615c14565b600060405180830381600087803b1580156124ec57600080fd5b505af1158015612500573d6000803e3d6000fd5b505050505050565b600154610100900460ff16156125865760405162461bcd60e51b815260206004820152603060248201527f54686520696d706c656d656e746174696f6e20636f6e74726163742063616e2760448201527f7420626520696e697469616c697a6564000000000000000000000000000000006064820152608401610b96565b6004546001600160a01b0316156125df5760405162461bcd60e51b815260206004820152601c60248201527f436f6e747261637420616c726561647920696e697469616c697a6564000000006044820152606401610b96565b8060e001356001811161265a5760405162461bcd60e51b815260206004820152602e60248201527f6d6178506c61796572732073686f756c6420626520626967676572207468616e60448201527f206f7220657175616c20746f20320000000000000000000000000000000000006064820152608401610b96565b60648111156126d15760405162461bcd60e51b815260206004820152602860248201527f6d6178506c61796572732073686f756c64206e6f74206265206269676765722060448201527f7468616e203130300000000000000000000000000000000000000000000000006064820152608401610b96565b8160c001356000811161274c5760405162461bcd60e51b815260206004820152602560248201527f706c617954696d6552616e67652073686f756c6420626520626967676572207460448201527f68616e20300000000000000000000000000000000000000000000000000000006064820152608401610b96565b600981106127c25760405162461bcd60e51b815260206004820152602960248201527f706c617954696d6552616e67652073686f756c64206e6f74206265206269676760448201527f6572207468616e203800000000000000000000000000000000000000000000006064820152608401610b96565b8261012001356103e881111561281a5760405162461bcd60e51b815260206004820152601560248201527f54726561737572792066656520746f6f206869676800000000000000000000006044820152606401610b96565b8361014001356101f48111156128725760405162461bcd60e51b815260206004820152601460248201527f43726561746f722066656520746f6f20686967680000000000000000000000006044820152606401610b96565b612880610180860186615c72565b808060200260200160405190810160405280939291908181526020016000905b828210156128cc576128bd60a0830286013681900381019061587d565b815260200190600101906128a0565b505050505060008151116129485760405162461bcd60e51b815260206004820152602760248201527f5072697a65732073686f756c64206265206772656174686572206f722065717560448201527f616c20746f2031000000000000000000000000000000000000000000000000006064820152608401610b96565b60005b81518110156129dc5761295f816001615d62565b82828151811061297157612971615e80565b602002602001015160000151146129ca5760405162461bcd60e51b815260206004820152601960248201527f5072697a65206c697374206973206e6f74206f726465726564000000000000006044820152606401610b96565b806129d481615e25565b91505061294b565b506129ea6020870187615655565b6003805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055612a276040870160208801615655565b600480546001600160a01b039290921673ffffffffffffffffffffffffffffffffffffffff199283161790556005805490911633179055606086013560105560006002819055610100870135600955610120870135600a55610140870135600c55600b819055600d81905560a0870135600e556080870135601155600f5560c086013560125560e0860135601355612ac3610160870187615cc2565b612acf9160079161551f565b5060405163e04b976960e01b815260009073__$2a5f91f3b8d172a11a2b02e40add8b4c78$__9063e04b976990612b0b90600790600401615b00565b60006040518083038186803b158015612b2357600080fd5b505af4158015612b37573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612b5f919081019061574a565b9050612b716060880160408901615655565b6006805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055612c05612baf610180890189615c72565b808060200260200160405190810160405280939291908181526020016000905b82821015612bfb57612bec60a0830286013681900381019061587d565b81526020019060010190612bcf565b50505050506143b8565b612c6c612c16610180890189615c72565b808060200260200160405190810160405280939291908181526020016000905b82821015612c6257612c5360a0830286013681900381019061587d565b81526020019060010190612c36565b505050505061445d565b60095415158015612c805750612c80613f66565b80612c8b5750600954155b612cd75760405162461bcd60e51b815260206004820152601760248201527f436f6e66696775726174696f6e206d6973736d617463680000000000000000006044820152606401610b96565b612cdf613f66565b612d515760405162461bcd60e51b815260206004820152602660248201527f546869732076657273696f6e206f6e6c7920616c6c6f77207374616e6461726460448201527f207072697a6500000000000000000000000000000000000000000000000000006064820152608401610b96565b600654604080517f448ae98b00000000000000000000000000000000000000000000000000000000815290516000926001600160a01b03169163448ae98b916004808301926020929190829003018186803b158015612daf57600080fd5b505afa158015612dc3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612de79190615899565b60088190556006546040805160048082526024820183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1663595bef2f60e11b17905291517f80fc37b30000000000000000000000000000000000000000000000000000000081529394506001600160a01b03909216926380fc37b392612e7592309288910161597f565b600060405180830381600087803b158015612e8f57600080fd5b505af1158015612ea3573d6000803e3d6000fd5b505050505050505050505050565b6005546001600160a01b0316331480612ed457506003546001600160a01b031633145b612f2b5760405162461bcd60e51b815260206004820152602260248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220666163746f604482015261727960f01b6064820152608401610b96565b806001600160a01b038116612f825760405162461bcd60e51b815260206004820152601e60248201527f61646472657373206e65656420746f20626520696e697469616c6973656400006044820152606401610b96565b600554604080516001600160a01b03928316815291841660208301527f454150024738d97b603d814da3524718dbca71a176ba51eb9978cce32713a5d0910160405180910390a1506005805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6005546001600160a01b031633148061301c57506003546001600160a01b031633145b6130735760405162461bcd60e51b815260206004820152602260248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220666163746f604482015261727960f01b6064820152608401610b96565b806001600160a01b0381166130ca5760405162461bcd60e51b815260206004820152601e60248201527f61646472657373206e65656420746f20626520696e697469616c6973656400006044820152606401610b96565b6006805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0384169081179091556008546040805191825260208201929092527f967edc169058f4cc6ee1336d975d194ac04b9eef04cab44cab8a6104ded9aab8910160405180910390a1600654604080517f448ae98b00000000000000000000000000000000000000000000000000000000815290516000926001600160a01b03169163448ae98b916004808301926020929190829003018186803b15801561319057600080fd5b505afa1580156131a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131c89190615899565b600881905560405163e04b976960e01b815290915060009073__$2a5f91f3b8d172a11a2b02e40add8b4c78$__9063e04b97699061320b90600790600401615b00565b60006040518083038186803b15801561322357600080fd5b505af4158015613237573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261325f919081019061574a565b6006546040805160048082526024820183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1663595bef2f60e11b17905291517f80fc37b30000000000000000000000000000000000000000000000000000000081529394506001600160a01b03909216926380fc37b3926132e892309287910161597f565b600060405180830381600087803b15801561330257600080fd5b505af1158015613316573d6000803e3d6000fd5b5050505050505050565b6133b9604051806102000160405280600081526020016000815260200160008152602001600080191681526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160001515815260200160001515815260200160006001600160a01b0316815260200160006001600160a01b03168152602001606081525090565b604051806102000160405280600e5481526020016011548152602001600f548152602001601054815260200160158054905081526020016133f8613ef1565b8152602001601354815260200160095481526020016012548152602001600a548152602001600c54815260200161343160015460ff1690565b1515815260145460ff16151560208201526004546001600160a01b0390811660408301526003541660608201526007805460809092019161347190615df0565b80601f016020809104026020016040519081016040528092919081815260200182805461349d90615df0565b80156134ea5780601f106134bf576101008083540402835291602001916134ea565b820191906000526020600020905b8154815290600101906020018083116134cd57829003601f168201915b5050505050815250905090565b6006546001600160a01b031633148061351a57506003546001600160a01b031633145b61358c5760405162461bcd60e51b815260206004820152602160248201527f43616c6c6572206973206e6f74207468652061646d696e206f72206b6565706560448201527f72000000000000000000000000000000000000000000000000000000000000006064820152608401610b96565b613594614535565b60145460ff16156135b4576135a7614680565b6135af614732565b6135c8565b60135460155414156135c8576135c8614dfd565b600f546040805191825233602083015242908201527f4239766e984f5ee305dbb56c4a82bb97b6e3a04e714e529d2d0fa04a1dbbe605906060015b60405180910390a1565b600061119a614eaa565b606081600f5481111561366c5760405162461bcd60e51b815260206004820152601960248201527f5468697320726f756e6420646f6573206e6f74206578697374000000000000006044820152606401610b96565b600083815260186020908152604080832080548251818502810185019093528083529193909284015b82821015611eeb5760008481526020908190206040805160a08101825260058602909201805483526001808201548486015260028201549284019290925260038101546001600160a01b031660608401526004015460808301529083529092019101613695565b6004546001600160a01b031633148061371f57506003546001600160a01b031633145b6137765760405162461bcd60e51b815260206004820152602260248201527f43616c6c6572206973206e6f74207468652061646d696e206f7220637265617460448201526137b960f11b6064820152608401610b96565b61377e614535565b601354601554146137d15760405162461bcd60e51b815260206004820152601560248201527f546869732067616d65206973206e6f742066756c6c00000000000000000000006044820152606401610b96565b6116cb614dfd565b80600f5481111561382c5760405162461bcd60e51b815260206004820152601960248201527f5468697320726f756e6420646f6573206e6f74206578697374000000000000006044820152606401610b96565b60005b600083815260176020526040902054811015613ad357600083815260176020526040902080543391908390811061386857613868615e80565b60009182526020909120600160059092020101546001600160a01b03161415613ac15760008381526017602052604090208054829081106138ab576138ab615e80565b600091825260209091206004600590920201015460ff16156139355760405162461bcd60e51b815260206004820152602360248201527f5072697a6520666f7220746869732067616d6520616c726561647920636c616960448201527f6d656400000000000000000000000000000000000000000000000000000000006064820152608401610b96565b600083815260176020526040902080548290811061395557613955615e80565b9060005260206000209060050201600201544710156139b65760405162461bcd60e51b815260206004820152601c60248201527f4e6f7420656e6f7567682066756e647320696e20636f6e7472616374000000006044820152606401610b96565b6000838152601760205260409020805460019190839081106139da576139da615e80565b906000526020600020906005020160040160006101000a81548160ff0219169083151502179055507f7d3ffe46a7d64de05164bc59d03eabfeade72a1b0a833d888df4893868ee99c53384601760008781526020019081526020016000208481548110613a4957613a49615e80565b600091825260209182902060026005909202010154604080516001600160a01b0390951685529184019290925282015260600160405180910390a16000838152601760205260409020805461106591339184908110613aaa57613aaa615e80565b906000526020600020906005020160020154613fe1565b80613acb81615e25565b91505061382f565b5060405162461bcd60e51b815260206004820152601c60248201527f506c6179657220646964206e6f742077696e20746869732067616d65000000006044820152606401610b96565b5050565b600061119a600954151590565b33803b908115613b7f5760405162461bcd60e51b815260206004820152601360248201527f4e6f20636f6e747261637420616c6c6f776564000000000000000000000000006044820152606401610b96565b613b87614535565b60145460ff1615613bda5760405162461bcd60e51b815260206004820152601b60248201527f47616d6520697320616c726561647920696e2070726f677265737300000000006044820152606401610b96565b60135460155410613c2d5760405162461bcd60e51b815260206004820152601160248201527f546869732067616d652069732066756c6c0000000000000000000000000000006044820152606401610b96565b336000908152601660205260409020546001600160a01b031615613c9f5760405162461bcd60e51b815260206004820152602360248201527f506c6179657220616c726561647920656e746572656420696e20746869732067604482015262616d6560e81b6064820152608401610b96565b6009543414613d165760405162461bcd60e51b815260206004820152602360248201527f4f6e6c7920726567697374726174696f6e20616d6f756e7420697320616c6c6f60448201527f77656400000000000000000000000000000000000000000000000000000000006064820152608401610b96565b6004546001600160a01b0316331415613d715760405162461bcd60e51b815260206004820152601b60248201527f43616c6c65722063616e2774206265207468652063726561746f7200000000006044820152606401610b96565b604051806101000160405280336001600160a01b031681526020016000815260200160008152602001600015158152602001600081526020016015805490506001613dbc9190615d62565b8152600060208083018290526040928301829052338083526016825291839020845181546001600160a01b0391821673ffffffffffffffffffffffffffffffffffffffff1991821617835586840151600180850191909155878701516002850155606088015160038501805491151560ff199092169190911790556080880151600485015560a0880151600585015560c088015160068501805460e0909a015115156101000261ff00199215159290921661ffff19909a1699909917179097556015805497880181557f55f448fdea98c4d29eb340757ef0a66cd03dbb9538908a6a81d96026b71ec475909701805490911690941790935554935483519490921684528301527ffba90a4f5dd73b59c50cd0b428870383996a23edb8a0e8110cf06c4e14a01705910160405180910390a15050565b600080805b601554811015611ef2576016600060158381548110613f1757613f17615e80565b60009182526020808320909101546001600160a01b0316835282019290925260400190206006015460ff16613f545781613f5081615e25565b9250505b80613f5e81615e25565b915050613ef6565b6000805b600f54600090815260186020526040902054811015613fd957600f546000908152601860205260409020805482908110613fa657613fa6615e80565b906000526020600020906005020160020154600014613fc757600091505090565b80613fd181615e25565b915050613f6a565b506001905090565b80804710156140325760405162461bcd60e51b815260206004820152601e60248201527f4e6f7420656e6f75676820696e20636f6e74726163742062616c616e636500006044820152606401610b96565b6000836001600160a01b03168360405160006040518083038185875af1925050503d806000811461407f576040519150601f19603f3d011682016040523d82523d6000602084013e614084565b606091505b505090508061411757604080516001600160a01b0386168152602081018590527f3506b32cea6b36a739c1c2a71a9e1b3d6222104389c07219059fa6eb6d2e0563910160405180910390a160405162461bcd60e51b815260206004820152601060248201527f5472616e73666572206661696c65642e000000000000000000000000000000006044820152606401610b96565b50505050565b60015460ff166116cb5760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610b96565b61417761411d565b61417f614f48565b60005b60155481101561420157600060166000601584815481106141a5576141a5615e80565b60009182526020808320909101546001600160a01b031683528201929092526040019020600681015490915060ff166141ee576141e181614f95565b60038101805460ff191690555b50806141f981615e25565b915050614182565b50600654604080517f448ae98b00000000000000000000000000000000000000000000000000000000815290516000926001600160a01b03169163448ae98b916004808301926020929190829003018186803b15801561426057600080fd5b505afa158015614274573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142989190615899565b600881905560405163e04b976960e01b815290915060009073__$2a5f91f3b8d172a11a2b02e40add8b4c78$__9063e04b9769906142db90600790600401615b00565b60006040518083038186803b1580156142f357600080fd5b505af4158015614307573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261432f919081019061574a565b6006546040805160048082526024820183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1663595bef2f60e11b17905291517f80fc37b30000000000000000000000000000000000000000000000000000000081529394506001600160a01b03909216926380fc37b3926124d292309287910161597f565b600954156143c35750565b6000805b825181101561440d578281815181106143e2576143e2615e80565b602002602001015160200151826143f99190615d62565b91508061440581615e25565b9150506143c7565b50803414613b1c5760405162461bcd60e51b815260206004820152601d60248201527f4e65656420746f2073656e64207072697a65706f6f6c20616d6f756e740000006044820152606401610b96565b6000805b82518110156144c95761448c83828151811061447f5761447f615e80565b6020026020010151615007565b82818151811061449e5761449e615e80565b602002602001015160200151826144b59190615d62565b9150806144c181615e25565b915050614461565b5060095415613b1c5760006013546009546144e49190615d8e565b90508082146110655760405162461bcd60e51b815260206004820152601960248201527f57726f6e6720746f74616c20616d6f756e7420746f20776f6e000000000000006044820152606401610b96565b60015460ff16156116cb5760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610b96565b614590613ef1565b600582015560068101805461ffff19166001179055600f5481546004830154604080519384526001600160a01b039092166020840152908201527f6dd6b233b201ff5342eb5248f0849dd9ceac79f106942d38bb6341013bb901d590606001610de0565b6145fc614535565b6146046150e9565b6006546008546040517fea87605b0000000000000000000000000000000000000000000000000000000081526001600160a01b039092169163ea87605b916146529160040190815260200190565b600060405180830381600087803b15801561466c57600080fd5b505af1158015614117573d6000803e3d6000fd5b614688614eaa565b1561468f57565b60005b601554811015611dfe57600060166000601584815481106146b5576146b5615e80565b60009182526020808320909101546001600160a01b031683528201929092526040019020600381015490915060ff161580156146f65750600681015460ff16155b156147095761470481614588565b61471f565b61471281614f95565b60038101805460ff191690555b508061472a81615e25565b915050614692565b600061473c613ef1565b90506000614748614eaa565b9050600182118015614758575080155b15614761575050565b600080600060186000600f548152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b828210156148025760008481526020908190206040805160a08101825260058602909201805483526001808201548486015260028201549284019290925260038101546001600160a01b03166060840152600401546080830152908352909201910161479b565b5050505090508460011415614aa85760005b601554811015614aa6576000601660006015848154811061483757614837615e80565b60009182526020808320909101546001600160a01b0390811684528382019490945260409283019091208251610100818101855282549095168152600182015492810192909252600281015492820192909252600382015460ff9081161515606083015260048301546080830152600583015460a0830152600690920154808316151560c08301819052939004909116151560e0820152915061499957612710600a54846000815181106148ed576148ed615e80565b6020026020010151602001516149039190615d8e565b61490d9190615d7a565b9450612710600c548460008151811061492857614928615e80565b60200260200101516020015161493e9190615d8e565b6149489190615d7a565b9350600084868560008151811061496157614961615e80565b6020026020010151602001516149779190615dad565b6149819190615dad565b90506149936000836000015183615124565b50614a93565b8251821080156149ca57508282815181106149b6576149b6615e80565b6020026020010151600001518160a0015111155b15614a9357612710600a54846000815181106149e8576149e8615e80565b6020026020010151602001516149fe9190615d8e565b614a089190615d7a565b9450612710600c5484600081518110614a2357614a23615e80565b602002602001015160200151614a399190615d8e565b614a439190615d7a565b93506000848685600081518110614a5c57614a5c615e80565b602002602001015160200151614a729190615dad565b614a7c9190615dad565b9050614a918260a00151836000015183615124565b505b5080614a9e81615e25565b915050614814565b505b8315614c97576000805b8251811015614af857828181518110614acd57614acd615e80565b60200260200101516020015182614ae49190615d62565b915080614af081615e25565b915050614ab2565b50612710600a5482614b0a9190615d8e565b614b149190615d7a565b9350612710600c5482614b279190615d8e565b614b319190615d7a565b9250600083614b408684615dad565b614b4a9190615dad565b90506000614b588883615d7a565b905060005b601554811015614c4f5760006016600060158481548110614b8057614b80615e80565b60009182526020808320909101546001600160a01b0390811684528382019490945260409283019091208251610100818101855282549095168152600182015492810192909252600281015492820192909252600382015460ff9081161515606083015260048301546080830152600583015460a083015260069092015480831615801560c0840181905294909104909216151560e0820152925090614c2757508060e001515b15614c3c57614c3c6001826000015185615124565b5080614c4781615e25565b915050614b5d565b50600f5460408051918252602082018a905281018290527f7db280ec0707115a4035dec4d93ba741848a5f71a7e2c3255ff3825f8868649c9060600160405180910390a15050505b84614dbd5760005b8151811015614dbb57612710600a54838381518110614cc057614cc0615e80565b602002602001015160200151614cd69190615d8e565b614ce09190615d7a565b9350612710600c54838381518110614cfa57614cfa615e80565b602002602001015160200151614d109190615d8e565b614d1a9190615d7a565b925060008385848481518110614d3257614d32615e80565b602002602001015160200151614d489190615dad565b614d529190615dad565b9050600082600114614d6f576004546001600160a01b0316614d7c565b6003546001600160a01b03165b9050614da6848481518110614d9357614d93615e80565b6020026020010151600001518284615124565b50508080614db390615e25565b915050614c9f565b505b82600b6000828254614dcf9190615d62565b9250508190555081600d6000828254614de89190615d62565b90915550614df69050615221565b5050505050565b60005b601554811015614e5f57614e4d6016600060158481548110614e2457614e24615e80565b60009182526020808320909101546001600160a01b031683528201929092526040019020614f95565b80614e5781615e25565b915050614e00565b506014805460ff191660011790556015546040517ff145761ccef32f84b8528f66139cc490a4c4723a07b1b101ae9d33cad484adef9161360391429190918252602082015260400190565b60008080614eb6613ef1565b905060005b601554811015614f32576016600060158381548110614edc57614edc615e80565b60009182526020808320909101546001600160a01b0316835282019290925260400190206006015460ff6101009091041615614f205782614f1c81615e25565b9350505b80614f2a81615e25565b915050614ebb565b508015801590614f4157508082145b9250505090565b614f5061411d565b6001805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b039091168152602001613603565b8054600090614fac906001600160a01b03166153f7565b9050614fb981603c615d8e565b614fc490603c615d8e565b614fce9042615d62565b6001830155601254614fe190603c615d8e565b614fec90603c615d8e565b8260010154614ffb9190615d62565b82600201819055505050565b600f8054600090815260186020908152604080832080546001818101835591855293839020865160059095020184815592860151908301819055858201516002840181905560608701516003850180546001600160a01b03831673ffffffffffffffffffffffffffffffffffffffff1990911617905560808801516004909501859055955492517f0f9ff88614db6a0aefd4f588fb854d9b4cbcde7c8c5f4b995624393655f135bd96610de096949590919586526020860194909452604085019290925260608401526001600160a01b0316608083015260a082015260c00190565b6150f1614535565b6001805460ff1916811790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833614f7d565b600f80546000818152601760208181526040808420815160a0810183529586526001600160a01b038981168785018181528885018b81526060808b018f81526080808d018c8152885460018082018b55998e528b8e209e516005909102909e019d8e559451978d01805473ffffffffffffffffffffffffffffffffffffffff19169890971697909717909555905160028b0155925160038a0155516004909801805460ff191698151598909817909755965480865293835293819020548151938452918301919091528101929092529181018390527fa7a879091a62747ea35e0a5f0061f6b3b923d714ea2434cb0529d551603963159101611c80565b6014805460ff1916905560005b6015548110156152d557601660006015838154811061524f5761524f615e80565b60009182526020808320909101546001600160a01b031683528201929092526040018120805473ffffffffffffffffffffffffffffffffffffffff19168155600181018290556002810182905560038101805460ff19169055600481018290556005810191909155600601805461ffff19169055806152cd81615e25565b91505061522e565b506152e260156000615593565b600f546040805142815260208101929092527fe531e53e13c284466c03d8d2e735e896c641a73c7474c668cd2795304a334499910160405180910390a16001600f60008282546153329190615d62565b9091555050600954615346576116cb6145f4565b6000601860006001600f5461535b9190615dad565b8152602001908152602001600020905060005b8154811015613b1c576153e582828154811061538c5761538c615e80565b60009182526020918290206040805160a08101825260059093029091018054835260018101549383019390935260028301549082015260038201546001600160a01b031660608201526004909101546080820152615007565b806153ef81615e25565b91505061536e565b600280546000918261540883615e25565b91905055506000601254601961541e9190615dad565b905060008142856002546040516020016154709392919092835260609190911b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000166020830152603482015260540190565b6040516020818303038152906040528051906020012060001c6154939190615e40565b949350505050565b8280546154a790615df0565b90600052602060002090601f0160209004810192826154c9576000855561550f565b82601f106154e257805160ff191683800117855561550f565b8280016001018555821561550f579182015b8281111561550f5782518255916020019190600101906154f4565b5061551b9291506155ad565b5090565b82805461552b90615df0565b90600052602060002090601f01602090048101928261554d576000855561550f565b82601f106155665782800160ff1982351617855561550f565b8280016001018555821561550f579182015b8281111561550f578235825591602001919060010190615578565b5080546000825590600052602060002090810190611dfe91905b5b8082111561551b57600081556001016155ae565b80356001600160a01b03811681146155d957600080fd5b919050565b600060a082840312156155f057600080fd5b60405160a0810181811067ffffffffffffffff8211171561561357615613615e96565b806040525080915082358152602083013560208201526040830135604082015261563f606084016155c2565b6060820152608083013560808201525092915050565b60006020828403121561566757600080fd5b615670826155c2565b9392505050565b6000602080838503121561568a57600080fd5b823567ffffffffffffffff808211156156a257600080fd5b818501915085601f8301126156b657600080fd5b8135818111156156c8576156c8615e96565b6156d6848260051b01615d09565b818152848101925083850160a0808402860187018a10156156f657600080fd5b600095505b838610156157235761570d8a836155de565b85526001959095019493860193908101906156fb565b509098975050505050505050565b60006020828403121561574357600080fd5b5035919050565b60006020828403121561575c57600080fd5b815167ffffffffffffffff81111561577357600080fd5b8201601f8101841361578457600080fd5b805161579761579282615d3a565b615d09565b8181528560208385010111156157ac57600080fd5b6157bd826020830160208601615dc4565b95945050505050565b6000602082840312156157d857600080fd5b813567ffffffffffffffff8111156157ef57600080fd5b8201601f8101841361580057600080fd5b803561580e61579282615d3a565b81815285602083850101111561582357600080fd5b81602084016020830137600091810160200191909152949350505050565b60006020828403121561585357600080fd5b813567ffffffffffffffff81111561586a57600080fd5b82016101a0818503121561567057600080fd5b600060a0828403121561588f57600080fd5b61567083836155de565b6000602082840312156158ab57600080fd5b5051919050565b600081518084526158ca816020860160208601615dc4565b601f01601f19169290920160200192915050565b8054600090600181811c90808316806158f857607f831692505b602080841082141561591a57634e487b7160e01b600052602260045260246000fd5b838852818015615931576001811461594557615973565b60ff198616828a0152604089019650615973565b876000528160002060005b8681101561596b5781548b8201850152908501908301615950565b8a0183019750505b50505050505092915050565b6001600160a01b03841681526060602082015260006159a160608301856158b2565b82810360408401526159b381856158b2565b9695505050505050565b6020808252825182820181905260009190848201906040850190845b818110156159fe5783516001600160a01b0316835292840192918401916001016159d9565b50909695505050505050565b602080825282518282018190526000919060409081850190868401855b82811015615a7457815180518552868101518786015285810151868601526060808201516001600160a01b0316908601526080908101519085015260a09093019290850190600101615a27565b5091979650505050505050565b602080825282518282018190526000919060409081850190868401855b82811015615a7457815180518552868101516001600160a01b03168786015285810151868601526060808201519086015260809081015115159085015260a09093019290850190600101615a9e565b60208152600061567060208301846158b2565b60208152600061567060208301846158de565b6020815281516020820152602082015160408201526040820151606082015260608201516080820152608082015160a082015260a082015160c082015260c082015160e0820152600060e0830151610100818185015280850151915050610120818185015280850151915050610140818185015280850151915050610160818185015280850151915050610180615bad8185018315159052565b84015190506101a0615bc28482018315159052565b84015190506101c0615bde848201836001600160a01b03169052565b84015190506101e0615bfa848201836001600160a01b03169052565b8401516102008481015290506154936102208401826158b2565b8481526001600160a01b0384166020820152608060408201526000615c3c60808301856158b2565b8281036060840152615c4e81856158b2565b979650505050505050565b82815260406020820152600061549360408301846158de565b6000808335601e19843603018112615c8957600080fd5b83018035915067ffffffffffffffff821115615ca457600080fd5b602001915060a081023603821315615cbb57600080fd5b9250929050565b6000808335601e19843603018112615cd957600080fd5b83018035915067ffffffffffffffff821115615cf457600080fd5b602001915036819003821315615cbb57600080fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715615d3257615d32615e96565b604052919050565b600067ffffffffffffffff821115615d5457615d54615e96565b50601f01601f191660200190565b60008219821115615d7557615d75615e54565b500190565b600082615d8957615d89615e6a565b500490565b6000816000190483118215151615615da857615da8615e54565b500290565b600082821015615dbf57615dbf615e54565b500390565b60005b83811015615ddf578181015183820152602001615dc7565b838111156141175750506000910152565b600181811c90821680615e0457607f821691505b60208210811415611ef257634e487b7160e01b600052602260045260246000fd5b6000600019821415615e3957615e39615e54565b5060010190565b600082615e4f57615e4f615e6a565b500690565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fdfea264697066735822122036e2090d6e8b7d75f28981c195a846b1de363270fffac5e9d2bd77fe8c19e76e64736f6c63430008060033"; type GameV1ConstructorParams = | [linkLibraryAddresses: GameV1LibraryAddresses, signer?: Signer] diff --git a/packages/dapp/src/config/types/typechain/factories/contracts/interfaces/GameV1Interface__factory.ts b/packages/dapp/src/config/types/typechain/factories/contracts/interfaces/GameV1Interface__factory.ts index 165b860..0136f8b 100644 --- a/packages/dapp/src/config/types/typechain/factories/contracts/interfaces/GameV1Interface__factory.ts +++ b/packages/dapp/src/config/types/typechain/factories/contracts/interfaces/GameV1Interface__factory.ts @@ -527,6 +527,11 @@ const _abi = [ name: "id", type: "uint256", }, + { + internalType: "uint256", + name: "versionId", + type: "uint256", + }, { internalType: "uint256", name: "roundId", diff --git a/packages/dapp/src/state/games/fetchGamesFull.ts b/packages/dapp/src/state/games/fetchGamesFull.ts index dfb3ee1..ac7d738 100644 --- a/packages/dapp/src/state/games/fetchGamesFull.ts +++ b/packages/dapp/src/state/games/fetchGamesFull.ts @@ -26,6 +26,7 @@ const fetchGamesFull = async (chainId: number): Promise => { const transformedGames = gamesToFetch.map( gameBaseTransformer(gameData, gamePlayers, gameCreatorAmounts, gameTreasuryAmounts), ) + // TODO GUIGUI HANDLE gamePlayersData const [gamePrizes /* , gamePlayersData */] = await Promise.all([ fetchGamesPrizes(transformedGames, chainId), diff --git a/packages/dapp/src/state/games/selectors.ts b/packages/dapp/src/state/games/selectors.ts index 8b010ef..007f409 100644 --- a/packages/dapp/src/state/games/selectors.ts +++ b/packages/dapp/src/state/games/selectors.ts @@ -51,6 +51,7 @@ const deserializeGame = (game: SerializedGame): DeserializedGame => { const { id, name, + versionId, roundId, isPaused, isInProgress, @@ -76,6 +77,7 @@ const deserializeGame = (game: SerializedGame): DeserializedGame => { return { id: id ? new BigNumber(id) : BIG_ZERO, name, + versionId: versionId ? new BigNumber(versionId) : BIG_ZERO, roundId: roundId ? new BigNumber(roundId) : BIG_ZERO, isPaused, isInProgress, diff --git a/packages/dapp/src/state/games/transformers.ts b/packages/dapp/src/state/games/transformers.ts index 40551e7..865b3e7 100644 --- a/packages/dapp/src/state/games/transformers.ts +++ b/packages/dapp/src/state/games/transformers.ts @@ -26,6 +26,7 @@ export const gameBaseTransformer = (gameData, gamePlayers, gameCreatorAmounts, g { id, name, + versionId, roundId, maxPlayers, playTimeRange, @@ -50,6 +51,7 @@ export const gameBaseTransformer = (gameData, gamePlayers, gameCreatorAmounts, g return { id: id.toNumber(), name: parseStringOrBytes32('', name, 'Game'), + versionId: versionId.toNumber(), roundId: roundId.toNumber(), maxPlayers: maxPlayers.toNumber(), remainingPlayersCount: remainingPlayersCount.toNumber(), diff --git a/packages/dapp/src/state/types.ts b/packages/dapp/src/state/types.ts index a79ac5a..11a2b80 100644 --- a/packages/dapp/src/state/types.ts +++ b/packages/dapp/src/state/types.ts @@ -89,6 +89,7 @@ export interface DeserializedGameUserData { export interface SerializedGame { id: number name: string + versionId: number roundId: number isPaused: boolean isInProgress: boolean @@ -117,6 +118,7 @@ export interface SerializedGame { export interface DeserializedGame { id: BigNumber name: string + versionId: BigNumber roundId: BigNumber isPaused: boolean isInProgress: boolean diff --git a/packages/hardhat/contracts/GameV1.sol b/packages/hardhat/contracts/GameV1.sol index 492ded0..c181e94 100644 --- a/packages/hardhat/contracts/GameV1.sol +++ b/packages/hardhat/contracts/GameV1.sol @@ -628,6 +628,7 @@ contract GameV1 is GameV1Interface, ReentrancyGuard, Pausable { return GameData({ id: id, + versionId: version, roundId: roundId, name: name, playerAddressesCount: playerAddresses.length, diff --git a/packages/hardhat/contracts/interfaces/GameV1Interface.sol b/packages/hardhat/contracts/interfaces/GameV1Interface.sol index 2e4a15d..8ed2c07 100644 --- a/packages/hardhat/contracts/interfaces/GameV1Interface.sol +++ b/packages/hardhat/contracts/interfaces/GameV1Interface.sol @@ -83,6 +83,7 @@ interface GameV1Interface { struct GameData { uint256 id; + uint256 versionId; uint256 roundId; bytes32 name; uint256 playerAddressesCount; From c46e4c0d345ee601d0682ea73c4bffabe4f911a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillaume=20Dieudonn=C3=A9?= <8122069+GuiDieudo@users.noreply.github.com> Date: Sun, 27 Nov 2022 21:50:48 +0100 Subject: [PATCH 3/6] feat: implementing claimin prize if won last round --- .../dapp/src/state/games/fetchGameData.ts | 20 ++++++++++ packages/dapp/src/state/games/fetchGames.ts | 34 +++++++++++++++- .../dapp/src/state/games/fetchGamesFull.ts | 4 +- packages/dapp/src/state/games/index.ts | 5 ++- packages/dapp/src/state/games/selectors.ts | 16 +++++++- packages/dapp/src/state/games/transformers.ts | 40 ++++++++++++++++--- packages/dapp/src/state/types.ts | 30 +++++++++----- .../contexts/GameCreationProvider.tsx | 4 +- .../components/GameCard/CardPlayerSection.tsx | 14 ++++--- .../Games/components/GameCard/GameCard.tsx | 30 +++++++------- .../GameCardButtons/VoteSplitButton.tsx | 5 ++- 11 files changed, 157 insertions(+), 45 deletions(-) diff --git a/packages/dapp/src/state/games/fetchGameData.ts b/packages/dapp/src/state/games/fetchGameData.ts index 79dae92..48a599e 100644 --- a/packages/dapp/src/state/games/fetchGameData.ts +++ b/packages/dapp/src/state/games/fetchGameData.ts @@ -117,3 +117,23 @@ export const fetchGamesPrizes = async (games: any[], chainId = ChainId.BSC): Pro return chunk(gameMultiCallResult, chunkSize) } + +export const fetchGamesWinners = async (games: any[], chainId = ChainId.BSC): Promise => { + const gameCalls = games.map((game) => { + const roundId = game.roundId ? game.roundId - 1 : game.roundId + return { + address: game.address, + name: 'getWinners', + params: [roundId], + } + }) + const chunkSize = gameCalls.length / games.length + + const gameMultiCallResult = await multicallv2({ + abi: internal[chainId || ChainId.BSC].GameV1.abi, + calls: gameCalls, + chainId, + }) + + return chunk(gameMultiCallResult, chunkSize) +} diff --git a/packages/dapp/src/state/games/fetchGames.ts b/packages/dapp/src/state/games/fetchGames.ts index 68ff028..fc024a1 100644 --- a/packages/dapp/src/state/games/fetchGames.ts +++ b/packages/dapp/src/state/games/fetchGames.ts @@ -1,9 +1,39 @@ import { getGameFactoryV1Contract } from 'utils/contractHelpers' import { GameFactory } from 'config/types/typechain' -const fetchGames = async (chainId: number): Promise => { +import { gameBaseTransformer, gameExtendedTransformer } from './transformers' + +import { + fetchPublicGamesData, + fetchGamesTreasuryAmounts, + fetchGamesCreatorAmounts, + fetchGamesPlayersAddresses, + fetchGamesPrizes, + fetchGamesWinners, + fetchGamesPlayersData, +} from './fetchGameData' +import { State, SerializedGame, DeserializedGame, DeserializedGameUserData } from '../types' + +const fetchGames = async (chainId: number): Promise => { const gameFactoryContract: GameFactory = getGameFactoryV1Contract(chainId) - return gameFactoryContract.getDeployedGames() + const gamesToFetch: GameFactory.GameStructOutput[] = await gameFactoryContract.getDeployedGames() + + const [gameData, gamePlayers, gameCreatorAmounts, gameTreasuryAmounts] = await Promise.all([ + fetchPublicGamesData(gamesToFetch, chainId), + fetchGamesPlayersAddresses(gamesToFetch, chainId), + fetchGamesCreatorAmounts(gamesToFetch, chainId), + fetchGamesTreasuryAmounts(gamesToFetch, chainId), + ]) + const transformedGames = gamesToFetch.map( + gameBaseTransformer(gameData, gamePlayers, gameCreatorAmounts, gameTreasuryAmounts), + ) + + const [gamePrizes, gameWinners] = await Promise.all([ + fetchGamesPrizes(transformedGames, chainId), + fetchGamesWinners(transformedGames, chainId), + ]) + const completeGames = transformedGames.map(gameExtendedTransformer(gamePrizes, gameWinners)) + return completeGames } export default fetchGames diff --git a/packages/dapp/src/state/games/fetchGamesFull.ts b/packages/dapp/src/state/games/fetchGamesFull.ts index ac7d738..fdc6999 100644 --- a/packages/dapp/src/state/games/fetchGamesFull.ts +++ b/packages/dapp/src/state/games/fetchGamesFull.ts @@ -1,7 +1,7 @@ import { getGameFactoryV1Contract } from 'utils/contractHelpers' import { GameFactory } from 'config/types/typechain' -import { gameBaseTransformer, gameExtendedTransformer } from './transformers' +import { gameBaseTransformer, gameFullTransformer } from './transformers' import { fetchPublicGamesData, @@ -32,7 +32,7 @@ const fetchGamesFull = async (chainId: number): Promise => { fetchGamesPrizes(transformedGames, chainId), // fetchGamesPlayersData(transformedGames, chainId), ]) - const completeGames = transformedGames.map(gameExtendedTransformer(gamePrizes /* , gamePlayersData */)) + const completeGames = transformedGames.map(gameFullTransformer(gamePrizes /* , gamePlayersData */)) return completeGames } diff --git a/packages/dapp/src/state/games/index.ts b/packages/dapp/src/state/games/index.ts index 83c336b..030c213 100644 --- a/packages/dapp/src/state/games/index.ts +++ b/packages/dapp/src/state/games/index.ts @@ -11,11 +11,11 @@ import { chains } from 'utils/wagmi' import { resetUserState } from '../global/actions' import { SerializedGame, SerializedGamesState, SerializedGamePlayerData } from '../types' -import fetchGamesFull from './fetchGamesFull' +import fetchGames from './fetchGames' import { fetchGamesPlayerData } from './fetchGamePlayerData' import { gamePlayerDataTransformer } from './transformers' -const fetchGamePublicDataPkg = async ({ chainId }): Promise => fetchGamesFull(chainId) +const fetchGamePublicDataPkg = async ({ chainId }): Promise => fetchGames(chainId) const initialState: SerializedGamesState = { data: [], @@ -165,6 +165,7 @@ export const fetchGamePlayerDataAsync = createAsyncThunk< const playerData = await fetchGamesPlayerData(games, account, chainId) + // TODO GUIGUI LOAD ROUND WINNERS HISTORY AND CHECK IF PLAYER HAS WON return games.map(gamePlayerDataTransformer(playerData, account)) }, { diff --git a/packages/dapp/src/state/games/selectors.ts b/packages/dapp/src/state/games/selectors.ts index 007f409..1e87ef0 100644 --- a/packages/dapp/src/state/games/selectors.ts +++ b/packages/dapp/src/state/games/selectors.ts @@ -8,6 +8,7 @@ import { DeserializedGame, DeserializedGameUserData, DeserializedPrizeData, + DeserializedWinnerData, DeserializedGamePlayerData, } from '../types' @@ -16,10 +17,8 @@ const deserializeGameUserData = (game: SerializedGame): DeserializedGameUserData isPlaying: game?.userData ? game.userData.isPlaying : false, isCreator: game?.userData ? game.userData.isCreator : false, isAdmin: game?.userData ? game.userData.isAdmin : false, - wonAmount: game?.userData ? new BigNumber(game.userData.wonAmount) : BIG_ZERO, nextFromRange: game?.userData ? game.userData.nextFromRange : '', nextToRange: game?.userData ? game.userData.nextToRange : '', - isWonLastGames: game?.userData ? game.userData.isWonLastGames : false, isCanVoteSplitPot: game?.userData ? game.userData.isCanVoteSplitPot : false, isInTimeRange: game?.userData ? game.userData.isInTimeRange : false, } @@ -47,6 +46,18 @@ const deserializeGamePrize = (game: SerializedGame): DeserializedPrizeData[] => }) } +const deserializeGameWinner = (game: SerializedGame): DeserializedWinnerData[] => { + return game?.lastRoundWinners?.map((winner) => { + return { + roundId: winner?.roundId ? new BigNumber(winner.roundId) : BIG_ZERO, + playerAddress: winner?.playerAddress ? winner.playerAddress : '', + amountWon: winner?.amountWon ? new BigNumber(winner.amountWon) : BIG_ZERO, + position: winner?.position ? new BigNumber(winner.position) : BIG_ZERO, + prizeClaimed: winner?.prizeClaimed ? winner.prizeClaimed : false, + } + }) +} + const deserializeGame = (game: SerializedGame): DeserializedGame => { const { id, @@ -101,6 +112,7 @@ const deserializeGame = (game: SerializedGame): DeserializedGame => { creatorAmount, playerAddresses, prizes: deserializeGamePrize(game), + lastRoundWinners: deserializeGameWinner(game), userData: deserializeGameUserData(game), playerData: deserializeGamePlayerData(game), } diff --git a/packages/dapp/src/state/games/transformers.ts b/packages/dapp/src/state/games/transformers.ts index 865b3e7..64f6efa 100644 --- a/packages/dapp/src/state/games/transformers.ts +++ b/packages/dapp/src/state/games/transformers.ts @@ -4,7 +4,7 @@ import { parseBytes32String } from '@ethersproject/strings' import { arrayify } from '@ethersproject/bytes' import { ZERO_ADDRESS } from 'config/constants' import moment from 'moment' -import { SerializedGame, SerializedPrizeData } from '../types' +import { SerializedGame, SerializedPrizeData, SerializedWinnerData } from '../types' // parse a name or symbol from a token response const BYTES32_REGEX = /^0x[a-fA-F0-9]{64}$/ @@ -77,7 +77,40 @@ export const gameBaseTransformer = (gameData, gamePlayers, gameCreatorAmounts, g } } -export const gameExtendedTransformer = (gamePrizes /* , gamePlayersData */) => { +export const gameExtendedTransformer = (gamePrizes, gameWinners) => { + return (game, index): SerializedGame => { + const [[rawPrizes]] = gamePrizes[index] + const prizes: SerializedPrizeData[] = rawPrizes.map((prize) => { + const { amount, position } = prize + return { + amount: formatEther(`${amount}`), + position: position.toNumber(), + } + }) + const prizepool = prizes.reduce((acc, prize) => acc + +prize.amount, 0) + const [[rawWinners]] = gameWinners[index] + + const winners: SerializedWinnerData[] = rawWinners.map((winner) => { + const { roundId, playerAddress, amountWon, position, prizeClaimed } = winner + return { + roundId: roundId.toNumber(), + playerAddress: playerAddress.toString(), + amountWon: formatEther(`${amountWon}`), + position: position.toNumber(), + prizeClaimed, + } + }) + + return { + ...game, + prizepool: `${prizepool}`, + prizes, + lastRoundWinners: winners, + } + } +} + +export const gameFullTransformer = (gamePrizes /* , gamePlayersData */) => { return (game, index): SerializedGame => { const [[rawPrizes]] = gamePrizes[index] const prizes: SerializedPrizeData[] = rawPrizes.map((prize) => { @@ -143,9 +176,6 @@ export const gamePlayerDataTransformer = (gamesPlayerData, account) => { nextFromRange: fromRange.toString(), nextToRange: toRange.toString(), isCanVoteSplitPot: game.isInProgress && game.playerAddressesCount <= game.maxPlayers * 0.5, - // TODO GUIGUI NEXT HANDLE WON CLAIM - isWonLastGames: false, - wonAmount: '0', }, } } diff --git a/packages/dapp/src/state/types.ts b/packages/dapp/src/state/types.ts index 11a2b80..3982338 100644 --- a/packages/dapp/src/state/types.ts +++ b/packages/dapp/src/state/types.ts @@ -34,6 +34,22 @@ export interface DeserializedPrizeData { position: BigNumber } +export interface SerializedWinnerData { + roundId: number + playerAddress: string + amountWon: string + position: number + prizeClaimed: boolean +} + +export interface DeserializedWinnerData { + roundId: BigNumber + playerAddress: string + amountWon: BigNumber + position: BigNumber + prizeClaimed: boolean +} + export interface SerializedGamePlayerData { playerAddress: string roundRangeLowerLimit: number @@ -60,27 +76,19 @@ export interface SerializedGameUserData { isCreator: boolean isAdmin: boolean isPlaying: boolean - wonAmount: string - // TODO delete this var ?? nextFromRange: string - // TODO delete this var ?? nextToRange: string - isWonLastGames: boolean isCanVoteSplitPot: boolean isInTimeRange: boolean - // TODO add isLoosed ? + // TODO add isLoosed } export interface DeserializedGameUserData { isCreator: boolean isAdmin: boolean isPlaying: boolean - wonAmount: BigNumber - // TODO delete this var ?? nextFromRange: string - // TODO delete this var ?? nextToRange: string - isWonLastGames: boolean isCanVoteSplitPot: boolean isInTimeRange: boolean // TODO add isLoosed ? @@ -93,6 +101,7 @@ export interface SerializedGame { roundId: number isPaused: boolean isInProgress: boolean + // TODO add isRegistering isDeleted: boolean maxPlayers: number playTimeRange: number @@ -111,6 +120,7 @@ export interface SerializedGame { creatorAmount: string playerAddresses: string[] prizes: SerializedPrizeData[] + lastRoundWinners: SerializedWinnerData[] userData?: SerializedGameUserData playerData?: SerializedGamePlayerData } @@ -122,6 +132,7 @@ export interface DeserializedGame { roundId: BigNumber isPaused: boolean isInProgress: boolean + // TODO add isRegistering isDeleted: boolean maxPlayers: BigNumber playTimeRange: BigNumber @@ -140,6 +151,7 @@ export interface DeserializedGame { creatorAmount: string playerAddresses: string[] prizes: DeserializedPrizeData[] + lastRoundWinners: DeserializedWinnerData[] userData?: DeserializedGameUserData playerData?: DeserializedGamePlayerData } diff --git a/packages/dapp/src/views/GameCreation/contexts/GameCreationProvider.tsx b/packages/dapp/src/views/GameCreation/contexts/GameCreationProvider.tsx index 0b0b8b0..2f76aef 100644 --- a/packages/dapp/src/views/GameCreation/contexts/GameCreationProvider.tsx +++ b/packages/dapp/src/views/GameCreation/contexts/GameCreationProvider.tsx @@ -7,7 +7,7 @@ import useActiveWeb3React from 'hooks/useActiveWeb3React' import { defaultGameConfig } from 'config/internal/gameConfig' import { useGameConfig } from 'hooks/useGameConfig' -import fetchGamesFull from 'state/games/fetchGamesFull' +import fetchGames from 'state/games/fetchGames' import { Actions, BNB, ContextType, NFT, State } from 'views/GameCreation/types' @@ -104,7 +104,7 @@ const GameCreationProvider: React.FC = ({ children }) = useEffect(() => { const loadGames = async () => { // TODO create custom hook - const games = await fetchGamesFull(chainId) + const games = await fetchGames(chainId) const usedAmounts = games .map((game) => { return Number(game.registrationAmount) diff --git a/packages/dapp/src/views/Games/components/GameCard/CardPlayerSection.tsx b/packages/dapp/src/views/Games/components/GameCard/CardPlayerSection.tsx index eb47ade..43ee9e5 100644 --- a/packages/dapp/src/views/Games/components/GameCard/CardPlayerSection.tsx +++ b/packages/dapp/src/views/Games/components/GameCard/CardPlayerSection.tsx @@ -30,7 +30,6 @@ interface GameCardPlayerSectionProps { gameCreationAmount: BigNumber isInProgress: boolean isRegistering: boolean - wonAmount: BigNumber nextFromRange: string nextToRange: string remainingPlayersCount: BigNumber @@ -40,6 +39,8 @@ interface GameCardPlayerSectionProps { treasuryAmount: string isPlaying: boolean isWonLastGames: boolean + lastGameWonAmount: BigNumber + lastGameRoundId: BigNumber isCanVoteSplitPot: boolean isInTimeRange: boolean isReady: boolean @@ -48,6 +49,7 @@ interface GameCardPlayerSectionProps { isAdmin: boolean hasLost: boolean hasPlayedRound: boolean + isSplitOk: boolean account?: string } @@ -58,7 +60,6 @@ const CardPlayerSection: React.FC { const { @@ -96,7 +100,7 @@ const CardPlayerSection: React.FC {isReady ? ( - {wonAmount.toNumber()} {chainSymbol} + {lastGameWonAmount.toNumber()} {chainSymbol} ) : ( @@ -107,7 +111,7 @@ const CardPlayerSection: React.FC {isReady ? ( - + ) : ( )} @@ -218,7 +222,7 @@ const CardPlayerSection: React.FC )} - {isCanVoteSplitPot && } + {isCanVoteSplitPot && } {(isCreator || isAdmin) && !isInProgress && isRegistering && ( <> {isPaused && } diff --git a/packages/dapp/src/views/Games/components/GameCard/GameCard.tsx b/packages/dapp/src/views/Games/components/GameCard/GameCard.tsx index f518510..03e632c 100644 --- a/packages/dapp/src/views/Games/components/GameCard/GameCard.tsx +++ b/packages/dapp/src/views/Games/components/GameCard/GameCard.tsx @@ -8,6 +8,8 @@ import { getBlockExploreLink } from 'utils' import { DeserializedGame } from 'state/types' import parser from 'cron-parser' import moment from 'moment' +import BigNumber from 'bignumber.js' +import { BigNumber as EthersBigNumber } from '@ethersproject/bignumber' import CardPlayerSection from './CardPlayerSection' import CardHeadingSection from './CardHeadingSection' @@ -54,6 +56,7 @@ const GameCard: React.FC> = ({ game, acco const { name, + versionId, roundId, id, isPaused, @@ -73,17 +76,8 @@ const GameCard: React.FC> = ({ game, acco creatorFee, creatorAmount, prizes, - userData: { - isCreator, - isAdmin, - isPlaying, - wonAmount, - nextFromRange, - nextToRange, - isWonLastGames, - isCanVoteSplitPot, - isInTimeRange, - }, + lastRoundWinners, + userData: { isCreator, isAdmin, isPlaying, nextFromRange, nextToRange, isCanVoteSplitPot, isInTimeRange }, // TODO GUIGUI USE playerData playerData: { playerAddress, @@ -120,10 +114,16 @@ const GameCard: React.FC> = ({ game, acco } }, [encodedCron, timezone]) - // TODO GUIGUI isReady is when userData are loaded ?? const isReady = game.prizepool !== undefined + const isRegistering = !isInProgress && maxPlayers.toNumber() !== playerAddressesCount.toNumber() - // TODO GUIGUI use RoundProgress to display a progressBar if i + + const lastGamePrize = lastRoundWinners.find((winner) => winner.playerAddress === playerAddress) + const isWonLastGames = !!lastGamePrize + const lastGameWonAmount = lastGamePrize ? lastGamePrize.amountWon : EthersBigNumber.from('0') + const lastGameRoundId = lastGamePrize ? lastGamePrize.roundId : EthersBigNumber.from('0') + + // TODO GUIGUI use RoundProgress to display a progressBar if necessary return ( > = ({ game, acco roundId={roundId} isInProgress={isInProgress} isRegistering={isRegistering} - wonAmount={wonAmount} nextFromRange={nextFromRange} nextToRange={nextToRange} encodedCron={encodedCron} @@ -172,6 +171,8 @@ const GameCard: React.FC> = ({ game, acco playerAddressesCount={playerAddressesCount} isPlaying={isPlaying} isWonLastGames={isWonLastGames} + lastGameWonAmount={lastGameWonAmount} + lastGameRoundId={lastGameRoundId} isCanVoteSplitPot={isCanVoteSplitPot} isInTimeRange={isInTimeRange} gameCreationAmount={gameCreationAmount} @@ -184,6 +185,7 @@ const GameCard: React.FC> = ({ game, acco isAdmin={isAdmin} hasLost={hasLost} hasPlayedRound={hasPlayedRound} + isSplitOk={isSplitOk} account={account} /> diff --git a/packages/dapp/src/views/Games/components/GameCardButtons/VoteSplitButton.tsx b/packages/dapp/src/views/Games/components/GameCardButtons/VoteSplitButton.tsx index dac8b6a..bb0c98d 100644 --- a/packages/dapp/src/views/Games/components/GameCardButtons/VoteSplitButton.tsx +++ b/packages/dapp/src/views/Games/components/GameCardButtons/VoteSplitButton.tsx @@ -5,14 +5,15 @@ import { useVoteToSplitPot } from 'views/Games/hooks/useVoteToSplitPot' interface VoteSplitButtonProps { address: string + isSplitOk: boolean } -const VoteSplitButton: React.FC> = ({ address }) => { +const VoteSplitButton: React.FC> = ({ address, isSplitOk }) => { const { t } = useTranslation() const { isPending, handleVote } = useVoteToSplitPot(address) // TODO add check if remaining player count is less than 50% - const isDisabledButton = useMemo(() => !address || isPending, [address, isPending]) + const isDisabledButton = useMemo(() => !address || isPending || isSplitOk, [address, isPending, isSplitOk]) return ( - */} + {/* eslint-disable-next-line jsx-a11y/anchor-is-valid */} + {/* */} + + {/* */} ) } diff --git a/packages/dapp/src/views/Games/components/GameCard/DetailsSection.tsx b/packages/dapp/src/views/Games/components/GameCard/DetailsSection.tsx index 146ae42..4ca6c24 100644 --- a/packages/dapp/src/views/Games/components/GameCard/DetailsSection.tsx +++ b/packages/dapp/src/views/Games/components/GameCard/DetailsSection.tsx @@ -9,6 +9,7 @@ export interface ExpandableSectionProps { bscScanAddress?: string treasuryFee: BigNumber creatorFee: BigNumber + creator: string isReady: boolean } @@ -36,6 +37,7 @@ const DetailsSection: React.FC> isReady, treasuryFee, creatorFee, + creator, }) => { const { t } = useTranslation() @@ -64,6 +66,14 @@ const DetailsSection: React.FC> )} + + + {isReady ? ( + {t('Creator')} + ) : ( + + )} + {isReady ? ( {t('View Contract')} diff --git a/packages/dapp/src/views/Games/components/GameCard/GameCard.tsx b/packages/dapp/src/views/Games/components/GameCard/GameCard.tsx index c9a3efd..ca9e34a 100644 --- a/packages/dapp/src/views/Games/components/GameCard/GameCard.tsx +++ b/packages/dapp/src/views/Games/components/GameCard/GameCard.tsx @@ -9,7 +9,6 @@ import { DeserializedGame } from 'state/types' import parser from 'cron-parser' import moment from 'moment' import BigNumber from 'bignumber.js' -import { BigNumber as EthersBigNumber } from '@ethersproject/bignumber' import CardPlayerSection from './CardPlayerSection' import CardHeadingSection from './CardHeadingSection' @@ -142,6 +141,7 @@ const GameCard: React.FC> = ({ game, acco > = ({ game, acco registrationAmount={registrationAmount} creatorAmount={creatorAmount} treasuryAmount={treasuryAmount} + roundCount={roundCount} isReady={isReady} isPaused={isPaused} isCreator={isCreator} @@ -206,6 +207,7 @@ const GameCard: React.FC> = ({ game, acco bscScanAddress={getBlockExploreLink(address, 'address', chainId)} treasuryFee={treasuryFee} creatorFee={creatorFee} + creator={getBlockExploreLink(creator, 'address', chainId)} /> )} diff --git a/packages/dapp/src/views/Games/components/GameTags/VersionTag.tsx b/packages/dapp/src/views/Games/components/GameTags/VersionTag.tsx new file mode 100644 index 0000000..0bd804c --- /dev/null +++ b/packages/dapp/src/views/Games/components/GameTags/VersionTag.tsx @@ -0,0 +1,21 @@ +import { ErrorIcon, Tag, TagProps } from '@pancakeswap/uikit' +import { useTranslation } from '@pancakeswap/localization' +import { memo } from 'react' +import BigNumber from 'bignumber.js' + +interface VersionTag extends TagProps { + // Add Object to bypass typescript warning + versionId: BigNumber + style?: object +} + +const VersionTag: React.FC = ({ versionId, ...props }) => { + const { t } = useTranslation() + return ( + + {t(`V${versionId.toNumber() + 1}`)} + + ) +} + +export default memo(VersionTag) From 393d9c826e351e5c11a20d7518cf3af8a00c2467 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillaume=20Dieudonn=C3=A9?= <8122069+GuiDieudo@users.noreply.github.com> Date: Mon, 28 Nov 2022 19:36:37 +0100 Subject: [PATCH 6/6] feat: implementing claim prize if won previous game --- .../dapp/src/config/internal/internal.json | 7568 ++++++++++++++++- packages/dapp/src/state/games/fetchGames.ts | 2 +- .../components/GameCard/CardPlayerSection.tsx | 4 +- .../Games/components/GameCard/GameCard.tsx | 6 +- .../components/GameTags/RegistrationTag.tsx | 2 +- .../Games/components/GameTags/StartingTag.tsx | 2 +- packages/hardhat/contracts/GameV1.sol | 2 +- packages/hardhat/deploy/06_Create_Games.ts | 4 +- 8 files changed, 7580 insertions(+), 10 deletions(-) diff --git a/packages/dapp/src/config/internal/internal.json b/packages/dapp/src/config/internal/internal.json index 5400569..28f0c6b 100644 --- a/packages/dapp/src/config/internal/internal.json +++ b/packages/dapp/src/config/internal/internal.json @@ -1 +1,7567 @@ -{"5":{"GameFactory":{"address":"0xaa318806D683765E6576636A2d88EE14fDa9c720","libraries":{},"transactionHash":"0x3b41d62fc13c88dd3d03acfb4c061dfea39502ecf873a688a9dea9d76fd8bc88","abi":[{"inputs":[{"internalType":"address","name":"_game","type":"address"},{"internalType":"address","name":"_cronUpkeep","type":"address"},{"internalType":"uint256","name":"_gameCreationAmount","type":"uint256"},{"internalType":"uint256[]","name":"_authorizedAmounts","type":"uint256[]"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"cronUpkeep","type":"address"}],"name":"CronUpkeepUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FailedTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"nextId","type":"uint256"},{"indexed":false,"internalType":"address","name":"gameAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"implementationVersion","type":"uint256"},{"indexed":false,"internalType":"address","name":"creatorAddress","type":"address"}],"name":"GameCreated","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"uint256[]","name":"_authorizedAmounts","type":"uint256[]"}],"name":"addAuthorizedAmounts","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"authorizedAmounts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"},{"internalType":"uint256","name":"_maxPlayers","type":"uint256"},{"internalType":"uint256","name":"_playTimeRange","type":"uint256"},{"internalType":"uint256","name":"_registrationAmount","type":"uint256"},{"internalType":"uint256","name":"_treasuryFee","type":"uint256"},{"internalType":"uint256","name":"_creatorFee","type":"uint256"},{"internalType":"string","name":"_encodedCron","type":"string"},{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"_prizes","type":"tuple[]"}],"name":"createNewGame","outputs":[{"internalType":"address","name":"game","type":"address"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"cronUpkeep","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"deployedGames","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"deployedAddress","type":"address"},{"internalType":"uint256","name":"gameCreationAmount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"gameCreationAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"games","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"deployedAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_authorizedAmount","type":"uint256"}],"name":"getAuthorizedAmount","outputs":[{"components":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isUsed","type":"bool"}],"internalType":"struct GameFactory.AuthorizedAmount","name":"gameAuthorisedAmount","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAuthorizedAmounts","outputs":[{"internalType":"uint256[]","name":"gameAuthorisedAmounts","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDeployedGames","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"deployedAddress","type":"address"},{"internalType":"uint256","name":"gameCreationAmount","type":"uint256"}],"internalType":"struct GameFactory.Game[]","name":"allGames","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestVersionId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nextId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pauseAllGamesAndFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"resumeAllGamesAndFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_game","type":"address"}],"name":"setNewGameV1","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adminAddress","type":"address"}],"name":"transferAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_cronUpkeep","type":"address"}],"name":"updateCronUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"usedAuthorizedAmounts","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isUsed","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"date":"2022-11-27T16:25:12.333Z","olds":[]},"GameV1":{"address":"0x82BF8997DC54A3E447BcF4E636cBFc45A13D0Ed9","libraries":{"Cron":"0xb37EEC7c8a7312687777e4E61c4D2C12e2Fe0DD2"},"transactionHash":"0x69063710025c28aa4125a972369ee0d91df4735dfb88eae96407788228313c19","abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"CreatorFeeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldCreator","type":"address"},{"indexed":false,"internalType":"address","name":"newCreator","type":"address"}],"name":"CreatorOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"jobId","type":"uint256"},{"indexed":false,"internalType":"address","name":"cronUpkeep","type":"address"}],"name":"CronUpkeepUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"jobId","type":"uint256"},{"indexed":false,"internalType":"string","name":"encodedCron","type":"string"}],"name":"EncodedCronUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldFactory","type":"address"},{"indexed":false,"internalType":"address","name":"newFactory","type":"address"}],"name":"FactoryOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FailedTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"roundCount","type":"uint256"}],"name":"GameLost","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"claimer","type":"address"},{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountClaimed","type":"uint256"}],"name":"GamePrizeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountWon","type":"uint256"}],"name":"GameSplitted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"winnersCounter","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountWon","type":"uint256"}],"name":"GameWon","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"}],"name":"PlayedRound","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"position","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"standard","type":"uint256"},{"indexed":false,"internalType":"address","name":"contractAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"PrizeAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"playersCount","type":"uint256"}],"name":"RegisteredForGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timelock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"resetId","type":"uint256"}],"name":"ResetGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timelock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"playersCount","type":"uint256"}],"name":"StartedGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TreasuryFeeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TreasuryFeeClaimedByFactory","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"emmiter","type":"address"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"TriggeredDailyCheckpoint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"}],"name":"VoteToSplitPot","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"MAX_CREATOR_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_TREASURY_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"_prizes","type":"tuple[]"}],"name":"addPrizes","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"claimCreatorFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"claimPrize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimTreasuryFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"creator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"creatorAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"creatorFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cronUpkeep","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"encodedCron","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"factory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getGameData","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"roundId","type":"uint256"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"uint256","name":"playerAddressesCount","type":"uint256"},{"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"},{"internalType":"uint256","name":"maxPlayers","type":"uint256"},{"internalType":"uint256","name":"registrationAmount","type":"uint256"},{"internalType":"uint256","name":"playTimeRange","type":"uint256"},{"internalType":"uint256","name":"treasuryFee","type":"uint256"},{"internalType":"uint256","name":"creatorFee","type":"uint256"},{"internalType":"bool","name":"isPaused","type":"bool"},{"internalType":"bool","name":"isInProgress","type":"bool"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"admin","type":"address"},{"internalType":"string","name":"encodedCron","type":"string"}],"internalType":"struct GameV1Interface.GameData","name":"gameData","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_player","type":"address"}],"name":"getPlayer","outputs":[{"components":[{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"roundRangeLowerLimit","type":"uint256"},{"internalType":"uint256","name":"roundRangeUpperLimit","type":"uint256"},{"internalType":"bool","name":"hasPlayedRound","type":"bool"},{"internalType":"uint256","name":"roundCount","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"hasLost","type":"bool"},{"internalType":"bool","name":"isSplitOk","type":"bool"}],"internalType":"struct GameV1Interface.Player","name":"gamePlayer","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getPlayerAddresses","outputs":[{"internalType":"address[]","name":"gamePlayerAddresses","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"getPrizes","outputs":[{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"gamePrizes","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRemainingPlayersCount","outputs":[{"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"getWinners","outputs":[{"components":[{"internalType":"uint256","name":"roundId","type":"uint256"},{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"amountWon","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"prizeClaimed","type":"bool"}],"internalType":"struct GameV1Interface.Winner[]","name":"gameWinners","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"id","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"cronUpkeep","type":"address"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"uint256","name":"version","type":"uint256"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"playTimeRange","type":"uint256"},{"internalType":"uint256","name":"maxPlayers","type":"uint256"},{"internalType":"uint256","name":"registrationAmount","type":"uint256"},{"internalType":"uint256","name":"treasuryFee","type":"uint256"},{"internalType":"uint256","name":"creatorFee","type":"uint256"},{"internalType":"string","name":"encodedCron","type":"string"},{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"prizes","type":"tuple[]"}],"internalType":"struct GameV1Interface.Initialization","name":"_initialization","type":"tuple"}],"name":"initialize","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"isAllPlayersSplitOk","outputs":[{"internalType":"bool","name":"isSplitOk","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isGameAllPrizesStandard","outputs":[{"internalType":"bool","name":"isStandard","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isGamePayable","outputs":[{"internalType":"bool","name":"isPayable","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isInProgress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxPlayers","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"playRound","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"playTimeRange","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"playerAddresses","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"players","outputs":[{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"roundRangeLowerLimit","type":"uint256"},{"internalType":"uint256","name":"roundRangeUpperLimit","type":"uint256"},{"internalType":"bool","name":"hasPlayedRound","type":"bool"},{"internalType":"uint256","name":"roundCount","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"hasLost","type":"bool"},{"internalType":"bool","name":"isSplitOk","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"registerForGame","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"registrationAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"roundId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_creatorFee","type":"uint256"}],"name":"setCreatorFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_cronUpkeep","type":"address"}],"name":"setCronUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_encodedCron","type":"string"}],"name":"setEncodedCron","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxPlayers","type":"uint256"}],"name":"setMaxPlayers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_treasuryFee","type":"uint256"}],"name":"setTreasuryFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startGame","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adminAddress","type":"address"}],"name":"transferAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_creator","type":"address"}],"name":"transferCreatorOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_factory","type":"address"}],"name":"transferFactoryOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"treasuryAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"treasuryFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"triggerDailyCheckpoint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"voteToSplitPot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_receiver","type":"address"}],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"date":"2022-11-27T16:25:12.340Z","olds":[]},"CronExternal":{"address":"0xb37EEC7c8a7312687777e4E61c4D2C12e2Fe0DD2","libraries":{},"transactionHash":"0x48e281132d77caeb76cf8fe7d7650daca12ef201e5422c33a4d65d4b485b8989","abi":[{"inputs":[{"internalType":"string","name":"field","type":"string"},{"internalType":"string","name":"reason","type":"string"}],"name":"InvalidField","type":"error"},{"inputs":[{"internalType":"string","name":"reason","type":"string"}],"name":"InvalidSpec","type":"error"},{"inputs":[],"name":"ListTooLarge","type":"error"},{"inputs":[],"name":"UnknownFieldType","type":"error"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"lastTick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"},{"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"matches","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"nextTick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"toCronString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"cronString","type":"string"}],"name":"toEncodedSpec","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"cronString","type":"string"}],"name":"toSpec","outputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"}],"date":"2022-11-27T16:25:12.345Z","olds":[]},"CronUpkeep":{"address":"0x45aa5aec20F3019A707D0EFb1C6282c4F0Aea44e","libraries":{"Cron":"0xb37EEC7c8a7312687777e4E61c4D2C12e2Fe0DD2"},"transactionHash":"0xcb221230765e4bdec37d8c0aa22824638d47f582b9949c3bd88802aaf069ce83","abi":[{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"maxJobs","type":"uint256"},{"internalType":"bytes","name":"firstJob","type":"bytes"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"reason","type":"string"}],"name":"CallFailed","type":"error"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"CronJobIDNotFound","type":"error"},{"inputs":[],"name":"DontNeedPerformUpkeep","type":"error"},{"inputs":[],"name":"ExceedsMaxJobs","type":"error"},{"inputs":[],"name":"InvalidHandler","type":"error"},{"inputs":[],"name":"OnlySimulatedBackend","type":"error"},{"inputs":[],"name":"TickDoesntMatchSpec","type":"error"},{"inputs":[],"name":"TickInFuture","type":"error"},{"inputs":[],"name":"TickTooOld","type":"error"},{"inputs":[],"name":"UnknownFieldType","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"bytes","name":"handler","type":"bytes"}],"name":"CronJobCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"CronJobDeleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"CronJobExecuted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"bytes","name":"handler","type":"bytes"}],"name":"CronJobUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"target","type":"address"}],"name":"DelegatorAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"target","type":"address"}],"name":"DelegatorRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferRequested","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"}],"name":"addDelegator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"name":"checkUpkeep","outputs":[{"internalType":"bool","name":"","type":"bool"},{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"handler","type":"bytes"},{"internalType":"bytes","name":"encodedCronSpec","type":"bytes"}],"name":"createCronJobFromEncodedSpec","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"deleteCronJob","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getActiveCronJobIDs","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"getCronJob","outputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"handler","type":"bytes"},{"internalType":"string","name":"cronString","type":"string"},{"internalType":"uint256","name":"nextTick","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDelegators","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getNextCronJobIDs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"performData","type":"bytes"}],"name":"performUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"}],"name":"removeDelegator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"s_maxJobs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"newTarget","type":"address"},{"internalType":"bytes","name":"newHandler","type":"bytes"},{"internalType":"bytes","name":"newEncodedCronSpec","type":"bytes"}],"name":"updateCronJob","outputs":[],"stateMutability":"nonpayable","type":"function"}],"date":"2022-11-27T16:25:12.349Z","olds":[]},"MultiCall3":{"address":"0xD960c6f4D7800daFd4508FAE9bD82b9d15CC4608","libraries":{},"transactionHash":"0x6a019768739fd1cb4d1a1cd9417914913f1d6284c99559f37034171803a67c8e","abi":[{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"aggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes[]","name":"returnData","type":"bytes[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"allowFailure","type":"bool"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call3[]","name":"calls","type":"tuple[]"}],"name":"aggregate3","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"allowFailure","type":"bool"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call3Value[]","name":"calls","type":"tuple[]"}],"name":"aggregate3Value","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"blockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"getBasefee","outputs":[{"internalType":"uint256","name":"basefee","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"name":"getBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getBlockNumber","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getChainId","outputs":[{"internalType":"uint256","name":"chainid","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockCoinbase","outputs":[{"internalType":"address","name":"coinbase","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockDifficulty","outputs":[{"internalType":"uint256","name":"difficulty","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockGasLimit","outputs":[{"internalType":"uint256","name":"gaslimit","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockTimestamp","outputs":[{"internalType":"uint256","name":"timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"getEthBalance","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getLastBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"tryAggregate","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"tryBlockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"}],"date":"2022-11-27T16:25:12.353Z","olds":[]}},"97":{"GameFactory":{"address":"0x5B4aCc9eCE43900f0edC4C222109cBdE7d374858","libraries":{},"transactionHash":"0x177bb144229962f1b6c7da0e344c2d0f14274c8fa72a986708aba74e254f0bbf","abi":[{"inputs":[{"internalType":"address","name":"_game","type":"address"},{"internalType":"address","name":"_cronUpkeep","type":"address"},{"internalType":"uint256","name":"_gameCreationAmount","type":"uint256"},{"internalType":"uint256[]","name":"_authorizedAmounts","type":"uint256[]"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"cronUpkeep","type":"address"}],"name":"CronUpkeepUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FailedTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"nextId","type":"uint256"},{"indexed":false,"internalType":"address","name":"gameAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"implementationVersion","type":"uint256"},{"indexed":false,"internalType":"address","name":"creatorAddress","type":"address"}],"name":"GameCreated","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"uint256[]","name":"_authorizedAmounts","type":"uint256[]"}],"name":"addAuthorizedAmounts","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"authorizedAmounts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"},{"internalType":"uint256","name":"_maxPlayers","type":"uint256"},{"internalType":"uint256","name":"_playTimeRange","type":"uint256"},{"internalType":"uint256","name":"_registrationAmount","type":"uint256"},{"internalType":"uint256","name":"_treasuryFee","type":"uint256"},{"internalType":"uint256","name":"_creatorFee","type":"uint256"},{"internalType":"string","name":"_encodedCron","type":"string"},{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"_prizes","type":"tuple[]"}],"name":"createNewGame","outputs":[{"internalType":"address","name":"game","type":"address"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"cronUpkeep","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"deployedGames","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"deployedAddress","type":"address"},{"internalType":"uint256","name":"gameCreationAmount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"gameCreationAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"games","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"deployedAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_authorizedAmount","type":"uint256"}],"name":"getAuthorizedAmount","outputs":[{"components":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isUsed","type":"bool"}],"internalType":"struct GameFactory.AuthorizedAmount","name":"gameAuthorisedAmount","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAuthorizedAmounts","outputs":[{"internalType":"uint256[]","name":"gameAuthorisedAmounts","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDeployedGames","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"deployedAddress","type":"address"},{"internalType":"uint256","name":"gameCreationAmount","type":"uint256"}],"internalType":"struct GameFactory.Game[]","name":"allGames","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestVersionId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nextId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pauseAllGamesAndFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"resumeAllGamesAndFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_game","type":"address"}],"name":"setNewGameV1","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adminAddress","type":"address"}],"name":"transferAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_cronUpkeep","type":"address"}],"name":"updateCronUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"usedAuthorizedAmounts","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isUsed","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"date":"2022-11-27T15:59:24.095Z","olds":[]},"GameV1":{"address":"0x5fAC8090B45e9948fb1B8E37d2C9EE95a896c4D1","libraries":{"Cron":"0x9ccB826aD25Db07D8b86288D7A0ad02dea2c1acC"},"transactionHash":"0x101948b12290d19d9d7128e24c65ce80e148007c1b1e75c02937d3008066a0df","abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"CreatorFeeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldCreator","type":"address"},{"indexed":false,"internalType":"address","name":"newCreator","type":"address"}],"name":"CreatorOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"jobId","type":"uint256"},{"indexed":false,"internalType":"address","name":"cronUpkeep","type":"address"}],"name":"CronUpkeepUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"jobId","type":"uint256"},{"indexed":false,"internalType":"string","name":"encodedCron","type":"string"}],"name":"EncodedCronUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldFactory","type":"address"},{"indexed":false,"internalType":"address","name":"newFactory","type":"address"}],"name":"FactoryOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FailedTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"roundCount","type":"uint256"}],"name":"GameLost","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"claimer","type":"address"},{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountClaimed","type":"uint256"}],"name":"GamePrizeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountWon","type":"uint256"}],"name":"GameSplitted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"winnersCounter","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountWon","type":"uint256"}],"name":"GameWon","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"}],"name":"PlayedRound","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"position","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"standard","type":"uint256"},{"indexed":false,"internalType":"address","name":"contractAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"PrizeAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"playersCount","type":"uint256"}],"name":"RegisteredForGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timelock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"resetId","type":"uint256"}],"name":"ResetGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timelock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"playersCount","type":"uint256"}],"name":"StartedGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TreasuryFeeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TreasuryFeeClaimedByFactory","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"emmiter","type":"address"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"TriggeredDailyCheckpoint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"}],"name":"VoteToSplitPot","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"MAX_CREATOR_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_TREASURY_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"_prizes","type":"tuple[]"}],"name":"addPrizes","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"claimCreatorFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"claimPrize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimTreasuryFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"creator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"creatorAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"creatorFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cronUpkeep","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"encodedCron","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"factory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getGameData","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"roundId","type":"uint256"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"uint256","name":"playerAddressesCount","type":"uint256"},{"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"},{"internalType":"uint256","name":"maxPlayers","type":"uint256"},{"internalType":"uint256","name":"registrationAmount","type":"uint256"},{"internalType":"uint256","name":"playTimeRange","type":"uint256"},{"internalType":"uint256","name":"treasuryFee","type":"uint256"},{"internalType":"uint256","name":"creatorFee","type":"uint256"},{"internalType":"bool","name":"isPaused","type":"bool"},{"internalType":"bool","name":"isInProgress","type":"bool"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"admin","type":"address"},{"internalType":"string","name":"encodedCron","type":"string"}],"internalType":"struct GameV1Interface.GameData","name":"gameData","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_player","type":"address"}],"name":"getPlayer","outputs":[{"components":[{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"roundRangeLowerLimit","type":"uint256"},{"internalType":"uint256","name":"roundRangeUpperLimit","type":"uint256"},{"internalType":"bool","name":"hasPlayedRound","type":"bool"},{"internalType":"uint256","name":"roundCount","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"hasLost","type":"bool"},{"internalType":"bool","name":"isSplitOk","type":"bool"}],"internalType":"struct GameV1Interface.Player","name":"gamePlayer","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getPlayerAddresses","outputs":[{"internalType":"address[]","name":"gamePlayerAddresses","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"getPrizes","outputs":[{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"gamePrizes","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRemainingPlayersCount","outputs":[{"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"getWinners","outputs":[{"components":[{"internalType":"uint256","name":"roundId","type":"uint256"},{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"amountWon","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"prizeClaimed","type":"bool"}],"internalType":"struct GameV1Interface.Winner[]","name":"gameWinners","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"id","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"cronUpkeep","type":"address"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"uint256","name":"version","type":"uint256"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"playTimeRange","type":"uint256"},{"internalType":"uint256","name":"maxPlayers","type":"uint256"},{"internalType":"uint256","name":"registrationAmount","type":"uint256"},{"internalType":"uint256","name":"treasuryFee","type":"uint256"},{"internalType":"uint256","name":"creatorFee","type":"uint256"},{"internalType":"string","name":"encodedCron","type":"string"},{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"prizes","type":"tuple[]"}],"internalType":"struct GameV1Interface.Initialization","name":"_initialization","type":"tuple"}],"name":"initialize","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"isAllPlayersSplitOk","outputs":[{"internalType":"bool","name":"isSplitOk","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isGameAllPrizesStandard","outputs":[{"internalType":"bool","name":"isStandard","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isGamePayable","outputs":[{"internalType":"bool","name":"isPayable","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isInProgress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxPlayers","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"playRound","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"playTimeRange","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"playerAddresses","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"players","outputs":[{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"roundRangeLowerLimit","type":"uint256"},{"internalType":"uint256","name":"roundRangeUpperLimit","type":"uint256"},{"internalType":"bool","name":"hasPlayedRound","type":"bool"},{"internalType":"uint256","name":"roundCount","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"hasLost","type":"bool"},{"internalType":"bool","name":"isSplitOk","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"registerForGame","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"registrationAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"roundId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_creatorFee","type":"uint256"}],"name":"setCreatorFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_cronUpkeep","type":"address"}],"name":"setCronUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_encodedCron","type":"string"}],"name":"setEncodedCron","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxPlayers","type":"uint256"}],"name":"setMaxPlayers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_treasuryFee","type":"uint256"}],"name":"setTreasuryFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startGame","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adminAddress","type":"address"}],"name":"transferAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_creator","type":"address"}],"name":"transferCreatorOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_factory","type":"address"}],"name":"transferFactoryOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"treasuryAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"treasuryFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"triggerDailyCheckpoint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"voteToSplitPot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_receiver","type":"address"}],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"date":"2022-11-27T15:59:24.097Z","olds":[]},"CronExternal":{"address":"0x9ccB826aD25Db07D8b86288D7A0ad02dea2c1acC","libraries":{},"transactionHash":"0xd0b29d5bb6059714b6142a1f23abd6ae5628c3f7155e116ac2f0d7999ac70a56","abi":[{"inputs":[{"internalType":"string","name":"field","type":"string"},{"internalType":"string","name":"reason","type":"string"}],"name":"InvalidField","type":"error"},{"inputs":[{"internalType":"string","name":"reason","type":"string"}],"name":"InvalidSpec","type":"error"},{"inputs":[],"name":"ListTooLarge","type":"error"},{"inputs":[],"name":"UnknownFieldType","type":"error"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"lastTick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"},{"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"matches","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"nextTick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"toCronString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"cronString","type":"string"}],"name":"toEncodedSpec","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"cronString","type":"string"}],"name":"toSpec","outputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"}],"date":"2022-11-27T15:59:24.100Z","olds":[]},"CronUpkeep":{"address":"0xb49E61eA8A132bb507d9AC60ABeBaF8D5e8a500D","libraries":{"Cron":"0x9ccB826aD25Db07D8b86288D7A0ad02dea2c1acC"},"transactionHash":"0x65cfd492b572b8fba7e6dd7e94e67f5d16c2957d5fb2d721c6d12ffcbc13041b","abi":[{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"maxJobs","type":"uint256"},{"internalType":"bytes","name":"firstJob","type":"bytes"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"reason","type":"string"}],"name":"CallFailed","type":"error"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"CronJobIDNotFound","type":"error"},{"inputs":[],"name":"DontNeedPerformUpkeep","type":"error"},{"inputs":[],"name":"ExceedsMaxJobs","type":"error"},{"inputs":[],"name":"InvalidHandler","type":"error"},{"inputs":[],"name":"OnlySimulatedBackend","type":"error"},{"inputs":[],"name":"TickDoesntMatchSpec","type":"error"},{"inputs":[],"name":"TickInFuture","type":"error"},{"inputs":[],"name":"TickTooOld","type":"error"},{"inputs":[],"name":"UnknownFieldType","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"bytes","name":"handler","type":"bytes"}],"name":"CronJobCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"CronJobDeleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"CronJobExecuted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"bytes","name":"handler","type":"bytes"}],"name":"CronJobUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"target","type":"address"}],"name":"DelegatorAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"target","type":"address"}],"name":"DelegatorRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferRequested","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"}],"name":"addDelegator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"name":"checkUpkeep","outputs":[{"internalType":"bool","name":"","type":"bool"},{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"handler","type":"bytes"},{"internalType":"bytes","name":"encodedCronSpec","type":"bytes"}],"name":"createCronJobFromEncodedSpec","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"deleteCronJob","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getActiveCronJobIDs","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"getCronJob","outputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"handler","type":"bytes"},{"internalType":"string","name":"cronString","type":"string"},{"internalType":"uint256","name":"nextTick","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDelegators","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getNextCronJobIDs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"performData","type":"bytes"}],"name":"performUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"}],"name":"removeDelegator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"s_maxJobs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"newTarget","type":"address"},{"internalType":"bytes","name":"newHandler","type":"bytes"},{"internalType":"bytes","name":"newEncodedCronSpec","type":"bytes"}],"name":"updateCronJob","outputs":[],"stateMutability":"nonpayable","type":"function"}],"date":"2022-11-27T15:59:24.102Z","olds":[]},"MultiCall3":{"address":"0x9e5eD465c11ec50DC07481b8c1B69Dee910f28C1","libraries":{},"transactionHash":"0x913a8fc62180fb0de5e280aaefd29824633e64b229f912e198f1d62dc33dcd12","abi":[{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"aggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes[]","name":"returnData","type":"bytes[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"allowFailure","type":"bool"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call3[]","name":"calls","type":"tuple[]"}],"name":"aggregate3","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"allowFailure","type":"bool"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call3Value[]","name":"calls","type":"tuple[]"}],"name":"aggregate3Value","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"blockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"getBasefee","outputs":[{"internalType":"uint256","name":"basefee","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"name":"getBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getBlockNumber","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getChainId","outputs":[{"internalType":"uint256","name":"chainid","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockCoinbase","outputs":[{"internalType":"address","name":"coinbase","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockDifficulty","outputs":[{"internalType":"uint256","name":"difficulty","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockGasLimit","outputs":[{"internalType":"uint256","name":"gaslimit","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockTimestamp","outputs":[{"internalType":"uint256","name":"timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"getEthBalance","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getLastBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"tryAggregate","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"tryBlockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"}],"date":"2022-11-27T15:59:24.104Z","olds":[]}},"31337":{"GameFactory":{"address":"0xa513E6E4b8f2a923D98304ec87F64353C4D5C853","libraries":{},"transactionHash":"0xec0f21f324844fb41831a35985e4e850fc347a275ce9105519f3a1f2b9348aab","abi":[{"inputs":[{"internalType":"address","name":"_game","type":"address"},{"internalType":"address","name":"_cronUpkeep","type":"address"},{"internalType":"uint256","name":"_gameCreationAmount","type":"uint256"},{"internalType":"uint256[]","name":"_authorizedAmounts","type":"uint256[]"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"cronUpkeep","type":"address"}],"name":"CronUpkeepUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FailedTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"nextId","type":"uint256"},{"indexed":false,"internalType":"address","name":"gameAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"implementationVersion","type":"uint256"},{"indexed":false,"internalType":"address","name":"creatorAddress","type":"address"}],"name":"GameCreated","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"uint256[]","name":"_authorizedAmounts","type":"uint256[]"}],"name":"addAuthorizedAmounts","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"authorizedAmounts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"},{"internalType":"uint256","name":"_maxPlayers","type":"uint256"},{"internalType":"uint256","name":"_playTimeRange","type":"uint256"},{"internalType":"uint256","name":"_registrationAmount","type":"uint256"},{"internalType":"uint256","name":"_treasuryFee","type":"uint256"},{"internalType":"uint256","name":"_creatorFee","type":"uint256"},{"internalType":"string","name":"_encodedCron","type":"string"},{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"_prizes","type":"tuple[]"}],"name":"createNewGame","outputs":[{"internalType":"address","name":"game","type":"address"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"cronUpkeep","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"deployedGames","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"deployedAddress","type":"address"},{"internalType":"uint256","name":"gameCreationAmount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"gameCreationAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"games","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"deployedAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_authorizedAmount","type":"uint256"}],"name":"getAuthorizedAmount","outputs":[{"components":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isUsed","type":"bool"}],"internalType":"struct GameFactory.AuthorizedAmount","name":"gameAuthorisedAmount","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAuthorizedAmounts","outputs":[{"internalType":"uint256[]","name":"gameAuthorisedAmounts","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDeployedGames","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"deployedAddress","type":"address"},{"internalType":"uint256","name":"gameCreationAmount","type":"uint256"}],"internalType":"struct GameFactory.Game[]","name":"allGames","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestVersionId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nextId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pauseAllGamesAndFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"resumeAllGamesAndFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_game","type":"address"}],"name":"setNewGameV1","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adminAddress","type":"address"}],"name":"transferAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_cronUpkeep","type":"address"}],"name":"updateCronUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"usedAuthorizedAmounts","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isUsed","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"date":"2022-11-27T21:30:22.156Z","olds":[]},"GameV1":{"address":"0x5FC8d32690cc91D4c39d9d3abcBD16989F875707","libraries":{"Cron":"0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0"},"transactionHash":"0x4375fd251f1f8fd21cd0e27240875fcac2258dc1700d80fa954bfb5e805ac84d","abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"CreatorFeeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldCreator","type":"address"},{"indexed":false,"internalType":"address","name":"newCreator","type":"address"}],"name":"CreatorOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"jobId","type":"uint256"},{"indexed":false,"internalType":"address","name":"cronUpkeep","type":"address"}],"name":"CronUpkeepUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"jobId","type":"uint256"},{"indexed":false,"internalType":"string","name":"encodedCron","type":"string"}],"name":"EncodedCronUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldFactory","type":"address"},{"indexed":false,"internalType":"address","name":"newFactory","type":"address"}],"name":"FactoryOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FailedTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"roundCount","type":"uint256"}],"name":"GameLost","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"claimer","type":"address"},{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountClaimed","type":"uint256"}],"name":"GamePrizeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountWon","type":"uint256"}],"name":"GameSplitted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"winnersCounter","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountWon","type":"uint256"}],"name":"GameWon","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"}],"name":"PlayedRound","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"position","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"standard","type":"uint256"},{"indexed":false,"internalType":"address","name":"contractAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"PrizeAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"playersCount","type":"uint256"}],"name":"RegisteredForGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timelock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"resetId","type":"uint256"}],"name":"ResetGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timelock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"playersCount","type":"uint256"}],"name":"StartedGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TreasuryFeeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TreasuryFeeClaimedByFactory","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"emmiter","type":"address"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"TriggeredDailyCheckpoint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"}],"name":"VoteToSplitPot","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"MAX_CREATOR_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_TREASURY_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"_prizes","type":"tuple[]"}],"name":"addPrizes","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"claimCreatorFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"claimPrize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimTreasuryFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"creator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"creatorAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"creatorFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cronUpkeep","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"encodedCron","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"factory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getGameData","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"uint256","name":"roundId","type":"uint256"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"uint256","name":"playerAddressesCount","type":"uint256"},{"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"},{"internalType":"uint256","name":"maxPlayers","type":"uint256"},{"internalType":"uint256","name":"registrationAmount","type":"uint256"},{"internalType":"uint256","name":"playTimeRange","type":"uint256"},{"internalType":"uint256","name":"treasuryFee","type":"uint256"},{"internalType":"uint256","name":"creatorFee","type":"uint256"},{"internalType":"bool","name":"isPaused","type":"bool"},{"internalType":"bool","name":"isInProgress","type":"bool"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"admin","type":"address"},{"internalType":"string","name":"encodedCron","type":"string"}],"internalType":"struct GameV1Interface.GameData","name":"gameData","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_player","type":"address"}],"name":"getPlayer","outputs":[{"components":[{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"roundRangeLowerLimit","type":"uint256"},{"internalType":"uint256","name":"roundRangeUpperLimit","type":"uint256"},{"internalType":"bool","name":"hasPlayedRound","type":"bool"},{"internalType":"uint256","name":"roundCount","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"hasLost","type":"bool"},{"internalType":"bool","name":"isSplitOk","type":"bool"}],"internalType":"struct GameV1Interface.Player","name":"gamePlayer","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getPlayerAddresses","outputs":[{"internalType":"address[]","name":"gamePlayerAddresses","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"getPrizes","outputs":[{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"gamePrizes","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRemainingPlayersCount","outputs":[{"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"getWinners","outputs":[{"components":[{"internalType":"uint256","name":"roundId","type":"uint256"},{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"amountWon","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"prizeClaimed","type":"bool"}],"internalType":"struct GameV1Interface.Winner[]","name":"gameWinners","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"id","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"cronUpkeep","type":"address"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"uint256","name":"version","type":"uint256"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"playTimeRange","type":"uint256"},{"internalType":"uint256","name":"maxPlayers","type":"uint256"},{"internalType":"uint256","name":"registrationAmount","type":"uint256"},{"internalType":"uint256","name":"treasuryFee","type":"uint256"},{"internalType":"uint256","name":"creatorFee","type":"uint256"},{"internalType":"string","name":"encodedCron","type":"string"},{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"prizes","type":"tuple[]"}],"internalType":"struct GameV1Interface.Initialization","name":"_initialization","type":"tuple"}],"name":"initialize","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"isAllPlayersSplitOk","outputs":[{"internalType":"bool","name":"isSplitOk","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isGameAllPrizesStandard","outputs":[{"internalType":"bool","name":"isStandard","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isGamePayable","outputs":[{"internalType":"bool","name":"isPayable","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isInProgress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxPlayers","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"playRound","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"playTimeRange","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"playerAddresses","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"players","outputs":[{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"roundRangeLowerLimit","type":"uint256"},{"internalType":"uint256","name":"roundRangeUpperLimit","type":"uint256"},{"internalType":"bool","name":"hasPlayedRound","type":"bool"},{"internalType":"uint256","name":"roundCount","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"hasLost","type":"bool"},{"internalType":"bool","name":"isSplitOk","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"registerForGame","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"registrationAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"roundId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_creatorFee","type":"uint256"}],"name":"setCreatorFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_cronUpkeep","type":"address"}],"name":"setCronUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_encodedCron","type":"string"}],"name":"setEncodedCron","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxPlayers","type":"uint256"}],"name":"setMaxPlayers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_treasuryFee","type":"uint256"}],"name":"setTreasuryFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startGame","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adminAddress","type":"address"}],"name":"transferAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_creator","type":"address"}],"name":"transferCreatorOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_factory","type":"address"}],"name":"transferFactoryOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"treasuryAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"treasuryFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"triggerDailyCheckpoint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"voteToSplitPot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_receiver","type":"address"}],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"date":"2022-11-27T21:30:22.158Z","olds":[]},"CronExternal":{"address":"0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0","libraries":{},"transactionHash":"0xc6209c5c013870559ba0f768cfc96e6abe0a79b9467a8c988baad6ce74a9c61c","abi":[{"inputs":[{"internalType":"string","name":"field","type":"string"},{"internalType":"string","name":"reason","type":"string"}],"name":"InvalidField","type":"error"},{"inputs":[{"internalType":"string","name":"reason","type":"string"}],"name":"InvalidSpec","type":"error"},{"inputs":[],"name":"ListTooLarge","type":"error"},{"inputs":[],"name":"UnknownFieldType","type":"error"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"lastTick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"},{"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"matches","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"nextTick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"toCronString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"cronString","type":"string"}],"name":"toEncodedSpec","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"cronString","type":"string"}],"name":"toSpec","outputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"}],"date":"2022-11-27T21:30:22.162Z","olds":[]},"CronUpkeep":{"address":"0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9","libraries":{"Cron":"0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0"},"transactionHash":"0x435b49ee8140b9a49a5c7970baef3c86ddac32640a0e6a4d504376d3fd88e8f4","abi":[{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"maxJobs","type":"uint256"},{"internalType":"bytes","name":"firstJob","type":"bytes"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"reason","type":"string"}],"name":"CallFailed","type":"error"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"CronJobIDNotFound","type":"error"},{"inputs":[],"name":"DontNeedPerformUpkeep","type":"error"},{"inputs":[],"name":"ExceedsMaxJobs","type":"error"},{"inputs":[],"name":"InvalidHandler","type":"error"},{"inputs":[],"name":"OnlySimulatedBackend","type":"error"},{"inputs":[],"name":"TickDoesntMatchSpec","type":"error"},{"inputs":[],"name":"TickInFuture","type":"error"},{"inputs":[],"name":"TickTooOld","type":"error"},{"inputs":[],"name":"UnknownFieldType","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"bytes","name":"handler","type":"bytes"}],"name":"CronJobCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"CronJobDeleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"CronJobExecuted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"bytes","name":"handler","type":"bytes"}],"name":"CronJobUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"target","type":"address"}],"name":"DelegatorAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"target","type":"address"}],"name":"DelegatorRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferRequested","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"}],"name":"addDelegator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"name":"checkUpkeep","outputs":[{"internalType":"bool","name":"","type":"bool"},{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"handler","type":"bytes"},{"internalType":"bytes","name":"encodedCronSpec","type":"bytes"}],"name":"createCronJobFromEncodedSpec","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"deleteCronJob","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getActiveCronJobIDs","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"getCronJob","outputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"handler","type":"bytes"},{"internalType":"string","name":"cronString","type":"string"},{"internalType":"uint256","name":"nextTick","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDelegators","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getNextCronJobIDs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"performData","type":"bytes"}],"name":"performUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"}],"name":"removeDelegator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"s_maxJobs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"newTarget","type":"address"},{"internalType":"bytes","name":"newHandler","type":"bytes"},{"internalType":"bytes","name":"newEncodedCronSpec","type":"bytes"}],"name":"updateCronJob","outputs":[],"stateMutability":"nonpayable","type":"function"}],"date":"2022-11-27T21:30:22.164Z","olds":[]},"MultiCall3":{"address":"0x5FbDB2315678afecb367f032d93F642f64180aa3","libraries":{},"transactionHash":"0x948c6050467e45aeb451cbd990561452e3d80efc17bfd1a565f1083f4cef1c3b","abi":[{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"aggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes[]","name":"returnData","type":"bytes[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"allowFailure","type":"bool"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call3[]","name":"calls","type":"tuple[]"}],"name":"aggregate3","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"allowFailure","type":"bool"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call3Value[]","name":"calls","type":"tuple[]"}],"name":"aggregate3Value","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"blockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"getBasefee","outputs":[{"internalType":"uint256","name":"basefee","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"name":"getBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getBlockNumber","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getChainId","outputs":[{"internalType":"uint256","name":"chainid","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockCoinbase","outputs":[{"internalType":"address","name":"coinbase","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockDifficulty","outputs":[{"internalType":"uint256","name":"difficulty","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockGasLimit","outputs":[{"internalType":"uint256","name":"gaslimit","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockTimestamp","outputs":[{"internalType":"uint256","name":"timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"getEthBalance","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getLastBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"tryAggregate","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"tryBlockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"}],"date":"2022-11-27T21:30:22.166Z","olds":[]}},"80001":{"GameFactory":{"address":"0xEC767280c8b789ef260E8e7D63Ee85d023C5F9ea","libraries":{},"transactionHash":"0xa38d62ed0097c94087d40d9a8b707e0e980f86afc7ea4888ee73b74186aeefc7","abi":[{"inputs":[{"internalType":"address","name":"_game","type":"address"},{"internalType":"address","name":"_cronUpkeep","type":"address"},{"internalType":"uint256","name":"_gameCreationAmount","type":"uint256"},{"internalType":"uint256[]","name":"_authorizedAmounts","type":"uint256[]"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"cronUpkeep","type":"address"}],"name":"CronUpkeepUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FailedTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"nextId","type":"uint256"},{"indexed":false,"internalType":"address","name":"gameAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"implementationVersion","type":"uint256"},{"indexed":false,"internalType":"address","name":"creatorAddress","type":"address"}],"name":"GameCreated","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"uint256[]","name":"_authorizedAmounts","type":"uint256[]"}],"name":"addAuthorizedAmounts","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"authorizedAmounts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"},{"internalType":"uint256","name":"_maxPlayers","type":"uint256"},{"internalType":"uint256","name":"_playTimeRange","type":"uint256"},{"internalType":"uint256","name":"_registrationAmount","type":"uint256"},{"internalType":"uint256","name":"_treasuryFee","type":"uint256"},{"internalType":"uint256","name":"_creatorFee","type":"uint256"},{"internalType":"string","name":"_encodedCron","type":"string"},{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"_prizes","type":"tuple[]"}],"name":"createNewGame","outputs":[{"internalType":"address","name":"game","type":"address"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"cronUpkeep","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"deployedGames","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"deployedAddress","type":"address"},{"internalType":"uint256","name":"gameCreationAmount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"gameCreationAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"games","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"deployedAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_authorizedAmount","type":"uint256"}],"name":"getAuthorizedAmount","outputs":[{"components":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isUsed","type":"bool"}],"internalType":"struct GameFactory.AuthorizedAmount","name":"gameAuthorisedAmount","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAuthorizedAmounts","outputs":[{"internalType":"uint256[]","name":"gameAuthorisedAmounts","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDeployedGames","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"versionId","type":"uint256"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"deployedAddress","type":"address"},{"internalType":"uint256","name":"gameCreationAmount","type":"uint256"}],"internalType":"struct GameFactory.Game[]","name":"allGames","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestVersionId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nextId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pauseAllGamesAndFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"resumeAllGamesAndFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_game","type":"address"}],"name":"setNewGameV1","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adminAddress","type":"address"}],"name":"transferAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_cronUpkeep","type":"address"}],"name":"updateCronUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"usedAuthorizedAmounts","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isUsed","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"date":"2022-11-27T16:12:17.864Z","olds":[]},"GameV1":{"address":"0x4BC8b204ab339969Dc45C631ecc2461F464d34c8","libraries":{"Cron":"0xa66C8C212306f6f41bbA974eeD7F72DCd46a55BB"},"transactionHash":"0xdec0bafc2c11abc16fad2321c9c788b5fdbc9ee25392006a1909a676b8090291","abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"CreatorFeeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldCreator","type":"address"},{"indexed":false,"internalType":"address","name":"newCreator","type":"address"}],"name":"CreatorOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"jobId","type":"uint256"},{"indexed":false,"internalType":"address","name":"cronUpkeep","type":"address"}],"name":"CronUpkeepUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"jobId","type":"uint256"},{"indexed":false,"internalType":"string","name":"encodedCron","type":"string"}],"name":"EncodedCronUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldFactory","type":"address"},{"indexed":false,"internalType":"address","name":"newFactory","type":"address"}],"name":"FactoryOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FailedTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"roundCount","type":"uint256"}],"name":"GameLost","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"claimer","type":"address"},{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountClaimed","type":"uint256"}],"name":"GamePrizeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountWon","type":"uint256"}],"name":"GameSplitted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"winnersCounter","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountWon","type":"uint256"}],"name":"GameWon","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"}],"name":"PlayedRound","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"position","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"standard","type":"uint256"},{"indexed":false,"internalType":"address","name":"contractAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"PrizeAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"playersCount","type":"uint256"}],"name":"RegisteredForGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timelock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"resetId","type":"uint256"}],"name":"ResetGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timelock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"playersCount","type":"uint256"}],"name":"StartedGame","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TreasuryFeeClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TreasuryFeeClaimedByFactory","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"emmiter","type":"address"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"TriggeredDailyCheckpoint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"roundId","type":"uint256"},{"indexed":false,"internalType":"address","name":"playerAddress","type":"address"}],"name":"VoteToSplitPot","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"MAX_CREATOR_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_TREASURY_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"_prizes","type":"tuple[]"}],"name":"addPrizes","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"claimCreatorFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"claimPrize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimTreasuryFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"creator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"creatorAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"creatorFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cronUpkeep","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"encodedCron","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"factory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getGameData","outputs":[{"components":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"roundId","type":"uint256"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"uint256","name":"playerAddressesCount","type":"uint256"},{"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"},{"internalType":"uint256","name":"maxPlayers","type":"uint256"},{"internalType":"uint256","name":"registrationAmount","type":"uint256"},{"internalType":"uint256","name":"playTimeRange","type":"uint256"},{"internalType":"uint256","name":"treasuryFee","type":"uint256"},{"internalType":"uint256","name":"creatorFee","type":"uint256"},{"internalType":"bool","name":"isPaused","type":"bool"},{"internalType":"bool","name":"isInProgress","type":"bool"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"admin","type":"address"},{"internalType":"string","name":"encodedCron","type":"string"}],"internalType":"struct GameV1Interface.GameData","name":"gameData","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_player","type":"address"}],"name":"getPlayer","outputs":[{"components":[{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"roundRangeLowerLimit","type":"uint256"},{"internalType":"uint256","name":"roundRangeUpperLimit","type":"uint256"},{"internalType":"bool","name":"hasPlayedRound","type":"bool"},{"internalType":"uint256","name":"roundCount","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"hasLost","type":"bool"},{"internalType":"bool","name":"isSplitOk","type":"bool"}],"internalType":"struct GameV1Interface.Player","name":"gamePlayer","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getPlayerAddresses","outputs":[{"internalType":"address[]","name":"gamePlayerAddresses","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"getPrizes","outputs":[{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"gamePrizes","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRemainingPlayersCount","outputs":[{"internalType":"uint256","name":"remainingPlayersCount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_roundId","type":"uint256"}],"name":"getWinners","outputs":[{"components":[{"internalType":"uint256","name":"roundId","type":"uint256"},{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"amountWon","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"prizeClaimed","type":"bool"}],"internalType":"struct GameV1Interface.Winner[]","name":"gameWinners","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"id","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"cronUpkeep","type":"address"},{"internalType":"bytes32","name":"name","type":"bytes32"},{"internalType":"uint256","name":"version","type":"uint256"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"playTimeRange","type":"uint256"},{"internalType":"uint256","name":"maxPlayers","type":"uint256"},{"internalType":"uint256","name":"registrationAmount","type":"uint256"},{"internalType":"uint256","name":"treasuryFee","type":"uint256"},{"internalType":"uint256","name":"creatorFee","type":"uint256"},{"internalType":"string","name":"encodedCron","type":"string"},{"components":[{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"standard","type":"uint256"},{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"internalType":"struct GameV1Interface.Prize[]","name":"prizes","type":"tuple[]"}],"internalType":"struct GameV1Interface.Initialization","name":"_initialization","type":"tuple"}],"name":"initialize","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"isAllPlayersSplitOk","outputs":[{"internalType":"bool","name":"isSplitOk","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isGameAllPrizesStandard","outputs":[{"internalType":"bool","name":"isStandard","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isGamePayable","outputs":[{"internalType":"bool","name":"isPayable","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isInProgress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxPlayers","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"playRound","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"playTimeRange","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"playerAddresses","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"players","outputs":[{"internalType":"address","name":"playerAddress","type":"address"},{"internalType":"uint256","name":"roundRangeLowerLimit","type":"uint256"},{"internalType":"uint256","name":"roundRangeUpperLimit","type":"uint256"},{"internalType":"bool","name":"hasPlayedRound","type":"bool"},{"internalType":"uint256","name":"roundCount","type":"uint256"},{"internalType":"uint256","name":"position","type":"uint256"},{"internalType":"bool","name":"hasLost","type":"bool"},{"internalType":"bool","name":"isSplitOk","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"registerForGame","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"registrationAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"roundId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_creatorFee","type":"uint256"}],"name":"setCreatorFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_cronUpkeep","type":"address"}],"name":"setCronUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_encodedCron","type":"string"}],"name":"setEncodedCron","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxPlayers","type":"uint256"}],"name":"setMaxPlayers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_name","type":"bytes32"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_treasuryFee","type":"uint256"}],"name":"setTreasuryFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startGame","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adminAddress","type":"address"}],"name":"transferAdminOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_creator","type":"address"}],"name":"transferCreatorOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_factory","type":"address"}],"name":"transferFactoryOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"treasuryAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"treasuryFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"triggerDailyCheckpoint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"voteToSplitPot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_receiver","type":"address"}],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"date":"2022-11-27T16:12:17.869Z","olds":[]},"CronExternal":{"address":"0xa66C8C212306f6f41bbA974eeD7F72DCd46a55BB","libraries":{},"transactionHash":"0xdbd29928a0e8982be758fb4bc058aa9447f0c1944580fbb9f649ce56283a5e38","abi":[{"inputs":[{"internalType":"string","name":"field","type":"string"},{"internalType":"string","name":"reason","type":"string"}],"name":"InvalidField","type":"error"},{"inputs":[{"internalType":"string","name":"reason","type":"string"}],"name":"InvalidSpec","type":"error"},{"inputs":[],"name":"ListTooLarge","type":"error"},{"inputs":[],"name":"UnknownFieldType","type":"error"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"lastTick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"},{"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"matches","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"nextTick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"spec","type":"tuple"}],"name":"toCronString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"cronString","type":"string"}],"name":"toEncodedSpec","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"cronString","type":"string"}],"name":"toSpec","outputs":[{"components":[{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"minute","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"hour","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"day","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"month","type":"tuple"},{"components":[{"internalType":"enum FieldType","name":"fieldType","type":"FieldType"},{"internalType":"uint8","name":"singleValue","type":"uint8"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint8","name":"rangeStart","type":"uint8"},{"internalType":"uint8","name":"rangeEnd","type":"uint8"},{"internalType":"uint8","name":"listLength","type":"uint8"},{"internalType":"uint8[26]","name":"list","type":"uint8[26]"}],"internalType":"struct Field","name":"dayOfWeek","type":"tuple"}],"internalType":"struct Spec","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"}],"date":"2022-11-27T16:12:17.873Z","olds":[]},"CronUpkeep":{"address":"0xa9296aF2f631086d52fD02693F2A8996dD4156a0","libraries":{"Cron":"0xa66C8C212306f6f41bbA974eeD7F72DCd46a55BB"},"transactionHash":"0xe880f8e46acc54eabde06487b94f06920cddfff4e7ef38de0a8db52cefc4883f","abi":[{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"maxJobs","type":"uint256"},{"internalType":"bytes","name":"firstJob","type":"bytes"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"reason","type":"string"}],"name":"CallFailed","type":"error"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"CronJobIDNotFound","type":"error"},{"inputs":[],"name":"DontNeedPerformUpkeep","type":"error"},{"inputs":[],"name":"ExceedsMaxJobs","type":"error"},{"inputs":[],"name":"InvalidHandler","type":"error"},{"inputs":[],"name":"OnlySimulatedBackend","type":"error"},{"inputs":[],"name":"TickDoesntMatchSpec","type":"error"},{"inputs":[],"name":"TickInFuture","type":"error"},{"inputs":[],"name":"TickTooOld","type":"error"},{"inputs":[],"name":"UnknownFieldType","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"bytes","name":"handler","type":"bytes"}],"name":"CronJobCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"CronJobDeleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"CronJobExecuted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"bytes","name":"handler","type":"bytes"}],"name":"CronJobUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"target","type":"address"}],"name":"DelegatorAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"target","type":"address"}],"name":"DelegatorRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferRequested","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"}],"name":"addDelegator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"name":"checkUpkeep","outputs":[{"internalType":"bool","name":"","type":"bool"},{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"handler","type":"bytes"},{"internalType":"bytes","name":"encodedCronSpec","type":"bytes"}],"name":"createCronJobFromEncodedSpec","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"deleteCronJob","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getActiveCronJobIDs","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"getCronJob","outputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"handler","type":"bytes"},{"internalType":"string","name":"cronString","type":"string"},{"internalType":"uint256","name":"nextTick","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDelegators","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getNextCronJobIDs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"performData","type":"bytes"}],"name":"performUpkeep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"}],"name":"removeDelegator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"s_maxJobs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"newTarget","type":"address"},{"internalType":"bytes","name":"newHandler","type":"bytes"},{"internalType":"bytes","name":"newEncodedCronSpec","type":"bytes"}],"name":"updateCronJob","outputs":[],"stateMutability":"nonpayable","type":"function"}],"date":"2022-11-27T16:12:17.877Z","olds":[]},"MultiCall3":{"address":"0xCcE2Ce77027F4Cc43Db57Cb400061f5DAaD96b68","libraries":{},"transactionHash":"0x6c68e8941f425053641ca2f0984655b2ceadcef450523c02de01551397ef5901","abi":[{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"aggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes[]","name":"returnData","type":"bytes[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"allowFailure","type":"bool"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call3[]","name":"calls","type":"tuple[]"}],"name":"aggregate3","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"allowFailure","type":"bool"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call3Value[]","name":"calls","type":"tuple[]"}],"name":"aggregate3Value","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"blockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"getBasefee","outputs":[{"internalType":"uint256","name":"basefee","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"name":"getBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getBlockNumber","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getChainId","outputs":[{"internalType":"uint256","name":"chainid","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockCoinbase","outputs":[{"internalType":"address","name":"coinbase","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockDifficulty","outputs":[{"internalType":"uint256","name":"difficulty","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockGasLimit","outputs":[{"internalType":"uint256","name":"gaslimit","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockTimestamp","outputs":[{"internalType":"uint256","name":"timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"getEthBalance","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getLastBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"tryAggregate","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall3.Call[]","name":"calls","type":"tuple[]"}],"name":"tryBlockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall3.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"payable","type":"function"}],"date":"2022-11-27T16:12:17.881Z","olds":[]}}} \ No newline at end of file +{ + "5": { + "GameFactory": { + "address": "0xaa318806D683765E6576636A2d88EE14fDa9c720", + "libraries": {}, + "transactionHash": "0x3b41d62fc13c88dd3d03acfb4c061dfea39502ecf873a688a9dea9d76fd8bc88", + "abi": [ + { + "inputs": [ + { "internalType": "address", "name": "_game", "type": "address" }, + { "internalType": "address", "name": "_cronUpkeep", "type": "address" }, + { "internalType": "uint256", "name": "_gameCreationAmount", "type": "uint256" }, + { "internalType": "uint256[]", "name": "_authorizedAmounts", "type": "uint256[]" } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "cronUpkeep", "type": "address" }], + "name": "CronUpkeepUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "receiver", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "FailedTransfer", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "nextId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "gameAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "implementationVersion", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "creatorAddress", "type": "address" } + ], + "name": "GameCreated", + "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" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Paused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "sender", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "Received", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Unpaused", + "type": "event" + }, + { "stateMutability": "payable", "type": "fallback" }, + { + "inputs": [{ "internalType": "uint256[]", "name": "_authorizedAmounts", "type": "uint256[]" }], + "name": "addAuthorizedAmounts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "authorizedAmounts", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "bytes32", "name": "_name", "type": "bytes32" }, + { "internalType": "uint256", "name": "_maxPlayers", "type": "uint256" }, + { "internalType": "uint256", "name": "_playTimeRange", "type": "uint256" }, + { "internalType": "uint256", "name": "_registrationAmount", "type": "uint256" }, + { "internalType": "uint256", "name": "_treasuryFee", "type": "uint256" }, + { "internalType": "uint256", "name": "_creatorFee", "type": "uint256" }, + { "internalType": "string", "name": "_encodedCron", "type": "string" }, + { + "components": [ + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "internalType": "address", "name": "contractAddress", "type": "address" }, + { "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "internalType": "struct GameV1Interface.Prize[]", + "name": "_prizes", + "type": "tuple[]" + } + ], + "name": "createNewGame", + "outputs": [{ "internalType": "address", "name": "game", "type": "address" }], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "cronUpkeep", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "deployedGames", + "outputs": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "uint256", "name": "versionId", "type": "uint256" }, + { "internalType": "address", "name": "creator", "type": "address" }, + { "internalType": "address", "name": "deployedAddress", "type": "address" }, + { "internalType": "uint256", "name": "gameCreationAmount", "type": "uint256" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "gameCreationAmount", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "games", + "outputs": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "address", "name": "deployedAddress", "type": "address" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_authorizedAmount", "type": "uint256" }], + "name": "getAuthorizedAmount", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "bool", "name": "isUsed", "type": "bool" } + ], + "internalType": "struct GameFactory.AuthorizedAmount", + "name": "gameAuthorisedAmount", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAuthorizedAmounts", + "outputs": [{ "internalType": "uint256[]", "name": "gameAuthorisedAmounts", "type": "uint256[]" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getDeployedGames", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "uint256", "name": "versionId", "type": "uint256" }, + { "internalType": "address", "name": "creator", "type": "address" }, + { "internalType": "address", "name": "deployedAddress", "type": "address" }, + { "internalType": "uint256", "name": "gameCreationAmount", "type": "uint256" } + ], + "internalType": "struct GameFactory.Game[]", + "name": "allGames", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "latestVersionId", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "nextId", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "pauseAllGamesAndFactory", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "paused", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "resumeAllGamesAndFactory", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_game", "type": "address" }], + "name": "setNewGameV1", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_adminAddress", "type": "address" }], + "name": "transferAdminOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "newOwner", "type": "address" }], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "address", "name": "_cronUpkeep", "type": "address" }], + "name": "updateCronUpkeep", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "usedAuthorizedAmounts", + "outputs": [ + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "bool", "name": "isUsed", "type": "bool" } + ], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "withdrawFunds", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { "stateMutability": "payable", "type": "receive" } + ], + "date": "2022-11-27T16:25:12.333Z", + "olds": [] + }, + "GameV1": { + "address": "0x82BF8997DC54A3E447BcF4E636cBFc45A13D0Ed9", + "libraries": { "Cron": "0xb37EEC7c8a7312687777e4E61c4D2C12e2Fe0DD2" }, + "transactionHash": "0x69063710025c28aa4125a972369ee0d91df4735dfb88eae96407788228313c19", + "abi": [ + { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "oldAdmin", "type": "address" }, + { "indexed": false, "internalType": "address", "name": "newAdmin", "type": "address" } + ], + "name": "AdminOwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], + "name": "CreatorFeeClaimed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "oldCreator", "type": "address" }, + { "indexed": false, "internalType": "address", "name": "newCreator", "type": "address" } + ], + "name": "CreatorOwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "jobId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "cronUpkeep", "type": "address" } + ], + "name": "CronUpkeepUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "jobId", "type": "uint256" }, + { "indexed": false, "internalType": "string", "name": "encodedCron", "type": "string" } + ], + "name": "EncodedCronUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "oldFactory", "type": "address" }, + { "indexed": false, "internalType": "address", "name": "newFactory", "type": "address" } + ], + "name": "FactoryOwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "receiver", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "FailedTransfer", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "roundCount", "type": "uint256" } + ], + "name": "GameLost", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "claimer", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "amountClaimed", "type": "uint256" } + ], + "name": "GamePrizeClaimed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "remainingPlayersCount", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "amountWon", "type": "uint256" } + ], + "name": "GameSplitted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "winnersCounter", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amountWon", "type": "uint256" } + ], + "name": "GameWon", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Paused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" }], + "name": "PlayedRound", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "position", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "contractAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "name": "PrizeAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "sender", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "Received", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "playersCount", "type": "uint256" } + ], + "name": "RegisteredForGame", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "timelock", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "resetId", "type": "uint256" } + ], + "name": "ResetGame", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "timelock", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "playersCount", "type": "uint256" } + ], + "name": "StartedGame", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], + "name": "TreasuryFeeClaimed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], + "name": "TreasuryFeeClaimedByFactory", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "emmiter", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "timestamp", "type": "uint256" } + ], + "name": "TriggeredDailyCheckpoint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Unpaused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" } + ], + "name": "VoteToSplitPot", + "type": "event" + }, + { "stateMutability": "payable", "type": "fallback" }, + { + "inputs": [], + "name": "MAX_CREATOR_FEE", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "MAX_TREASURY_FEE", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "internalType": "address", "name": "contractAddress", "type": "address" }, + { "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "internalType": "struct GameV1Interface.Prize[]", + "name": "_prizes", + "type": "tuple[]" + } + ], + "name": "addPrizes", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { "inputs": [], "name": "claimCreatorFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], + "name": "claimPrize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "claimTreasuryFee", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "creator", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "creatorAmount", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "creatorFee", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "cronUpkeep", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "encodedCron", + "outputs": [{ "internalType": "string", "name": "", "type": "string" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "factory", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getGameData", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "internalType": "bytes32", "name": "name", "type": "bytes32" }, + { "internalType": "uint256", "name": "playerAddressesCount", "type": "uint256" }, + { "internalType": "uint256", "name": "remainingPlayersCount", "type": "uint256" }, + { "internalType": "uint256", "name": "maxPlayers", "type": "uint256" }, + { "internalType": "uint256", "name": "registrationAmount", "type": "uint256" }, + { "internalType": "uint256", "name": "playTimeRange", "type": "uint256" }, + { "internalType": "uint256", "name": "treasuryFee", "type": "uint256" }, + { "internalType": "uint256", "name": "creatorFee", "type": "uint256" }, + { "internalType": "bool", "name": "isPaused", "type": "bool" }, + { "internalType": "bool", "name": "isInProgress", "type": "bool" }, + { "internalType": "address", "name": "creator", "type": "address" }, + { "internalType": "address", "name": "admin", "type": "address" }, + { "internalType": "string", "name": "encodedCron", "type": "string" } + ], + "internalType": "struct GameV1Interface.GameData", + "name": "gameData", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_player", "type": "address" }], + "name": "getPlayer", + "outputs": [ + { + "components": [ + { "internalType": "address", "name": "playerAddress", "type": "address" }, + { "internalType": "uint256", "name": "roundRangeLowerLimit", "type": "uint256" }, + { "internalType": "uint256", "name": "roundRangeUpperLimit", "type": "uint256" }, + { "internalType": "bool", "name": "hasPlayedRound", "type": "bool" }, + { "internalType": "uint256", "name": "roundCount", "type": "uint256" }, + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "bool", "name": "hasLost", "type": "bool" }, + { "internalType": "bool", "name": "isSplitOk", "type": "bool" } + ], + "internalType": "struct GameV1Interface.Player", + "name": "gamePlayer", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getPlayerAddresses", + "outputs": [{ "internalType": "address[]", "name": "gamePlayerAddresses", "type": "address[]" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], + "name": "getPrizes", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "internalType": "address", "name": "contractAddress", "type": "address" }, + { "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "internalType": "struct GameV1Interface.Prize[]", + "name": "gamePrizes", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getRemainingPlayersCount", + "outputs": [{ "internalType": "uint256", "name": "remainingPlayersCount", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], + "name": "getWinners", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "internalType": "address", "name": "playerAddress", "type": "address" }, + { "internalType": "uint256", "name": "amountWon", "type": "uint256" }, + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "bool", "name": "prizeClaimed", "type": "bool" } + ], + "internalType": "struct GameV1Interface.Winner[]", + "name": "gameWinners", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "id", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "owner", "type": "address" }, + { "internalType": "address", "name": "creator", "type": "address" }, + { "internalType": "address", "name": "cronUpkeep", "type": "address" }, + { "internalType": "bytes32", "name": "name", "type": "bytes32" }, + { "internalType": "uint256", "name": "version", "type": "uint256" }, + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "uint256", "name": "playTimeRange", "type": "uint256" }, + { "internalType": "uint256", "name": "maxPlayers", "type": "uint256" }, + { "internalType": "uint256", "name": "registrationAmount", "type": "uint256" }, + { "internalType": "uint256", "name": "treasuryFee", "type": "uint256" }, + { "internalType": "uint256", "name": "creatorFee", "type": "uint256" }, + { "internalType": "string", "name": "encodedCron", "type": "string" }, + { + "components": [ + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "internalType": "address", "name": "contractAddress", "type": "address" }, + { "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "internalType": "struct GameV1Interface.Prize[]", + "name": "prizes", + "type": "tuple[]" + } + ], + "internalType": "struct GameV1Interface.Initialization", + "name": "_initialization", + "type": "tuple" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "isAllPlayersSplitOk", + "outputs": [{ "internalType": "bool", "name": "isSplitOk", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isGameAllPrizesStandard", + "outputs": [{ "internalType": "bool", "name": "isStandard", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isGamePayable", + "outputs": [{ "internalType": "bool", "name": "isPayable", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isInProgress", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "maxPlayers", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "paused", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "playRound", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "playTimeRange", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "playerAddresses", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "", "type": "address" }], + "name": "players", + "outputs": [ + { "internalType": "address", "name": "playerAddress", "type": "address" }, + { "internalType": "uint256", "name": "roundRangeLowerLimit", "type": "uint256" }, + { "internalType": "uint256", "name": "roundRangeUpperLimit", "type": "uint256" }, + { "internalType": "bool", "name": "hasPlayedRound", "type": "bool" }, + { "internalType": "uint256", "name": "roundCount", "type": "uint256" }, + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "bool", "name": "hasLost", "type": "bool" }, + { "internalType": "bool", "name": "isSplitOk", "type": "bool" } + ], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "registerForGame", "outputs": [], "stateMutability": "payable", "type": "function" }, + { + "inputs": [], + "name": "registrationAmount", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "roundId", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_creatorFee", "type": "uint256" }], + "name": "setCreatorFee", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_cronUpkeep", "type": "address" }], + "name": "setCronUpkeep", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "string", "name": "_encodedCron", "type": "string" }], + "name": "setEncodedCron", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_maxPlayers", "type": "uint256" }], + "name": "setMaxPlayers", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "bytes32", "name": "_name", "type": "bytes32" }], + "name": "setName", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_treasuryFee", "type": "uint256" }], + "name": "setTreasuryFee", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "inputs": [], "name": "startGame", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "address", "name": "_adminAddress", "type": "address" }], + "name": "transferAdminOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_creator", "type": "address" }], + "name": "transferCreatorOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_factory", "type": "address" }], + "name": "transferFactoryOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "treasuryAmount", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "treasuryFee", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "triggerDailyCheckpoint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "version", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "voteToSplitPot", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "address", "name": "_receiver", "type": "address" }], + "name": "withdrawFunds", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "stateMutability": "payable", "type": "receive" } + ], + "date": "2022-11-27T16:25:12.340Z", + "olds": [] + }, + "CronExternal": { + "address": "0xb37EEC7c8a7312687777e4E61c4D2C12e2Fe0DD2", + "libraries": {}, + "transactionHash": "0x48e281132d77caeb76cf8fe7d7650daca12ef201e5422c33a4d65d4b485b8989", + "abi": [ + { + "inputs": [ + { "internalType": "string", "name": "field", "type": "string" }, + { "internalType": "string", "name": "reason", "type": "string" } + ], + "name": "InvalidField", + "type": "error" + }, + { + "inputs": [{ "internalType": "string", "name": "reason", "type": "string" }], + "name": "InvalidSpec", + "type": "error" + }, + { "inputs": [], "name": "ListTooLarge", "type": "error" }, + { "inputs": [], "name": "UnknownFieldType", "type": "error" }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "spec", + "type": "tuple" + } + ], + "name": "lastTick", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "spec", + "type": "tuple" + }, + { "internalType": "uint256", "name": "timestamp", "type": "uint256" } + ], + "name": "matches", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "spec", + "type": "tuple" + } + ], + "name": "nextTick", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "spec", + "type": "tuple" + } + ], + "name": "toCronString", + "outputs": [{ "internalType": "string", "name": "", "type": "string" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [{ "internalType": "string", "name": "cronString", "type": "string" }], + "name": "toEncodedSpec", + "outputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [{ "internalType": "string", "name": "cronString", "type": "string" }], + "name": "toSpec", + "outputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "date": "2022-11-27T16:25:12.345Z", + "olds": [] + }, + "CronUpkeep": { + "address": "0x45aa5aec20F3019A707D0EFb1C6282c4F0Aea44e", + "libraries": { "Cron": "0xb37EEC7c8a7312687777e4E61c4D2C12e2Fe0DD2" }, + "transactionHash": "0xcb221230765e4bdec37d8c0aa22824638d47f582b9949c3bd88802aaf069ce83", + "abi": [ + { + "inputs": [ + { "internalType": "address", "name": "owner", "type": "address" }, + { "internalType": "uint256", "name": "maxJobs", "type": "uint256" }, + { "internalType": "bytes", "name": "firstJob", "type": "bytes" } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "string", "name": "reason", "type": "string" } + ], + "name": "CallFailed", + "type": "error" + }, + { + "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], + "name": "CronJobIDNotFound", + "type": "error" + }, + { "inputs": [], "name": "DontNeedPerformUpkeep", "type": "error" }, + { "inputs": [], "name": "ExceedsMaxJobs", "type": "error" }, + { "inputs": [], "name": "InvalidHandler", "type": "error" }, + { "inputs": [], "name": "OnlySimulatedBackend", "type": "error" }, + { "inputs": [], "name": "TickDoesntMatchSpec", "type": "error" }, + { "inputs": [], "name": "TickInFuture", "type": "error" }, + { "inputs": [], "name": "TickTooOld", "type": "error" }, + { "inputs": [], "name": "UnknownFieldType", "type": "error" }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "target", "type": "address" }, + { "indexed": false, "internalType": "bytes", "name": "handler", "type": "bytes" } + ], + "name": "CronJobCreated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" }], + "name": "CronJobDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "timestamp", "type": "uint256" } + ], + "name": "CronJobExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "target", "type": "address" }, + { "indexed": false, "internalType": "bytes", "name": "handler", "type": "bytes" } + ], + "name": "CronJobUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "target", "type": "address" }], + "name": "DelegatorAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "target", "type": "address" }], + "name": "DelegatorRemoved", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "to", "type": "address" } + ], + "name": "OwnershipTransferRequested", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "to", "type": "address" } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Paused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Unpaused", + "type": "event" + }, + { "inputs": [], "name": "acceptOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "address", "name": "delegator", "type": "address" }], + "name": "addDelegator", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }], + "name": "checkUpkeep", + "outputs": [ + { "internalType": "bool", "name": "", "type": "bool" }, + { "internalType": "bytes", "name": "", "type": "bytes" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "handler", "type": "bytes" }, + { "internalType": "bytes", "name": "encodedCronSpec", "type": "bytes" } + ], + "name": "createCronJobFromEncodedSpec", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], + "name": "deleteCronJob", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getActiveCronJobIDs", + "outputs": [{ "internalType": "uint256[]", "name": "", "type": "uint256[]" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], + "name": "getCronJob", + "outputs": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "handler", "type": "bytes" }, + { "internalType": "string", "name": "cronString", "type": "string" }, + { "internalType": "uint256", "name": "nextTick", "type": "uint256" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getDelegators", + "outputs": [{ "internalType": "address[]", "name": "", "type": "address[]" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getNextCronJobIDs", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "paused", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "bytes", "name": "performData", "type": "bytes" }], + "name": "performUpkeep", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "delegator", "type": "address" }], + "name": "removeDelegator", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "s_maxJobs", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "to", "type": "address" }], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "address", "name": "newTarget", "type": "address" }, + { "internalType": "bytes", "name": "newHandler", "type": "bytes" }, + { "internalType": "bytes", "name": "newEncodedCronSpec", "type": "bytes" } + ], + "name": "updateCronJob", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "date": "2022-11-27T16:25:12.349Z", + "olds": [] + }, + "MultiCall3": { + "address": "0xD960c6f4D7800daFd4508FAE9bD82b9d15CC4608", + "libraries": {}, + "transactionHash": "0x6a019768739fd1cb4d1a1cd9417914913f1d6284c99559f37034171803a67c8e", + "abi": [ + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "aggregate", + "outputs": [ + { "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, + { "internalType": "bytes[]", "name": "returnData", "type": "bytes[]" } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bool", "name": "allowFailure", "type": "bool" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call3[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "aggregate3", + "outputs": [ + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bool", "name": "allowFailure", "type": "bool" }, + { "internalType": "uint256", "name": "value", "type": "uint256" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call3Value[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "aggregate3Value", + "outputs": [ + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "blockAndAggregate", + "outputs": [ + { "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, + { "internalType": "bytes32", "name": "blockHash", "type": "bytes32" }, + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "getBasefee", + "outputs": [{ "internalType": "uint256", "name": "basefee", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "blockNumber", "type": "uint256" }], + "name": "getBlockHash", + "outputs": [{ "internalType": "bytes32", "name": "blockHash", "type": "bytes32" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getBlockNumber", + "outputs": [{ "internalType": "uint256", "name": "blockNumber", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getChainId", + "outputs": [{ "internalType": "uint256", "name": "chainid", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getCurrentBlockCoinbase", + "outputs": [{ "internalType": "address", "name": "coinbase", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getCurrentBlockDifficulty", + "outputs": [{ "internalType": "uint256", "name": "difficulty", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getCurrentBlockGasLimit", + "outputs": [{ "internalType": "uint256", "name": "gaslimit", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getCurrentBlockTimestamp", + "outputs": [{ "internalType": "uint256", "name": "timestamp", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "addr", "type": "address" }], + "name": "getEthBalance", + "outputs": [{ "internalType": "uint256", "name": "balance", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getLastBlockHash", + "outputs": [{ "internalType": "bytes32", "name": "blockHash", "type": "bytes32" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "bool", "name": "requireSuccess", "type": "bool" }, + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "tryAggregate", + "outputs": [ + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "bool", "name": "requireSuccess", "type": "bool" }, + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "tryBlockAndAggregate", + "outputs": [ + { "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, + { "internalType": "bytes32", "name": "blockHash", "type": "bytes32" }, + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + } + ], + "date": "2022-11-27T16:25:12.353Z", + "olds": [] + } + }, + "97": { + "GameFactory": { + "address": "0x5B4aCc9eCE43900f0edC4C222109cBdE7d374858", + "libraries": {}, + "transactionHash": "0x177bb144229962f1b6c7da0e344c2d0f14274c8fa72a986708aba74e254f0bbf", + "abi": [ + { + "inputs": [ + { "internalType": "address", "name": "_game", "type": "address" }, + { "internalType": "address", "name": "_cronUpkeep", "type": "address" }, + { "internalType": "uint256", "name": "_gameCreationAmount", "type": "uint256" }, + { "internalType": "uint256[]", "name": "_authorizedAmounts", "type": "uint256[]" } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "cronUpkeep", "type": "address" }], + "name": "CronUpkeepUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "receiver", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "FailedTransfer", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "nextId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "gameAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "implementationVersion", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "creatorAddress", "type": "address" } + ], + "name": "GameCreated", + "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" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Paused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "sender", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "Received", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Unpaused", + "type": "event" + }, + { "stateMutability": "payable", "type": "fallback" }, + { + "inputs": [{ "internalType": "uint256[]", "name": "_authorizedAmounts", "type": "uint256[]" }], + "name": "addAuthorizedAmounts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "authorizedAmounts", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "bytes32", "name": "_name", "type": "bytes32" }, + { "internalType": "uint256", "name": "_maxPlayers", "type": "uint256" }, + { "internalType": "uint256", "name": "_playTimeRange", "type": "uint256" }, + { "internalType": "uint256", "name": "_registrationAmount", "type": "uint256" }, + { "internalType": "uint256", "name": "_treasuryFee", "type": "uint256" }, + { "internalType": "uint256", "name": "_creatorFee", "type": "uint256" }, + { "internalType": "string", "name": "_encodedCron", "type": "string" }, + { + "components": [ + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "internalType": "address", "name": "contractAddress", "type": "address" }, + { "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "internalType": "struct GameV1Interface.Prize[]", + "name": "_prizes", + "type": "tuple[]" + } + ], + "name": "createNewGame", + "outputs": [{ "internalType": "address", "name": "game", "type": "address" }], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "cronUpkeep", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "deployedGames", + "outputs": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "uint256", "name": "versionId", "type": "uint256" }, + { "internalType": "address", "name": "creator", "type": "address" }, + { "internalType": "address", "name": "deployedAddress", "type": "address" }, + { "internalType": "uint256", "name": "gameCreationAmount", "type": "uint256" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "gameCreationAmount", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "games", + "outputs": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "address", "name": "deployedAddress", "type": "address" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_authorizedAmount", "type": "uint256" }], + "name": "getAuthorizedAmount", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "bool", "name": "isUsed", "type": "bool" } + ], + "internalType": "struct GameFactory.AuthorizedAmount", + "name": "gameAuthorisedAmount", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAuthorizedAmounts", + "outputs": [{ "internalType": "uint256[]", "name": "gameAuthorisedAmounts", "type": "uint256[]" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getDeployedGames", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "uint256", "name": "versionId", "type": "uint256" }, + { "internalType": "address", "name": "creator", "type": "address" }, + { "internalType": "address", "name": "deployedAddress", "type": "address" }, + { "internalType": "uint256", "name": "gameCreationAmount", "type": "uint256" } + ], + "internalType": "struct GameFactory.Game[]", + "name": "allGames", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "latestVersionId", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "nextId", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "pauseAllGamesAndFactory", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "paused", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "resumeAllGamesAndFactory", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_game", "type": "address" }], + "name": "setNewGameV1", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_adminAddress", "type": "address" }], + "name": "transferAdminOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "newOwner", "type": "address" }], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "address", "name": "_cronUpkeep", "type": "address" }], + "name": "updateCronUpkeep", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "usedAuthorizedAmounts", + "outputs": [ + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "bool", "name": "isUsed", "type": "bool" } + ], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "withdrawFunds", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { "stateMutability": "payable", "type": "receive" } + ], + "date": "2022-11-27T15:59:24.095Z", + "olds": [] + }, + "GameV1": { + "address": "0x5fAC8090B45e9948fb1B8E37d2C9EE95a896c4D1", + "libraries": { "Cron": "0x9ccB826aD25Db07D8b86288D7A0ad02dea2c1acC" }, + "transactionHash": "0x101948b12290d19d9d7128e24c65ce80e148007c1b1e75c02937d3008066a0df", + "abi": [ + { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "oldAdmin", "type": "address" }, + { "indexed": false, "internalType": "address", "name": "newAdmin", "type": "address" } + ], + "name": "AdminOwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], + "name": "CreatorFeeClaimed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "oldCreator", "type": "address" }, + { "indexed": false, "internalType": "address", "name": "newCreator", "type": "address" } + ], + "name": "CreatorOwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "jobId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "cronUpkeep", "type": "address" } + ], + "name": "CronUpkeepUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "jobId", "type": "uint256" }, + { "indexed": false, "internalType": "string", "name": "encodedCron", "type": "string" } + ], + "name": "EncodedCronUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "oldFactory", "type": "address" }, + { "indexed": false, "internalType": "address", "name": "newFactory", "type": "address" } + ], + "name": "FactoryOwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "receiver", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "FailedTransfer", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "roundCount", "type": "uint256" } + ], + "name": "GameLost", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "claimer", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "amountClaimed", "type": "uint256" } + ], + "name": "GamePrizeClaimed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "remainingPlayersCount", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "amountWon", "type": "uint256" } + ], + "name": "GameSplitted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "winnersCounter", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amountWon", "type": "uint256" } + ], + "name": "GameWon", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Paused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" }], + "name": "PlayedRound", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "position", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "contractAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "name": "PrizeAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "sender", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "Received", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "playersCount", "type": "uint256" } + ], + "name": "RegisteredForGame", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "timelock", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "resetId", "type": "uint256" } + ], + "name": "ResetGame", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "timelock", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "playersCount", "type": "uint256" } + ], + "name": "StartedGame", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], + "name": "TreasuryFeeClaimed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], + "name": "TreasuryFeeClaimedByFactory", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "emmiter", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "timestamp", "type": "uint256" } + ], + "name": "TriggeredDailyCheckpoint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Unpaused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" } + ], + "name": "VoteToSplitPot", + "type": "event" + }, + { "stateMutability": "payable", "type": "fallback" }, + { + "inputs": [], + "name": "MAX_CREATOR_FEE", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "MAX_TREASURY_FEE", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "internalType": "address", "name": "contractAddress", "type": "address" }, + { "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "internalType": "struct GameV1Interface.Prize[]", + "name": "_prizes", + "type": "tuple[]" + } + ], + "name": "addPrizes", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { "inputs": [], "name": "claimCreatorFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], + "name": "claimPrize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "claimTreasuryFee", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "creator", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "creatorAmount", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "creatorFee", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "cronUpkeep", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "encodedCron", + "outputs": [{ "internalType": "string", "name": "", "type": "string" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "factory", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getGameData", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "internalType": "bytes32", "name": "name", "type": "bytes32" }, + { "internalType": "uint256", "name": "playerAddressesCount", "type": "uint256" }, + { "internalType": "uint256", "name": "remainingPlayersCount", "type": "uint256" }, + { "internalType": "uint256", "name": "maxPlayers", "type": "uint256" }, + { "internalType": "uint256", "name": "registrationAmount", "type": "uint256" }, + { "internalType": "uint256", "name": "playTimeRange", "type": "uint256" }, + { "internalType": "uint256", "name": "treasuryFee", "type": "uint256" }, + { "internalType": "uint256", "name": "creatorFee", "type": "uint256" }, + { "internalType": "bool", "name": "isPaused", "type": "bool" }, + { "internalType": "bool", "name": "isInProgress", "type": "bool" }, + { "internalType": "address", "name": "creator", "type": "address" }, + { "internalType": "address", "name": "admin", "type": "address" }, + { "internalType": "string", "name": "encodedCron", "type": "string" } + ], + "internalType": "struct GameV1Interface.GameData", + "name": "gameData", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_player", "type": "address" }], + "name": "getPlayer", + "outputs": [ + { + "components": [ + { "internalType": "address", "name": "playerAddress", "type": "address" }, + { "internalType": "uint256", "name": "roundRangeLowerLimit", "type": "uint256" }, + { "internalType": "uint256", "name": "roundRangeUpperLimit", "type": "uint256" }, + { "internalType": "bool", "name": "hasPlayedRound", "type": "bool" }, + { "internalType": "uint256", "name": "roundCount", "type": "uint256" }, + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "bool", "name": "hasLost", "type": "bool" }, + { "internalType": "bool", "name": "isSplitOk", "type": "bool" } + ], + "internalType": "struct GameV1Interface.Player", + "name": "gamePlayer", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getPlayerAddresses", + "outputs": [{ "internalType": "address[]", "name": "gamePlayerAddresses", "type": "address[]" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], + "name": "getPrizes", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "internalType": "address", "name": "contractAddress", "type": "address" }, + { "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "internalType": "struct GameV1Interface.Prize[]", + "name": "gamePrizes", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getRemainingPlayersCount", + "outputs": [{ "internalType": "uint256", "name": "remainingPlayersCount", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], + "name": "getWinners", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "internalType": "address", "name": "playerAddress", "type": "address" }, + { "internalType": "uint256", "name": "amountWon", "type": "uint256" }, + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "bool", "name": "prizeClaimed", "type": "bool" } + ], + "internalType": "struct GameV1Interface.Winner[]", + "name": "gameWinners", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "id", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "owner", "type": "address" }, + { "internalType": "address", "name": "creator", "type": "address" }, + { "internalType": "address", "name": "cronUpkeep", "type": "address" }, + { "internalType": "bytes32", "name": "name", "type": "bytes32" }, + { "internalType": "uint256", "name": "version", "type": "uint256" }, + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "uint256", "name": "playTimeRange", "type": "uint256" }, + { "internalType": "uint256", "name": "maxPlayers", "type": "uint256" }, + { "internalType": "uint256", "name": "registrationAmount", "type": "uint256" }, + { "internalType": "uint256", "name": "treasuryFee", "type": "uint256" }, + { "internalType": "uint256", "name": "creatorFee", "type": "uint256" }, + { "internalType": "string", "name": "encodedCron", "type": "string" }, + { + "components": [ + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "internalType": "address", "name": "contractAddress", "type": "address" }, + { "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "internalType": "struct GameV1Interface.Prize[]", + "name": "prizes", + "type": "tuple[]" + } + ], + "internalType": "struct GameV1Interface.Initialization", + "name": "_initialization", + "type": "tuple" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "isAllPlayersSplitOk", + "outputs": [{ "internalType": "bool", "name": "isSplitOk", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isGameAllPrizesStandard", + "outputs": [{ "internalType": "bool", "name": "isStandard", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isGamePayable", + "outputs": [{ "internalType": "bool", "name": "isPayable", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isInProgress", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "maxPlayers", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "paused", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "playRound", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "playTimeRange", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "playerAddresses", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "", "type": "address" }], + "name": "players", + "outputs": [ + { "internalType": "address", "name": "playerAddress", "type": "address" }, + { "internalType": "uint256", "name": "roundRangeLowerLimit", "type": "uint256" }, + { "internalType": "uint256", "name": "roundRangeUpperLimit", "type": "uint256" }, + { "internalType": "bool", "name": "hasPlayedRound", "type": "bool" }, + { "internalType": "uint256", "name": "roundCount", "type": "uint256" }, + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "bool", "name": "hasLost", "type": "bool" }, + { "internalType": "bool", "name": "isSplitOk", "type": "bool" } + ], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "registerForGame", "outputs": [], "stateMutability": "payable", "type": "function" }, + { + "inputs": [], + "name": "registrationAmount", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "roundId", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_creatorFee", "type": "uint256" }], + "name": "setCreatorFee", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_cronUpkeep", "type": "address" }], + "name": "setCronUpkeep", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "string", "name": "_encodedCron", "type": "string" }], + "name": "setEncodedCron", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_maxPlayers", "type": "uint256" }], + "name": "setMaxPlayers", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "bytes32", "name": "_name", "type": "bytes32" }], + "name": "setName", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_treasuryFee", "type": "uint256" }], + "name": "setTreasuryFee", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "inputs": [], "name": "startGame", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "address", "name": "_adminAddress", "type": "address" }], + "name": "transferAdminOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_creator", "type": "address" }], + "name": "transferCreatorOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_factory", "type": "address" }], + "name": "transferFactoryOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "treasuryAmount", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "treasuryFee", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "triggerDailyCheckpoint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "version", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "voteToSplitPot", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "address", "name": "_receiver", "type": "address" }], + "name": "withdrawFunds", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "stateMutability": "payable", "type": "receive" } + ], + "date": "2022-11-27T15:59:24.097Z", + "olds": [] + }, + "CronExternal": { + "address": "0x9ccB826aD25Db07D8b86288D7A0ad02dea2c1acC", + "libraries": {}, + "transactionHash": "0xd0b29d5bb6059714b6142a1f23abd6ae5628c3f7155e116ac2f0d7999ac70a56", + "abi": [ + { + "inputs": [ + { "internalType": "string", "name": "field", "type": "string" }, + { "internalType": "string", "name": "reason", "type": "string" } + ], + "name": "InvalidField", + "type": "error" + }, + { + "inputs": [{ "internalType": "string", "name": "reason", "type": "string" }], + "name": "InvalidSpec", + "type": "error" + }, + { "inputs": [], "name": "ListTooLarge", "type": "error" }, + { "inputs": [], "name": "UnknownFieldType", "type": "error" }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "spec", + "type": "tuple" + } + ], + "name": "lastTick", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "spec", + "type": "tuple" + }, + { "internalType": "uint256", "name": "timestamp", "type": "uint256" } + ], + "name": "matches", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "spec", + "type": "tuple" + } + ], + "name": "nextTick", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "spec", + "type": "tuple" + } + ], + "name": "toCronString", + "outputs": [{ "internalType": "string", "name": "", "type": "string" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [{ "internalType": "string", "name": "cronString", "type": "string" }], + "name": "toEncodedSpec", + "outputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [{ "internalType": "string", "name": "cronString", "type": "string" }], + "name": "toSpec", + "outputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "date": "2022-11-27T15:59:24.100Z", + "olds": [] + }, + "CronUpkeep": { + "address": "0xb49E61eA8A132bb507d9AC60ABeBaF8D5e8a500D", + "libraries": { "Cron": "0x9ccB826aD25Db07D8b86288D7A0ad02dea2c1acC" }, + "transactionHash": "0x65cfd492b572b8fba7e6dd7e94e67f5d16c2957d5fb2d721c6d12ffcbc13041b", + "abi": [ + { + "inputs": [ + { "internalType": "address", "name": "owner", "type": "address" }, + { "internalType": "uint256", "name": "maxJobs", "type": "uint256" }, + { "internalType": "bytes", "name": "firstJob", "type": "bytes" } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "string", "name": "reason", "type": "string" } + ], + "name": "CallFailed", + "type": "error" + }, + { + "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], + "name": "CronJobIDNotFound", + "type": "error" + }, + { "inputs": [], "name": "DontNeedPerformUpkeep", "type": "error" }, + { "inputs": [], "name": "ExceedsMaxJobs", "type": "error" }, + { "inputs": [], "name": "InvalidHandler", "type": "error" }, + { "inputs": [], "name": "OnlySimulatedBackend", "type": "error" }, + { "inputs": [], "name": "TickDoesntMatchSpec", "type": "error" }, + { "inputs": [], "name": "TickInFuture", "type": "error" }, + { "inputs": [], "name": "TickTooOld", "type": "error" }, + { "inputs": [], "name": "UnknownFieldType", "type": "error" }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "target", "type": "address" }, + { "indexed": false, "internalType": "bytes", "name": "handler", "type": "bytes" } + ], + "name": "CronJobCreated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" }], + "name": "CronJobDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "timestamp", "type": "uint256" } + ], + "name": "CronJobExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "target", "type": "address" }, + { "indexed": false, "internalType": "bytes", "name": "handler", "type": "bytes" } + ], + "name": "CronJobUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "target", "type": "address" }], + "name": "DelegatorAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "target", "type": "address" }], + "name": "DelegatorRemoved", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "to", "type": "address" } + ], + "name": "OwnershipTransferRequested", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "to", "type": "address" } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Paused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Unpaused", + "type": "event" + }, + { "inputs": [], "name": "acceptOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "address", "name": "delegator", "type": "address" }], + "name": "addDelegator", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }], + "name": "checkUpkeep", + "outputs": [ + { "internalType": "bool", "name": "", "type": "bool" }, + { "internalType": "bytes", "name": "", "type": "bytes" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "handler", "type": "bytes" }, + { "internalType": "bytes", "name": "encodedCronSpec", "type": "bytes" } + ], + "name": "createCronJobFromEncodedSpec", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], + "name": "deleteCronJob", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getActiveCronJobIDs", + "outputs": [{ "internalType": "uint256[]", "name": "", "type": "uint256[]" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], + "name": "getCronJob", + "outputs": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "handler", "type": "bytes" }, + { "internalType": "string", "name": "cronString", "type": "string" }, + { "internalType": "uint256", "name": "nextTick", "type": "uint256" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getDelegators", + "outputs": [{ "internalType": "address[]", "name": "", "type": "address[]" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getNextCronJobIDs", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "paused", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "bytes", "name": "performData", "type": "bytes" }], + "name": "performUpkeep", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "delegator", "type": "address" }], + "name": "removeDelegator", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "s_maxJobs", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "to", "type": "address" }], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "address", "name": "newTarget", "type": "address" }, + { "internalType": "bytes", "name": "newHandler", "type": "bytes" }, + { "internalType": "bytes", "name": "newEncodedCronSpec", "type": "bytes" } + ], + "name": "updateCronJob", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "date": "2022-11-27T15:59:24.102Z", + "olds": [] + }, + "MultiCall3": { + "address": "0x9e5eD465c11ec50DC07481b8c1B69Dee910f28C1", + "libraries": {}, + "transactionHash": "0x913a8fc62180fb0de5e280aaefd29824633e64b229f912e198f1d62dc33dcd12", + "abi": [ + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "aggregate", + "outputs": [ + { "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, + { "internalType": "bytes[]", "name": "returnData", "type": "bytes[]" } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bool", "name": "allowFailure", "type": "bool" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call3[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "aggregate3", + "outputs": [ + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bool", "name": "allowFailure", "type": "bool" }, + { "internalType": "uint256", "name": "value", "type": "uint256" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call3Value[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "aggregate3Value", + "outputs": [ + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "blockAndAggregate", + "outputs": [ + { "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, + { "internalType": "bytes32", "name": "blockHash", "type": "bytes32" }, + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "getBasefee", + "outputs": [{ "internalType": "uint256", "name": "basefee", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "blockNumber", "type": "uint256" }], + "name": "getBlockHash", + "outputs": [{ "internalType": "bytes32", "name": "blockHash", "type": "bytes32" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getBlockNumber", + "outputs": [{ "internalType": "uint256", "name": "blockNumber", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getChainId", + "outputs": [{ "internalType": "uint256", "name": "chainid", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getCurrentBlockCoinbase", + "outputs": [{ "internalType": "address", "name": "coinbase", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getCurrentBlockDifficulty", + "outputs": [{ "internalType": "uint256", "name": "difficulty", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getCurrentBlockGasLimit", + "outputs": [{ "internalType": "uint256", "name": "gaslimit", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getCurrentBlockTimestamp", + "outputs": [{ "internalType": "uint256", "name": "timestamp", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "addr", "type": "address" }], + "name": "getEthBalance", + "outputs": [{ "internalType": "uint256", "name": "balance", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getLastBlockHash", + "outputs": [{ "internalType": "bytes32", "name": "blockHash", "type": "bytes32" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "bool", "name": "requireSuccess", "type": "bool" }, + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "tryAggregate", + "outputs": [ + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "bool", "name": "requireSuccess", "type": "bool" }, + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "tryBlockAndAggregate", + "outputs": [ + { "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, + { "internalType": "bytes32", "name": "blockHash", "type": "bytes32" }, + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + } + ], + "date": "2022-11-27T15:59:24.104Z", + "olds": [] + } + }, + "31337": { + "GameFactory": { + "address": "0xa513E6E4b8f2a923D98304ec87F64353C4D5C853", + "libraries": {}, + "transactionHash": "0xec0f21f324844fb41831a35985e4e850fc347a275ce9105519f3a1f2b9348aab", + "abi": [ + { + "inputs": [ + { "internalType": "address", "name": "_game", "type": "address" }, + { "internalType": "address", "name": "_cronUpkeep", "type": "address" }, + { "internalType": "uint256", "name": "_gameCreationAmount", "type": "uint256" }, + { "internalType": "uint256[]", "name": "_authorizedAmounts", "type": "uint256[]" } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "cronUpkeep", "type": "address" }], + "name": "CronUpkeepUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "receiver", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "FailedTransfer", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "nextId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "gameAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "implementationVersion", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "creatorAddress", "type": "address" } + ], + "name": "GameCreated", + "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" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Paused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "sender", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "Received", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Unpaused", + "type": "event" + }, + { "stateMutability": "payable", "type": "fallback" }, + { + "inputs": [{ "internalType": "uint256[]", "name": "_authorizedAmounts", "type": "uint256[]" }], + "name": "addAuthorizedAmounts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "authorizedAmounts", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "bytes32", "name": "_name", "type": "bytes32" }, + { "internalType": "uint256", "name": "_maxPlayers", "type": "uint256" }, + { "internalType": "uint256", "name": "_playTimeRange", "type": "uint256" }, + { "internalType": "uint256", "name": "_registrationAmount", "type": "uint256" }, + { "internalType": "uint256", "name": "_treasuryFee", "type": "uint256" }, + { "internalType": "uint256", "name": "_creatorFee", "type": "uint256" }, + { "internalType": "string", "name": "_encodedCron", "type": "string" }, + { + "components": [ + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "internalType": "address", "name": "contractAddress", "type": "address" }, + { "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "internalType": "struct GameV1Interface.Prize[]", + "name": "_prizes", + "type": "tuple[]" + } + ], + "name": "createNewGame", + "outputs": [{ "internalType": "address", "name": "game", "type": "address" }], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "cronUpkeep", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "deployedGames", + "outputs": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "uint256", "name": "versionId", "type": "uint256" }, + { "internalType": "address", "name": "creator", "type": "address" }, + { "internalType": "address", "name": "deployedAddress", "type": "address" }, + { "internalType": "uint256", "name": "gameCreationAmount", "type": "uint256" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "gameCreationAmount", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "games", + "outputs": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "address", "name": "deployedAddress", "type": "address" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_authorizedAmount", "type": "uint256" }], + "name": "getAuthorizedAmount", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "bool", "name": "isUsed", "type": "bool" } + ], + "internalType": "struct GameFactory.AuthorizedAmount", + "name": "gameAuthorisedAmount", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAuthorizedAmounts", + "outputs": [{ "internalType": "uint256[]", "name": "gameAuthorisedAmounts", "type": "uint256[]" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getDeployedGames", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "uint256", "name": "versionId", "type": "uint256" }, + { "internalType": "address", "name": "creator", "type": "address" }, + { "internalType": "address", "name": "deployedAddress", "type": "address" }, + { "internalType": "uint256", "name": "gameCreationAmount", "type": "uint256" } + ], + "internalType": "struct GameFactory.Game[]", + "name": "allGames", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "latestVersionId", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "nextId", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "pauseAllGamesAndFactory", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "paused", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "resumeAllGamesAndFactory", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_game", "type": "address" }], + "name": "setNewGameV1", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_adminAddress", "type": "address" }], + "name": "transferAdminOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "newOwner", "type": "address" }], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "address", "name": "_cronUpkeep", "type": "address" }], + "name": "updateCronUpkeep", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "usedAuthorizedAmounts", + "outputs": [ + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "bool", "name": "isUsed", "type": "bool" } + ], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "withdrawFunds", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { "stateMutability": "payable", "type": "receive" } + ], + "date": "2022-11-27T21:30:22.156Z", + "olds": [] + }, + "GameV1": { + "address": "0x5FC8d32690cc91D4c39d9d3abcBD16989F875707", + "libraries": { "Cron": "0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0" }, + "transactionHash": "0x4375fd251f1f8fd21cd0e27240875fcac2258dc1700d80fa954bfb5e805ac84d", + "abi": [ + { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "oldAdmin", "type": "address" }, + { "indexed": false, "internalType": "address", "name": "newAdmin", "type": "address" } + ], + "name": "AdminOwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], + "name": "CreatorFeeClaimed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "oldCreator", "type": "address" }, + { "indexed": false, "internalType": "address", "name": "newCreator", "type": "address" } + ], + "name": "CreatorOwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "jobId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "cronUpkeep", "type": "address" } + ], + "name": "CronUpkeepUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "jobId", "type": "uint256" }, + { "indexed": false, "internalType": "string", "name": "encodedCron", "type": "string" } + ], + "name": "EncodedCronUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "oldFactory", "type": "address" }, + { "indexed": false, "internalType": "address", "name": "newFactory", "type": "address" } + ], + "name": "FactoryOwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "receiver", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "FailedTransfer", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "roundCount", "type": "uint256" } + ], + "name": "GameLost", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "claimer", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "amountClaimed", "type": "uint256" } + ], + "name": "GamePrizeClaimed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "remainingPlayersCount", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "amountWon", "type": "uint256" } + ], + "name": "GameSplitted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "winnersCounter", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amountWon", "type": "uint256" } + ], + "name": "GameWon", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Paused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" }], + "name": "PlayedRound", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "position", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "contractAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "name": "PrizeAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "sender", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "Received", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "playersCount", "type": "uint256" } + ], + "name": "RegisteredForGame", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "timelock", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "resetId", "type": "uint256" } + ], + "name": "ResetGame", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "timelock", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "playersCount", "type": "uint256" } + ], + "name": "StartedGame", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], + "name": "TreasuryFeeClaimed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], + "name": "TreasuryFeeClaimedByFactory", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "emmiter", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "timestamp", "type": "uint256" } + ], + "name": "TriggeredDailyCheckpoint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Unpaused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" } + ], + "name": "VoteToSplitPot", + "type": "event" + }, + { "stateMutability": "payable", "type": "fallback" }, + { + "inputs": [], + "name": "MAX_CREATOR_FEE", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "MAX_TREASURY_FEE", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "internalType": "address", "name": "contractAddress", "type": "address" }, + { "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "internalType": "struct GameV1Interface.Prize[]", + "name": "_prizes", + "type": "tuple[]" + } + ], + "name": "addPrizes", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { "inputs": [], "name": "claimCreatorFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], + "name": "claimPrize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "claimTreasuryFee", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "creator", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "creatorAmount", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "creatorFee", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "cronUpkeep", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "encodedCron", + "outputs": [{ "internalType": "string", "name": "", "type": "string" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "factory", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getGameData", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "uint256", "name": "versionId", "type": "uint256" }, + { "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "internalType": "bytes32", "name": "name", "type": "bytes32" }, + { "internalType": "uint256", "name": "playerAddressesCount", "type": "uint256" }, + { "internalType": "uint256", "name": "remainingPlayersCount", "type": "uint256" }, + { "internalType": "uint256", "name": "maxPlayers", "type": "uint256" }, + { "internalType": "uint256", "name": "registrationAmount", "type": "uint256" }, + { "internalType": "uint256", "name": "playTimeRange", "type": "uint256" }, + { "internalType": "uint256", "name": "treasuryFee", "type": "uint256" }, + { "internalType": "uint256", "name": "creatorFee", "type": "uint256" }, + { "internalType": "bool", "name": "isPaused", "type": "bool" }, + { "internalType": "bool", "name": "isInProgress", "type": "bool" }, + { "internalType": "address", "name": "creator", "type": "address" }, + { "internalType": "address", "name": "admin", "type": "address" }, + { "internalType": "string", "name": "encodedCron", "type": "string" } + ], + "internalType": "struct GameV1Interface.GameData", + "name": "gameData", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_player", "type": "address" }], + "name": "getPlayer", + "outputs": [ + { + "components": [ + { "internalType": "address", "name": "playerAddress", "type": "address" }, + { "internalType": "uint256", "name": "roundRangeLowerLimit", "type": "uint256" }, + { "internalType": "uint256", "name": "roundRangeUpperLimit", "type": "uint256" }, + { "internalType": "bool", "name": "hasPlayedRound", "type": "bool" }, + { "internalType": "uint256", "name": "roundCount", "type": "uint256" }, + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "bool", "name": "hasLost", "type": "bool" }, + { "internalType": "bool", "name": "isSplitOk", "type": "bool" } + ], + "internalType": "struct GameV1Interface.Player", + "name": "gamePlayer", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getPlayerAddresses", + "outputs": [{ "internalType": "address[]", "name": "gamePlayerAddresses", "type": "address[]" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], + "name": "getPrizes", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "internalType": "address", "name": "contractAddress", "type": "address" }, + { "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "internalType": "struct GameV1Interface.Prize[]", + "name": "gamePrizes", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getRemainingPlayersCount", + "outputs": [{ "internalType": "uint256", "name": "remainingPlayersCount", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], + "name": "getWinners", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "internalType": "address", "name": "playerAddress", "type": "address" }, + { "internalType": "uint256", "name": "amountWon", "type": "uint256" }, + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "bool", "name": "prizeClaimed", "type": "bool" } + ], + "internalType": "struct GameV1Interface.Winner[]", + "name": "gameWinners", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "id", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "owner", "type": "address" }, + { "internalType": "address", "name": "creator", "type": "address" }, + { "internalType": "address", "name": "cronUpkeep", "type": "address" }, + { "internalType": "bytes32", "name": "name", "type": "bytes32" }, + { "internalType": "uint256", "name": "version", "type": "uint256" }, + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "uint256", "name": "playTimeRange", "type": "uint256" }, + { "internalType": "uint256", "name": "maxPlayers", "type": "uint256" }, + { "internalType": "uint256", "name": "registrationAmount", "type": "uint256" }, + { "internalType": "uint256", "name": "treasuryFee", "type": "uint256" }, + { "internalType": "uint256", "name": "creatorFee", "type": "uint256" }, + { "internalType": "string", "name": "encodedCron", "type": "string" }, + { + "components": [ + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "internalType": "address", "name": "contractAddress", "type": "address" }, + { "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "internalType": "struct GameV1Interface.Prize[]", + "name": "prizes", + "type": "tuple[]" + } + ], + "internalType": "struct GameV1Interface.Initialization", + "name": "_initialization", + "type": "tuple" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "isAllPlayersSplitOk", + "outputs": [{ "internalType": "bool", "name": "isSplitOk", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isGameAllPrizesStandard", + "outputs": [{ "internalType": "bool", "name": "isStandard", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isGamePayable", + "outputs": [{ "internalType": "bool", "name": "isPayable", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isInProgress", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "maxPlayers", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "paused", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "playRound", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "playTimeRange", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "playerAddresses", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "", "type": "address" }], + "name": "players", + "outputs": [ + { "internalType": "address", "name": "playerAddress", "type": "address" }, + { "internalType": "uint256", "name": "roundRangeLowerLimit", "type": "uint256" }, + { "internalType": "uint256", "name": "roundRangeUpperLimit", "type": "uint256" }, + { "internalType": "bool", "name": "hasPlayedRound", "type": "bool" }, + { "internalType": "uint256", "name": "roundCount", "type": "uint256" }, + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "bool", "name": "hasLost", "type": "bool" }, + { "internalType": "bool", "name": "isSplitOk", "type": "bool" } + ], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "registerForGame", "outputs": [], "stateMutability": "payable", "type": "function" }, + { + "inputs": [], + "name": "registrationAmount", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "roundId", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_creatorFee", "type": "uint256" }], + "name": "setCreatorFee", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_cronUpkeep", "type": "address" }], + "name": "setCronUpkeep", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "string", "name": "_encodedCron", "type": "string" }], + "name": "setEncodedCron", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_maxPlayers", "type": "uint256" }], + "name": "setMaxPlayers", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "bytes32", "name": "_name", "type": "bytes32" }], + "name": "setName", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_treasuryFee", "type": "uint256" }], + "name": "setTreasuryFee", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "inputs": [], "name": "startGame", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "address", "name": "_adminAddress", "type": "address" }], + "name": "transferAdminOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_creator", "type": "address" }], + "name": "transferCreatorOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_factory", "type": "address" }], + "name": "transferFactoryOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "treasuryAmount", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "treasuryFee", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "triggerDailyCheckpoint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "version", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "voteToSplitPot", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "address", "name": "_receiver", "type": "address" }], + "name": "withdrawFunds", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "stateMutability": "payable", "type": "receive" } + ], + "date": "2022-11-27T21:30:22.158Z", + "olds": [] + }, + "CronExternal": { + "address": "0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0", + "libraries": {}, + "transactionHash": "0xc6209c5c013870559ba0f768cfc96e6abe0a79b9467a8c988baad6ce74a9c61c", + "abi": [ + { + "inputs": [ + { "internalType": "string", "name": "field", "type": "string" }, + { "internalType": "string", "name": "reason", "type": "string" } + ], + "name": "InvalidField", + "type": "error" + }, + { + "inputs": [{ "internalType": "string", "name": "reason", "type": "string" }], + "name": "InvalidSpec", + "type": "error" + }, + { "inputs": [], "name": "ListTooLarge", "type": "error" }, + { "inputs": [], "name": "UnknownFieldType", "type": "error" }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "spec", + "type": "tuple" + } + ], + "name": "lastTick", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "spec", + "type": "tuple" + }, + { "internalType": "uint256", "name": "timestamp", "type": "uint256" } + ], + "name": "matches", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "spec", + "type": "tuple" + } + ], + "name": "nextTick", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "spec", + "type": "tuple" + } + ], + "name": "toCronString", + "outputs": [{ "internalType": "string", "name": "", "type": "string" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [{ "internalType": "string", "name": "cronString", "type": "string" }], + "name": "toEncodedSpec", + "outputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [{ "internalType": "string", "name": "cronString", "type": "string" }], + "name": "toSpec", + "outputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "date": "2022-11-27T21:30:22.162Z", + "olds": [] + }, + "CronUpkeep": { + "address": "0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9", + "libraries": { "Cron": "0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0" }, + "transactionHash": "0x435b49ee8140b9a49a5c7970baef3c86ddac32640a0e6a4d504376d3fd88e8f4", + "abi": [ + { + "inputs": [ + { "internalType": "address", "name": "owner", "type": "address" }, + { "internalType": "uint256", "name": "maxJobs", "type": "uint256" }, + { "internalType": "bytes", "name": "firstJob", "type": "bytes" } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "string", "name": "reason", "type": "string" } + ], + "name": "CallFailed", + "type": "error" + }, + { + "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], + "name": "CronJobIDNotFound", + "type": "error" + }, + { "inputs": [], "name": "DontNeedPerformUpkeep", "type": "error" }, + { "inputs": [], "name": "ExceedsMaxJobs", "type": "error" }, + { "inputs": [], "name": "InvalidHandler", "type": "error" }, + { "inputs": [], "name": "OnlySimulatedBackend", "type": "error" }, + { "inputs": [], "name": "TickDoesntMatchSpec", "type": "error" }, + { "inputs": [], "name": "TickInFuture", "type": "error" }, + { "inputs": [], "name": "TickTooOld", "type": "error" }, + { "inputs": [], "name": "UnknownFieldType", "type": "error" }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "target", "type": "address" }, + { "indexed": false, "internalType": "bytes", "name": "handler", "type": "bytes" } + ], + "name": "CronJobCreated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" }], + "name": "CronJobDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "timestamp", "type": "uint256" } + ], + "name": "CronJobExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "target", "type": "address" }, + { "indexed": false, "internalType": "bytes", "name": "handler", "type": "bytes" } + ], + "name": "CronJobUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "target", "type": "address" }], + "name": "DelegatorAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "target", "type": "address" }], + "name": "DelegatorRemoved", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "to", "type": "address" } + ], + "name": "OwnershipTransferRequested", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "to", "type": "address" } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Paused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Unpaused", + "type": "event" + }, + { "inputs": [], "name": "acceptOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "address", "name": "delegator", "type": "address" }], + "name": "addDelegator", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }], + "name": "checkUpkeep", + "outputs": [ + { "internalType": "bool", "name": "", "type": "bool" }, + { "internalType": "bytes", "name": "", "type": "bytes" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "handler", "type": "bytes" }, + { "internalType": "bytes", "name": "encodedCronSpec", "type": "bytes" } + ], + "name": "createCronJobFromEncodedSpec", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], + "name": "deleteCronJob", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getActiveCronJobIDs", + "outputs": [{ "internalType": "uint256[]", "name": "", "type": "uint256[]" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], + "name": "getCronJob", + "outputs": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "handler", "type": "bytes" }, + { "internalType": "string", "name": "cronString", "type": "string" }, + { "internalType": "uint256", "name": "nextTick", "type": "uint256" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getDelegators", + "outputs": [{ "internalType": "address[]", "name": "", "type": "address[]" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getNextCronJobIDs", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "paused", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "bytes", "name": "performData", "type": "bytes" }], + "name": "performUpkeep", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "delegator", "type": "address" }], + "name": "removeDelegator", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "s_maxJobs", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "to", "type": "address" }], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "address", "name": "newTarget", "type": "address" }, + { "internalType": "bytes", "name": "newHandler", "type": "bytes" }, + { "internalType": "bytes", "name": "newEncodedCronSpec", "type": "bytes" } + ], + "name": "updateCronJob", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "date": "2022-11-27T21:30:22.164Z", + "olds": [] + }, + "MultiCall3": { + "address": "0x5FbDB2315678afecb367f032d93F642f64180aa3", + "libraries": {}, + "transactionHash": "0x948c6050467e45aeb451cbd990561452e3d80efc17bfd1a565f1083f4cef1c3b", + "abi": [ + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "aggregate", + "outputs": [ + { "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, + { "internalType": "bytes[]", "name": "returnData", "type": "bytes[]" } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bool", "name": "allowFailure", "type": "bool" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call3[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "aggregate3", + "outputs": [ + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bool", "name": "allowFailure", "type": "bool" }, + { "internalType": "uint256", "name": "value", "type": "uint256" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call3Value[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "aggregate3Value", + "outputs": [ + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "blockAndAggregate", + "outputs": [ + { "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, + { "internalType": "bytes32", "name": "blockHash", "type": "bytes32" }, + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "getBasefee", + "outputs": [{ "internalType": "uint256", "name": "basefee", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "blockNumber", "type": "uint256" }], + "name": "getBlockHash", + "outputs": [{ "internalType": "bytes32", "name": "blockHash", "type": "bytes32" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getBlockNumber", + "outputs": [{ "internalType": "uint256", "name": "blockNumber", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getChainId", + "outputs": [{ "internalType": "uint256", "name": "chainid", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getCurrentBlockCoinbase", + "outputs": [{ "internalType": "address", "name": "coinbase", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getCurrentBlockDifficulty", + "outputs": [{ "internalType": "uint256", "name": "difficulty", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getCurrentBlockGasLimit", + "outputs": [{ "internalType": "uint256", "name": "gaslimit", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getCurrentBlockTimestamp", + "outputs": [{ "internalType": "uint256", "name": "timestamp", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "addr", "type": "address" }], + "name": "getEthBalance", + "outputs": [{ "internalType": "uint256", "name": "balance", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getLastBlockHash", + "outputs": [{ "internalType": "bytes32", "name": "blockHash", "type": "bytes32" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "bool", "name": "requireSuccess", "type": "bool" }, + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "tryAggregate", + "outputs": [ + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "bool", "name": "requireSuccess", "type": "bool" }, + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "tryBlockAndAggregate", + "outputs": [ + { "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, + { "internalType": "bytes32", "name": "blockHash", "type": "bytes32" }, + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + } + ], + "date": "2022-11-27T21:30:22.166Z", + "olds": [] + } + }, + "80001": { + "GameFactory": { + "address": "0xEC767280c8b789ef260E8e7D63Ee85d023C5F9ea", + "libraries": {}, + "transactionHash": "0xa38d62ed0097c94087d40d9a8b707e0e980f86afc7ea4888ee73b74186aeefc7", + "abi": [ + { + "inputs": [ + { "internalType": "address", "name": "_game", "type": "address" }, + { "internalType": "address", "name": "_cronUpkeep", "type": "address" }, + { "internalType": "uint256", "name": "_gameCreationAmount", "type": "uint256" }, + { "internalType": "uint256[]", "name": "_authorizedAmounts", "type": "uint256[]" } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "cronUpkeep", "type": "address" }], + "name": "CronUpkeepUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "receiver", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "FailedTransfer", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "nextId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "gameAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "implementationVersion", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "creatorAddress", "type": "address" } + ], + "name": "GameCreated", + "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" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Paused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "sender", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "Received", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Unpaused", + "type": "event" + }, + { "stateMutability": "payable", "type": "fallback" }, + { + "inputs": [{ "internalType": "uint256[]", "name": "_authorizedAmounts", "type": "uint256[]" }], + "name": "addAuthorizedAmounts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "authorizedAmounts", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "bytes32", "name": "_name", "type": "bytes32" }, + { "internalType": "uint256", "name": "_maxPlayers", "type": "uint256" }, + { "internalType": "uint256", "name": "_playTimeRange", "type": "uint256" }, + { "internalType": "uint256", "name": "_registrationAmount", "type": "uint256" }, + { "internalType": "uint256", "name": "_treasuryFee", "type": "uint256" }, + { "internalType": "uint256", "name": "_creatorFee", "type": "uint256" }, + { "internalType": "string", "name": "_encodedCron", "type": "string" }, + { + "components": [ + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "internalType": "address", "name": "contractAddress", "type": "address" }, + { "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "internalType": "struct GameV1Interface.Prize[]", + "name": "_prizes", + "type": "tuple[]" + } + ], + "name": "createNewGame", + "outputs": [{ "internalType": "address", "name": "game", "type": "address" }], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "cronUpkeep", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "deployedGames", + "outputs": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "uint256", "name": "versionId", "type": "uint256" }, + { "internalType": "address", "name": "creator", "type": "address" }, + { "internalType": "address", "name": "deployedAddress", "type": "address" }, + { "internalType": "uint256", "name": "gameCreationAmount", "type": "uint256" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "gameCreationAmount", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "games", + "outputs": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "address", "name": "deployedAddress", "type": "address" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_authorizedAmount", "type": "uint256" }], + "name": "getAuthorizedAmount", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "bool", "name": "isUsed", "type": "bool" } + ], + "internalType": "struct GameFactory.AuthorizedAmount", + "name": "gameAuthorisedAmount", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAuthorizedAmounts", + "outputs": [{ "internalType": "uint256[]", "name": "gameAuthorisedAmounts", "type": "uint256[]" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getDeployedGames", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "uint256", "name": "versionId", "type": "uint256" }, + { "internalType": "address", "name": "creator", "type": "address" }, + { "internalType": "address", "name": "deployedAddress", "type": "address" }, + { "internalType": "uint256", "name": "gameCreationAmount", "type": "uint256" } + ], + "internalType": "struct GameFactory.Game[]", + "name": "allGames", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "latestVersionId", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "nextId", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "pauseAllGamesAndFactory", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "paused", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "resumeAllGamesAndFactory", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_game", "type": "address" }], + "name": "setNewGameV1", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_adminAddress", "type": "address" }], + "name": "transferAdminOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "newOwner", "type": "address" }], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "address", "name": "_cronUpkeep", "type": "address" }], + "name": "updateCronUpkeep", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "usedAuthorizedAmounts", + "outputs": [ + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "bool", "name": "isUsed", "type": "bool" } + ], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "withdrawFunds", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { "stateMutability": "payable", "type": "receive" } + ], + "date": "2022-11-27T16:12:17.864Z", + "olds": [] + }, + "GameV1": { + "address": "0x4BC8b204ab339969Dc45C631ecc2461F464d34c8", + "libraries": { "Cron": "0xa66C8C212306f6f41bbA974eeD7F72DCd46a55BB" }, + "transactionHash": "0xdec0bafc2c11abc16fad2321c9c788b5fdbc9ee25392006a1909a676b8090291", + "abi": [ + { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "oldAdmin", "type": "address" }, + { "indexed": false, "internalType": "address", "name": "newAdmin", "type": "address" } + ], + "name": "AdminOwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], + "name": "CreatorFeeClaimed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "oldCreator", "type": "address" }, + { "indexed": false, "internalType": "address", "name": "newCreator", "type": "address" } + ], + "name": "CreatorOwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "jobId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "cronUpkeep", "type": "address" } + ], + "name": "CronUpkeepUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "jobId", "type": "uint256" }, + { "indexed": false, "internalType": "string", "name": "encodedCron", "type": "string" } + ], + "name": "EncodedCronUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "oldFactory", "type": "address" }, + { "indexed": false, "internalType": "address", "name": "newFactory", "type": "address" } + ], + "name": "FactoryOwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "receiver", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "FailedTransfer", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "roundCount", "type": "uint256" } + ], + "name": "GameLost", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "claimer", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "amountClaimed", "type": "uint256" } + ], + "name": "GamePrizeClaimed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "remainingPlayersCount", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "amountWon", "type": "uint256" } + ], + "name": "GameSplitted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "winnersCounter", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amountWon", "type": "uint256" } + ], + "name": "GameWon", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Paused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" }], + "name": "PlayedRound", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "position", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "contractAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "name": "PrizeAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "sender", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "Received", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "playersCount", "type": "uint256" } + ], + "name": "RegisteredForGame", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "timelock", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "resetId", "type": "uint256" } + ], + "name": "ResetGame", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "timelock", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "playersCount", "type": "uint256" } + ], + "name": "StartedGame", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], + "name": "TreasuryFeeClaimed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], + "name": "TreasuryFeeClaimedByFactory", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "emmiter", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "timestamp", "type": "uint256" } + ], + "name": "TriggeredDailyCheckpoint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Unpaused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": false, "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "playerAddress", "type": "address" } + ], + "name": "VoteToSplitPot", + "type": "event" + }, + { "stateMutability": "payable", "type": "fallback" }, + { + "inputs": [], + "name": "MAX_CREATOR_FEE", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "MAX_TREASURY_FEE", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "internalType": "address", "name": "contractAddress", "type": "address" }, + { "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "internalType": "struct GameV1Interface.Prize[]", + "name": "_prizes", + "type": "tuple[]" + } + ], + "name": "addPrizes", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { "inputs": [], "name": "claimCreatorFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], + "name": "claimPrize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "claimTreasuryFee", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "creator", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "creatorAmount", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "creatorFee", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "cronUpkeep", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "encodedCron", + "outputs": [{ "internalType": "string", "name": "", "type": "string" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "factory", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getGameData", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "internalType": "bytes32", "name": "name", "type": "bytes32" }, + { "internalType": "uint256", "name": "playerAddressesCount", "type": "uint256" }, + { "internalType": "uint256", "name": "remainingPlayersCount", "type": "uint256" }, + { "internalType": "uint256", "name": "maxPlayers", "type": "uint256" }, + { "internalType": "uint256", "name": "registrationAmount", "type": "uint256" }, + { "internalType": "uint256", "name": "playTimeRange", "type": "uint256" }, + { "internalType": "uint256", "name": "treasuryFee", "type": "uint256" }, + { "internalType": "uint256", "name": "creatorFee", "type": "uint256" }, + { "internalType": "bool", "name": "isPaused", "type": "bool" }, + { "internalType": "bool", "name": "isInProgress", "type": "bool" }, + { "internalType": "address", "name": "creator", "type": "address" }, + { "internalType": "address", "name": "admin", "type": "address" }, + { "internalType": "string", "name": "encodedCron", "type": "string" } + ], + "internalType": "struct GameV1Interface.GameData", + "name": "gameData", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_player", "type": "address" }], + "name": "getPlayer", + "outputs": [ + { + "components": [ + { "internalType": "address", "name": "playerAddress", "type": "address" }, + { "internalType": "uint256", "name": "roundRangeLowerLimit", "type": "uint256" }, + { "internalType": "uint256", "name": "roundRangeUpperLimit", "type": "uint256" }, + { "internalType": "bool", "name": "hasPlayedRound", "type": "bool" }, + { "internalType": "uint256", "name": "roundCount", "type": "uint256" }, + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "bool", "name": "hasLost", "type": "bool" }, + { "internalType": "bool", "name": "isSplitOk", "type": "bool" } + ], + "internalType": "struct GameV1Interface.Player", + "name": "gamePlayer", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getPlayerAddresses", + "outputs": [{ "internalType": "address[]", "name": "gamePlayerAddresses", "type": "address[]" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], + "name": "getPrizes", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "internalType": "address", "name": "contractAddress", "type": "address" }, + { "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "internalType": "struct GameV1Interface.Prize[]", + "name": "gamePrizes", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getRemainingPlayersCount", + "outputs": [{ "internalType": "uint256", "name": "remainingPlayersCount", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_roundId", "type": "uint256" }], + "name": "getWinners", + "outputs": [ + { + "components": [ + { "internalType": "uint256", "name": "roundId", "type": "uint256" }, + { "internalType": "address", "name": "playerAddress", "type": "address" }, + { "internalType": "uint256", "name": "amountWon", "type": "uint256" }, + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "bool", "name": "prizeClaimed", "type": "bool" } + ], + "internalType": "struct GameV1Interface.Winner[]", + "name": "gameWinners", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "id", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "owner", "type": "address" }, + { "internalType": "address", "name": "creator", "type": "address" }, + { "internalType": "address", "name": "cronUpkeep", "type": "address" }, + { "internalType": "bytes32", "name": "name", "type": "bytes32" }, + { "internalType": "uint256", "name": "version", "type": "uint256" }, + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "uint256", "name": "playTimeRange", "type": "uint256" }, + { "internalType": "uint256", "name": "maxPlayers", "type": "uint256" }, + { "internalType": "uint256", "name": "registrationAmount", "type": "uint256" }, + { "internalType": "uint256", "name": "treasuryFee", "type": "uint256" }, + { "internalType": "uint256", "name": "creatorFee", "type": "uint256" }, + { "internalType": "string", "name": "encodedCron", "type": "string" }, + { + "components": [ + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "standard", "type": "uint256" }, + { "internalType": "address", "name": "contractAddress", "type": "address" }, + { "internalType": "uint256", "name": "tokenId", "type": "uint256" } + ], + "internalType": "struct GameV1Interface.Prize[]", + "name": "prizes", + "type": "tuple[]" + } + ], + "internalType": "struct GameV1Interface.Initialization", + "name": "_initialization", + "type": "tuple" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "isAllPlayersSplitOk", + "outputs": [{ "internalType": "bool", "name": "isSplitOk", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isGameAllPrizesStandard", + "outputs": [{ "internalType": "bool", "name": "isStandard", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isGamePayable", + "outputs": [{ "internalType": "bool", "name": "isPayable", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isInProgress", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "maxPlayers", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "paused", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "playRound", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "playTimeRange", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "name": "playerAddresses", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "", "type": "address" }], + "name": "players", + "outputs": [ + { "internalType": "address", "name": "playerAddress", "type": "address" }, + { "internalType": "uint256", "name": "roundRangeLowerLimit", "type": "uint256" }, + { "internalType": "uint256", "name": "roundRangeUpperLimit", "type": "uint256" }, + { "internalType": "bool", "name": "hasPlayedRound", "type": "bool" }, + { "internalType": "uint256", "name": "roundCount", "type": "uint256" }, + { "internalType": "uint256", "name": "position", "type": "uint256" }, + { "internalType": "bool", "name": "hasLost", "type": "bool" }, + { "internalType": "bool", "name": "isSplitOk", "type": "bool" } + ], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "registerForGame", "outputs": [], "stateMutability": "payable", "type": "function" }, + { + "inputs": [], + "name": "registrationAmount", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "roundId", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_creatorFee", "type": "uint256" }], + "name": "setCreatorFee", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_cronUpkeep", "type": "address" }], + "name": "setCronUpkeep", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "string", "name": "_encodedCron", "type": "string" }], + "name": "setEncodedCron", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_maxPlayers", "type": "uint256" }], + "name": "setMaxPlayers", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "bytes32", "name": "_name", "type": "bytes32" }], + "name": "setName", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "_treasuryFee", "type": "uint256" }], + "name": "setTreasuryFee", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "inputs": [], "name": "startGame", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "address", "name": "_adminAddress", "type": "address" }], + "name": "transferAdminOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_creator", "type": "address" }], + "name": "transferCreatorOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "_factory", "type": "address" }], + "name": "transferFactoryOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "treasuryAmount", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "treasuryFee", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "triggerDailyCheckpoint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "version", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "voteToSplitPot", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "address", "name": "_receiver", "type": "address" }], + "name": "withdrawFunds", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "stateMutability": "payable", "type": "receive" } + ], + "date": "2022-11-27T16:12:17.869Z", + "olds": [] + }, + "CronExternal": { + "address": "0xa66C8C212306f6f41bbA974eeD7F72DCd46a55BB", + "libraries": {}, + "transactionHash": "0xdbd29928a0e8982be758fb4bc058aa9447f0c1944580fbb9f649ce56283a5e38", + "abi": [ + { + "inputs": [ + { "internalType": "string", "name": "field", "type": "string" }, + { "internalType": "string", "name": "reason", "type": "string" } + ], + "name": "InvalidField", + "type": "error" + }, + { + "inputs": [{ "internalType": "string", "name": "reason", "type": "string" }], + "name": "InvalidSpec", + "type": "error" + }, + { "inputs": [], "name": "ListTooLarge", "type": "error" }, + { "inputs": [], "name": "UnknownFieldType", "type": "error" }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "spec", + "type": "tuple" + } + ], + "name": "lastTick", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "spec", + "type": "tuple" + }, + { "internalType": "uint256", "name": "timestamp", "type": "uint256" } + ], + "name": "matches", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "spec", + "type": "tuple" + } + ], + "name": "nextTick", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "spec", + "type": "tuple" + } + ], + "name": "toCronString", + "outputs": [{ "internalType": "string", "name": "", "type": "string" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [{ "internalType": "string", "name": "cronString", "type": "string" }], + "name": "toEncodedSpec", + "outputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [{ "internalType": "string", "name": "cronString", "type": "string" }], + "name": "toSpec", + "outputs": [ + { + "components": [ + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "minute", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "hour", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "day", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "month", + "type": "tuple" + }, + { + "components": [ + { "internalType": "enum FieldType", "name": "fieldType", "type": "FieldType" }, + { "internalType": "uint8", "name": "singleValue", "type": "uint8" }, + { "internalType": "uint8", "name": "interval", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeStart", "type": "uint8" }, + { "internalType": "uint8", "name": "rangeEnd", "type": "uint8" }, + { "internalType": "uint8", "name": "listLength", "type": "uint8" }, + { "internalType": "uint8[26]", "name": "list", "type": "uint8[26]" } + ], + "internalType": "struct Field", + "name": "dayOfWeek", + "type": "tuple" + } + ], + "internalType": "struct Spec", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "date": "2022-11-27T16:12:17.873Z", + "olds": [] + }, + "CronUpkeep": { + "address": "0xa9296aF2f631086d52fD02693F2A8996dD4156a0", + "libraries": { "Cron": "0xa66C8C212306f6f41bbA974eeD7F72DCd46a55BB" }, + "transactionHash": "0xe880f8e46acc54eabde06487b94f06920cddfff4e7ef38de0a8db52cefc4883f", + "abi": [ + { + "inputs": [ + { "internalType": "address", "name": "owner", "type": "address" }, + { "internalType": "uint256", "name": "maxJobs", "type": "uint256" }, + { "internalType": "bytes", "name": "firstJob", "type": "bytes" } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "string", "name": "reason", "type": "string" } + ], + "name": "CallFailed", + "type": "error" + }, + { + "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], + "name": "CronJobIDNotFound", + "type": "error" + }, + { "inputs": [], "name": "DontNeedPerformUpkeep", "type": "error" }, + { "inputs": [], "name": "ExceedsMaxJobs", "type": "error" }, + { "inputs": [], "name": "InvalidHandler", "type": "error" }, + { "inputs": [], "name": "OnlySimulatedBackend", "type": "error" }, + { "inputs": [], "name": "TickDoesntMatchSpec", "type": "error" }, + { "inputs": [], "name": "TickInFuture", "type": "error" }, + { "inputs": [], "name": "TickTooOld", "type": "error" }, + { "inputs": [], "name": "UnknownFieldType", "type": "error" }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "target", "type": "address" }, + { "indexed": false, "internalType": "bytes", "name": "handler", "type": "bytes" } + ], + "name": "CronJobCreated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" }], + "name": "CronJobDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "timestamp", "type": "uint256" } + ], + "name": "CronJobExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" }, + { "indexed": false, "internalType": "address", "name": "target", "type": "address" }, + { "indexed": false, "internalType": "bytes", "name": "handler", "type": "bytes" } + ], + "name": "CronJobUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "target", "type": "address" }], + "name": "DelegatorAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "target", "type": "address" }], + "name": "DelegatorRemoved", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "to", "type": "address" } + ], + "name": "OwnershipTransferRequested", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "to", "type": "address" } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Paused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], + "name": "Unpaused", + "type": "event" + }, + { "inputs": [], "name": "acceptOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [{ "internalType": "address", "name": "delegator", "type": "address" }], + "name": "addDelegator", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }], + "name": "checkUpkeep", + "outputs": [ + { "internalType": "bool", "name": "", "type": "bool" }, + { "internalType": "bytes", "name": "", "type": "bytes" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "handler", "type": "bytes" }, + { "internalType": "bytes", "name": "encodedCronSpec", "type": "bytes" } + ], + "name": "createCronJobFromEncodedSpec", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], + "name": "deleteCronJob", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getActiveCronJobIDs", + "outputs": [{ "internalType": "uint256[]", "name": "", "type": "uint256[]" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }], + "name": "getCronJob", + "outputs": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "handler", "type": "bytes" }, + { "internalType": "string", "name": "cronString", "type": "string" }, + { "internalType": "uint256", "name": "nextTick", "type": "uint256" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getDelegators", + "outputs": [{ "internalType": "address[]", "name": "", "type": "address[]" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getNextCronJobIDs", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [], + "name": "paused", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "bytes", "name": "performData", "type": "bytes" }], + "name": "performUpkeep", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "delegator", "type": "address" }], + "name": "removeDelegator", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "s_maxJobs", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "to", "type": "address" }], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [ + { "internalType": "uint256", "name": "id", "type": "uint256" }, + { "internalType": "address", "name": "newTarget", "type": "address" }, + { "internalType": "bytes", "name": "newHandler", "type": "bytes" }, + { "internalType": "bytes", "name": "newEncodedCronSpec", "type": "bytes" } + ], + "name": "updateCronJob", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "date": "2022-11-27T16:12:17.877Z", + "olds": [] + }, + "MultiCall3": { + "address": "0xCcE2Ce77027F4Cc43Db57Cb400061f5DAaD96b68", + "libraries": {}, + "transactionHash": "0x6c68e8941f425053641ca2f0984655b2ceadcef450523c02de01551397ef5901", + "abi": [ + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "aggregate", + "outputs": [ + { "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, + { "internalType": "bytes[]", "name": "returnData", "type": "bytes[]" } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bool", "name": "allowFailure", "type": "bool" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call3[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "aggregate3", + "outputs": [ + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bool", "name": "allowFailure", "type": "bool" }, + { "internalType": "uint256", "name": "value", "type": "uint256" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call3Value[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "aggregate3Value", + "outputs": [ + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "blockAndAggregate", + "outputs": [ + { "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, + { "internalType": "bytes32", "name": "blockHash", "type": "bytes32" }, + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "getBasefee", + "outputs": [{ "internalType": "uint256", "name": "basefee", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "blockNumber", "type": "uint256" }], + "name": "getBlockHash", + "outputs": [{ "internalType": "bytes32", "name": "blockHash", "type": "bytes32" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getBlockNumber", + "outputs": [{ "internalType": "uint256", "name": "blockNumber", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getChainId", + "outputs": [{ "internalType": "uint256", "name": "chainid", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getCurrentBlockCoinbase", + "outputs": [{ "internalType": "address", "name": "coinbase", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getCurrentBlockDifficulty", + "outputs": [{ "internalType": "uint256", "name": "difficulty", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getCurrentBlockGasLimit", + "outputs": [{ "internalType": "uint256", "name": "gaslimit", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getCurrentBlockTimestamp", + "outputs": [{ "internalType": "uint256", "name": "timestamp", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "addr", "type": "address" }], + "name": "getEthBalance", + "outputs": [{ "internalType": "uint256", "name": "balance", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getLastBlockHash", + "outputs": [{ "internalType": "bytes32", "name": "blockHash", "type": "bytes32" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "bool", "name": "requireSuccess", "type": "bool" }, + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "tryAggregate", + "outputs": [ + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "bool", "name": "requireSuccess", "type": "bool" }, + { + "components": [ + { "internalType": "address", "name": "target", "type": "address" }, + { "internalType": "bytes", "name": "callData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Call[]", + "name": "calls", + "type": "tuple[]" + } + ], + "name": "tryBlockAndAggregate", + "outputs": [ + { "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, + { "internalType": "bytes32", "name": "blockHash", "type": "bytes32" }, + { + "components": [ + { "internalType": "bool", "name": "success", "type": "bool" }, + { "internalType": "bytes", "name": "returnData", "type": "bytes" } + ], + "internalType": "struct Multicall3.Result[]", + "name": "returnData", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + } + ], + "date": "2022-11-27T16:12:17.881Z", + "olds": [] + } + } +} diff --git a/packages/dapp/src/state/games/fetchGames.ts b/packages/dapp/src/state/games/fetchGames.ts index 0617e08..73d465b 100644 --- a/packages/dapp/src/state/games/fetchGames.ts +++ b/packages/dapp/src/state/games/fetchGames.ts @@ -36,7 +36,7 @@ const fetchGames = async (chainId: number): Promise => { const completeGames = transformedGames.map(gameExtendedTransformer(gamePrizes, gameWinners)) return completeGames } catch (e) { - console.log('🚀 ~ file: fetchGames.ts ~ line 23 ~ fetchGames ~ e', e) + console.log('🚀 ~ file: fetchGames.ts ~ line 21 ~ fetchGames ~ e', e) return [] } } diff --git a/packages/dapp/src/views/Games/components/GameCard/CardPlayerSection.tsx b/packages/dapp/src/views/Games/components/GameCard/CardPlayerSection.tsx index bb7094c..8fcc2ed 100644 --- a/packages/dapp/src/views/Games/components/GameCard/CardPlayerSection.tsx +++ b/packages/dapp/src/views/Games/components/GameCard/CardPlayerSection.tsx @@ -131,7 +131,7 @@ const CardPlayerSection: React.FC - {roundCount.toNumber()} + {roundCount.toNumber() + 1} @@ -260,7 +260,7 @@ const CardPlayerSection: React.FC {t('Show Game Details')} diff --git a/packages/dapp/src/views/Games/components/GameCard/GameCard.tsx b/packages/dapp/src/views/Games/components/GameCard/GameCard.tsx index ca9e34a..a0943e2 100644 --- a/packages/dapp/src/views/Games/components/GameCard/GameCard.tsx +++ b/packages/dapp/src/views/Games/components/GameCard/GameCard.tsx @@ -124,7 +124,11 @@ const GameCard: React.FC> = ({ game, acco const isReady = game.prizepool !== undefined - const lastGamePrize = lastRoundWinners.find((winner) => winner.playerAddress === playerAddress) + const lastGamePrize = lastRoundWinners.find((winner) => { + return winner.playerAddress === account + // TODO GUIGUI WHY playerAddress is not defined + // return winner.playerAddress === playerAddress + }) const isWonLastGames = !!lastGamePrize const lastGameWonAmount = isWonLastGames ? lastGamePrize.amountWon : new BigNumber('0') const lastGameRoundId = isWonLastGames ? lastGamePrize.roundId : new BigNumber('0') diff --git a/packages/dapp/src/views/Games/components/GameTags/RegistrationTag.tsx b/packages/dapp/src/views/Games/components/GameTags/RegistrationTag.tsx index 57246e6..f303efc 100644 --- a/packages/dapp/src/views/Games/components/GameTags/RegistrationTag.tsx +++ b/packages/dapp/src/views/Games/components/GameTags/RegistrationTag.tsx @@ -10,7 +10,7 @@ interface RegistrationTag extends TagProps { const RegistrationTag: React.FC = (props) => { const { t } = useTranslation() return ( - + {t('Registering')} ) diff --git a/packages/dapp/src/views/Games/components/GameTags/StartingTag.tsx b/packages/dapp/src/views/Games/components/GameTags/StartingTag.tsx index e2825d4..35bfaa2 100644 --- a/packages/dapp/src/views/Games/components/GameTags/StartingTag.tsx +++ b/packages/dapp/src/views/Games/components/GameTags/StartingTag.tsx @@ -10,7 +10,7 @@ interface StartingTag extends TagProps { const StartingTag: React.FC = (props) => { const { t } = useTranslation() return ( - + {t('Starting')} ) diff --git a/packages/hardhat/contracts/GameV1.sol b/packages/hardhat/contracts/GameV1.sol index c181e94..3b7f1a4 100644 --- a/packages/hardhat/contracts/GameV1.sol +++ b/packages/hardhat/contracts/GameV1.sol @@ -396,7 +396,7 @@ contract GameV1 is GameV1Interface, ReentrancyGuard, Pausable { } if (remainingPlayersCount == 0) - // Creator will take everything except the first prize + // Creator will take everything except the first prize that goes to the treasury for (uint256 i = 0; i < _prizes.length; i++) { treasuryRoundAmount = (_prizes[i].amount * treasuryFee) / 10000; creatorRoundAmount = (_prizes[i].amount * creatorFee) / 10000; diff --git a/packages/hardhat/deploy/06_Create_Games.ts b/packages/hardhat/deploy/06_Create_Games.ts index 756f469..d8852ac 100644 --- a/packages/hardhat/deploy/06_Create_Games.ts +++ b/packages/hardhat/deploy/06_Create_Games.ts @@ -102,8 +102,8 @@ const func: DeployFunction = async function ({ // zeroRegistrationAmount, // treasuryFee, // creatorFee, - // // '*/5 * * * *', - // encodedCron, + // '*/2 * * * *', + // // encodedCron, // freeGamePrizes, // { value: gameCreationAmount.add(freeGamePrizepoolAmount) } // )