#pragma once
#include <api/dds.h>
#include <solver_context/solver_context.hpp>
#include <memory>
auto solve_board_internal(
SolverContext& ctx,
const Deal& dl,
const int target,
const int solutions,
const int mode,
FutureTricks * futp) -> int;
auto solve_same_board(
SolverContext& ctx,
const Deal& dl,
FutureTricks * futp,
const int hint) -> int;
auto analyse_later_board(
const std::shared_ptr<ThreadData>& thrp,
const int leadHand,
MoveType const * move,
const int hint,
const int hintDir,
FutureTricks * futp) -> int;