Prediction Engines
A Prediction Engine (aka Betting Engine) is a collective term for contracts that encompass the logic of creating Conditions, accepting bets, computing payouts for bets, and calculating Affiliate rewards.
These contracts are plugged into the Pool by its owner via the Factory, and access to place bets and withdraw payouts is only granted through the LP contract for which it was deployed.
A Betting Engine can inherit the CoreBase contract that contains the fundamental logic to facilitate the betting process on multi-outcome Conditions. At present, the Azuro project includes two Betting Engines: PrematchCore for pre-match betting, which is based on the CoreBase contract, and BetExpress for combo bets.