new module smartMoves.ml