*update* implement all function in board, not edit