private Tuple <Pos, char>[] GetAvailablePositions() { return(AvailableDirections.Select(c => new Tuple <Pos, char>(Pos.Move(c), c)) .Where(a => a.Item1.X >= 0 && a.Item1.X <= 3 && a.Item1.Y >= 0 && a.Item1.Y <= 3) .ToArray()); }