public void LoadFromFen(string fen, bool clearStack = true) { // TODO: set id var fenData = _fenService.GetData(fen); _pieces.Clear(); foreach (var piece in fenData.PieceInfos.Select(p => p.ToPiece())) { piece.PieceMoving += OnPieceMoving; _pieces.Add(piece); } _gameInfo.CopyFrom(fenData.GameInfo); ResetBoardState(clearStack); }