fixed board, refactored