[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"house","type":"address"},{"indexed":false,"internalType":"uint32","name":"bet_id","type":"uint32"}],"name":"BetPlaced","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"house","type":"address"},{"indexed":false,"internalType":"bool","name":"player_win","type":"bool"},{"indexed":false,"internalType":"uint88","name":"odds","type":"uint88"},{"indexed":false,"internalType":"address","name":"player","type":"address"},{"indexed":false,"internalType":"uint96","name":"pot","type":"uint96"}],"name":"BetResolved","type":"event"},{"inputs":[{"internalType":"uint256","name":"new_price","type":"uint256"}],"name":"BuyContract","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"new_owner","type":"address"}],"name":"ChangeOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"CreatePlayer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"bet_id","type":"uint256"},{"internalType":"bytes32[8]","name":"signed_randomness","type":"bytes32[8]"}],"name":"DecideBet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"Dismantle","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"bet_id","type":"uint256"}],"name":"ForceBet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"FundHouse","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"HouseWithdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32[8]","name":"modulus","type":"bytes32[8]"},{"internalType":"uint256","name":"max_loss","type":"uint256"},{"internalType":"uint256","name":"min_bet","type":"uint256"},{"internalType":"uint256","name":"take","type":"uint256"}],"name":"OpenOrAdjustHouse","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"OwnerWithdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"house","type":"address"},{"internalType":"uint256","name":"odds","type":"uint256"},{"internalType":"uint256","name":"amount_gwei","type":"uint256"},{"internalType":"bytes32","name":"randomness","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"bet_placed_timestamp","type":"uint256"}],"name":"PlaceBet","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"PlayerWithdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"sale_price","type":"uint256"}],"name":"SetPrice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"TogglePauseHouse","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"house","type":"address"}],"name":"ViewHouse","outputs":[{"components":[{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"bet_balance","type":"uint256"},{"internalType":"uint256","name":"max_loss","type":"uint256"},{"internalType":"uint256","name":"min_bet","type":"uint256"},{"internalType":"uint256","name":"take","type":"uint256"},{"internalType":"bytes32[8]","name":"modulus","type":"bytes32[8]"},{"internalType":"uint256","name":"pause_block","type":"uint256"},{"internalType":"uint32","name":"first_bet","type":"uint32"},{"internalType":"uint32","name":"last_bet","type":"uint32"},{"internalType":"uint32","name":"active_bets","type":"uint32"},{"internalType":"uint32","name":"completed_bets","type":"uint32"},{"internalType":"uint128","name":"house_address_index","type":"uint128"},{"internalType":"uint256","name":"last_update_timestamp","type":"uint256"},{"internalType":"uint256","name":"last_low_balance_timestamp","type":"uint256"}],"internalType":"struct BetHorde.House","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"bets","outputs":[{"internalType":"address","name":"house","type":"address"},{"internalType":"uint56","name":"price_gwei","type":"uint56"},{"internalType":"uint40","name":"timestamp","type":"uint40"},{"internalType":"address","name":"player","type":"address"},{"internalType":"uint32","name":"previous_house_bet","type":"uint32"},{"internalType":"uint32","name":"next_house_bet","type":"uint32"},{"internalType":"uint32","name":"odds","type":"uint32"},{"internalType":"bytes32","name":"randomness","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"house_addresses","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"players","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"active_bets","type":"uint256"},{"internalType":"uint256","name":"creation_block","type":"uint256"},{"internalType":"uint256","name":"winnings","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"state","outputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint32","name":"bet_counter","type":"uint32"},{"internalType":"uint64","name":"winnings_micro","type":"uint64"},{"internalType":"uint256","name":"reserved_eth","type":"uint256"},{"internalType":"uint256","name":"sale_price","type":"uint256"},{"internalType":"uint256","name":"last_bet_time","type":"uint256"},{"internalType":"uint256","name":"num_houses","type":"uint256"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]