Statistics

Problem Statement for "SymmetryDetection"

Problem Statement

Fox Ciel has a rectangular board divided into n rows by m columns of unit square cells. Rows are numbered 0 through n-1 from top to bottom and columns are numbered 0 through m-1 from left to right. Each cell is either white or black. You are given a String[] board containing the description of the board. The character board[i][j] represents the cell in row i, column j. The character '#' represents a black cell and '.' represents a white cell.

The board is called horizontally symmetric if it remains the same when flipped around a horizontal line that goes through the center of the board. If n is odd, this line goes through the middle of row (n-1)/2. If n is even, the line goes between rows (n/2)-1 and (n/2).

Similarly, the board is called vertically symmetric if it remains the same when flipped around a vertical line that goes through the center of the board.

Please help Ciel determine the types of symmetry of her board. Return one of the following four Strings:

  • "Both" if Ciel's board is both horizontally and vertically symmetric.
  • "Horizontally symmetric" if Ciel's board is horizontally symmetric but not vertically symmetric.
  • "Vertically symmetric" if Ciel's board is vertically symmetric but not horizontally symmetric.
  • "Neither" otherwise.
Note that the quotes are for clarity only. Also note that the return value is case-sensitive.

Definition

Class:
SymmetryDetection
Method:
detect
Parameters:
String[]
Returns:
String
Method signature:
String detect(String[] board)
(be sure your method is public)

Notes

  • The values n and m are not given explicitly. Instead, you can determine n as the number of elements in board and m as the length of any element in board.

Constraints

  • n, m will be between 1 and 50, inclusive.
  • board will contain exactly n elements.
  • Each element in board will have exactly m characters.
  • Each character in board will be '#' or '.'.

Examples

  1. {"#####", ".###.", "..#.."}

    Returns: "Vertically symmetric"

    If we flip this board according to the vertical line that goes through the middle of column 2, we will get exactly the same board. On the other hand, if we flip it according to the horizontal line that goes through the middle of row 1, we will get the following shape: ..#.. .###. ##### This is not the same board, which means that this board isn't horizontally symmetric.

  2. {"#####", "#...#", "#####"}

    Returns: "Both"

    This time it is both horizontally and vertically symmetric.

  3. {"#..", "#..", "#.."}

    Returns: "Horizontally symmetric"

  4. {"#.", ".#"}

    Returns: "Neither"

  5. {"#######", "#..#..#", "#######", "...#...", "#######"}

    Returns: "Vertically symmetric"

  6. {"#.....#", "#.....#", "#######", "#...#.#", "#.....#"}

    Returns: "Neither"

  7. {"#######.#.....#", "...#....#.....#", ".#####..#######", "...#....#.....#", "#######.#.....#"}

    Returns: "Horizontally symmetric"

  8. {"."}

    Returns: "Both"

  9. {"#...","####","###.","..##","..##","####","##.#",".###","...#",".###","..##"}

    Returns: "Neither"

  10. {".#.#.#..####.#.##..##.#.####..#.#.#.","###.###...#..##########..#...###.###",".#....#####..###....###..#####....#.",".#.##...#.#######..#######.#...##.#.","#..#..###.#.#....##....#.#.###..#..#","#.#..##..##.##.#....#.##.##..##..#.#",".##..#..#..######..######..#..#..##.","#.#.#.#.......###..###.......#.#.#.#","#.##...#...#...#.##.#...#...#...##.#",".####.##..#....##..##....#..##.####.",".#.###...#..#..#....#..#..#...###.#.","#..#.#.#.......######.......#.#.#..#","#.#.#..##...#.#.#..#.#.#...##..#.#.#",".##.#.###.#.#....##....#.#.###.#.##.","..#..#.##.#..##########..#.##.#..#..","#..#.#..###.##.#.##.#.##.###..#.#..#","#.##.#.......##.#..#.##.......#.##.#","#####....#.##.########.##.#....#####","###.#..####.###.####.###.####..#.###",".###..####..#...####...#..####..###.","#####.###...#...####...#...###.#####","####.#.....#.#...##...#.#.....#.####","#.#.#.#..###....#..#....###..#.#.#.#","#..#...#.#..##........##..#.#...#..#","...##..#.#....#..##..#....#.#..##...","#.#####.###.#.###..###.#.###.#####.#","..##.####.#.###..##..###.#.####.##..","....###..#.#.#........#.#.#..###....","#..#..#.#..#.####..####.#..#.#..#..#","#...#.#####..#...##...#..#####.#...#","#.##..##..#####..##..#####..##..##.#","#.##.###.....###....###.....###.##.#","##....#.#...####....####...#.#....##",".#.#.#####....#..##..#....#####.#.#.","#.#.#.##......###..###......##.#.#.#","#.###.###.#..##.####.##..#.###.###.#","#....##.#.#.###.#..#.###.#.#.##....#","....#.###..#...#....#...#..###.#....","##.##....###............###....##.##","..#.###..#.##.##....##.##.#..###.#..","#..######....####..####....######..#","...#.....#.##..#....#..##.#.....#...",".#..##..#.....###..###.....#..##..#.","..#####.###..#..####..#..###.#####..","#####....##.############.##....#####","#.#...##.......##..##.......##...#.#","...#####.####..........####.#####..."}

    Returns: "Vertically symmetric"

  11. {".####..###..####.","####.##...##.####","#.#..#..#..#..#.#","#...#..###..#...#","#...#..###..#...#","#.#..#.....#..#.#","####.##.#.##.####",".####..#.#..####."}

    Returns: "Vertically symmetric"

  12. {".#..##...#.#####....#.#.####..#.#.#..#..###.##..#","###..#####.##.##..#.###..#...###.####.#...#..###.","##..###.#....####..####..#####....#..#.#####..##.","..#..######..###.#########.#...##.#....#.###.#..#","..#.###.#.#.###..#.....#.#.###..#..##.#......####","##...##....##..#...##.##.##..##..#.#.#######.####","..#######.#..##.....#####..#..#..##...##.#...##..","#....##.#.#.##..##..##.......#.#.#.###..#.#.#####","#.##.##.#..##..#.####...#...#...##.#..##.#...#.#.","##.#.#....#..#.#..#.#....#..##.####.##.##.#.##.#.",".#.#####.##...#####.#..#..#...###.#..#.#.#..###..",".#.#..#.#.##.##..##.#.......#.#.#..#....##.#..###","..##.....###..#####..#.#...##..#.#.#.###.##.###.#","...#..#...#..#...#.#...#.#.###.#.##.###..#.#.##..",".#....#.#..#..#####.###..#.##.#..#...#...#.......","#...###.#####.##..#.#.##.###..#.#..###....#.#..#.","##.#.#......##.#.#...##.......#.##.##..#......#.#",".##.######...####...##.##.#....#####..#.##..#..##","#..#...#....###.#.#..###.####..#.#######...#..###","#...##.#.###....####...#..####..###...##..#.#.#.#"}

    Returns: "Neither"

  13. {"..#.##.......#..#..##.##..#..#.......##.#..","..######..###.#.#.#######.#.#.###..######..",".####.##.#.#.#....#.###.#....#.#.#.##.####.","....####..#.####...#####...####.#..####....","####..#..##..#.##.........##.#..##..#..####","#..#...####..#.#.#..#.#..#.#.#..####...#..#",".####.#..#.#.#.###..###..###.#.#.#..#.####.","#.##.######.####...###.#...####.######.##.#","#...###.##.#..##...##..#...##..#.##.###...#","....#######..#..#####..####..#..#######....","##.####.###.##.#..#.#...#..#.##.###.####.##",".##..#.####..#.##...#.....##.#..####.#..##.",".#.#######....#..#.#.#.#.#..#....#######.#.","#.#####.#..#..##..##...##..##..#..#.#####.#","...##.####.#####################.####.##...","..#....#.#.#..#..####.####..#..#.#.#....#..",".###..#.##....##..#..##.#..##....##.#..###.","##.#.###.###.##...####.##...##.###.###.#.##","##.#....#######.#....##...#.#######....#.##","..##.##......##..#.......#..##......##.##.."}

    Returns: "Neither"

  14. {"##...##....###.#######.#..#.#######.###....##...##","...#.#####....#.##.#..#.##.#..#.##.#....#####.#...",".#.###.##.#..#.....#.#.####.#.#.....#..#.##.###.#.",".#####...####.##...###......###...##.####...#####.","...#..#.###..#.##.#...##..##...#.##.#..###.#..#...","#.#.###.#.#....#.#####..##..#####.#....#.#.###.#.#",".####.#.#.#..##.#..###......###..#.##..#.#.#.####.","###.#..........#.###..#....#..###.#..........#.###","..##.#..##.#..###.#.##..##..##.#.###..#.##..#.##..","###...##.....####.##.#......#.##.####.....##...###","..#..####..##........................##..####..#..",".##.###....###..##.#..#.##.#..#.##..###....###.##.",".#....#.##.##..#......######......#..##.##.#....#.",".......#....#.##.#..##.#..#.##..#.##.#....#.......","#..#####.#.........##.##..##.##.........#.#####..#","..###.##......###.##..#....#..##.###......##.###..","#.###....###.#.##.#.#.##..##.#.#.##.#.###....###.#",".#####.######.#.####.#.####.#.####.#.######.#####.",".##.#.#.#.#...#####.####..####.#####...#.#.#.#.##.","..##..#...#.#..#.#....#.##.#....#.#..#.#...#..##..","#..####.#####.####..##.####.##..####.#####.####..#","....#..###.###...################...###.###..#....","######.###.#.######..#.#..#.#..######.#.###.######",".#.....#...#.#####..####..####..#####.#...#.....#.","###.##...###.######..##.##.##..######.###...##.###","###..##.#.#.##..#..##...##...##..#..##.#.#.##..###","#.#..##.###.###...##..######..##...###.###.##..#.#","#......######.#..#.#..######..#.#..#.######......#",".#.#...#..##...#.#.#.###..###.#.#.#...##..#...#.#.","##.##.#.###..#.##...##.#..#.##...##.#..###.#.##.##",".########.#....#.#.#..#....#..#.#.#....#.########.","##...#.###.##.####..###....###..####.##.###.#...##","...#..####.#...###..##.#..#.##..###...#.####..#...","..#..#.#.....#.#..#...#.##.#...#..#.#.....#.#..#..",".##.#.###.#....##.#............#.##....#.###.#.##.",".####..####.....#####........#####.....####..####.","##.##..#.#....####..###....###..####....#.#..##.##",".##..###..###.##.##.##########.##.##.###..###..##.","###..###..#####.#.#.....##.....#.#.#####..###..###","##.#.#.#.#.##########.##..##.##########.#.#.#.#.##","#.##.##.###.###.##..#.#.##.#.#..##.###.###.##.##.#","...##..##..#..........######..........#..##..##...","##.#####..#..........#......#..........#..#####.##","##.###.#####.#....####.####.####....#.#####.###.##","....#.###.##.#######..#....#..#######.##.###.#...."}

    Returns: "Vertically symmetric"

  15. {".....##############.....","##.###.#........#.###.##","..##..#..#....#..#..##..","###.#..#..####..#..#.###","#..#.##..........##.#..#",".#.#.##.##....##.##.#.#.","...#.##.#.####.#.##.#...","#.#####.##.##.##.#####.#",".###.#.##.#..#.##.#.###.",".##.#..###....###..#.##.",".##.###..##..##..###.##.","##...#..##....##..#...##","#.#..#.##.####.##.#..#.#","#.##.##..........##.##.#",".#.#.###.##..##.###.#.#.","##.#..##..#..#..##..#.##","##..#...#.#..#.#...#..##",".#.####.##.##.##.####.#.","#........######........#","##..##.....##.....##..##","#.....##.##..##.##.....#",".#.##..##########..##.#.",".###..#..#.##.#..#..###.","....#......##......#....",".#...#.##.#..#.##.#...#.","....#.#.##....##.#.#....","#.###..#.##..##.#..###.#",".###.###..#..#..###.###.","##.#.#..#.####.#..#.#.##",".##..###........###..##."}

    Returns: "Vertically symmetric"

  16. {"#....#####....#..###..#....#####....#","#.....#.#.#.#.##.#.#.##.#.#.#.#.....#",".####.#...#.##.#######.##.#...#.####.",".####....##..#.........#..##....####.","#.#...#...#....#######....#...#...#.#","#.###.#.##..######.######..##.#.###.#",".#.##.#.#..#...#.###.#...#..#.#.##.#.","#.###...#####...#.#.#...#####...###.#","##...####..####.#.#.#.####..####...##",".###..#......#..#.#.#..#......#..###.","#...#......####.#.#.#.####......#...#",".#.#...##.#.####.###.####.#.##...#.#.",".#.##...#..#..##.#.#.##..#..#...##.#.",".####..##.#####..#.#..#####.##..####.",".#.##.##.##.#..#..#..#..#.##.##.##.#.",".####..##.#####..#.#..#####.##..####.",".#.##...#..#..##.#.#.##..#..#...##.#.",".#.#...##.#.####.###.####.#.##...#.#.","#...#......####.#.#.#.####......#...#",".###..#......#..#.#.#..#......#..###.","##...####..####.#.#.#.####..####...##","#.###...#####...#.#.#...#####...###.#",".#.##.#.#..#...#.###.#...#..#.#.##.#.","#.###.#.##..######.######..##.#.###.#","#.#...#...#....#######....#...#...#.#",".####....##..#.........#..##....####.",".####.#...#.##.#######.##.#...#.####.","#.....#.#.#.#.##.#.#.##.#.#.#.#.....#","#....#####....#..###..#....#####....#"}

    Returns: "Both"

  17. {".....#####....#..###..#....#####....##",".#....#.#.#.#.##.#.#.##.#.#.#.#.....#.","...##.#...#.##.#######.##.#...#.####.."}

    Returns: "Neither"

  18. {"#.###.######...###.###.##..#.....##.#.#.##.#","..#......#..###.##..#..#.##.########.###.#.#","###..#.....#..###....######.####.###.##.###.","...###..##...##..##..##.#.##..#.###...#.####","..#.#.##....##....#.##.#.#.#.##.###.###..#..","#.##.....#.##.#####.#.#####.##..##.###....#.","########.###..##...#####..###.##..#####.#.#.",".#....#..##.##..##..##.######..#..#.#...##..","...####..#.##.#..##..###.###...##..#.###..##",".#.###.#...#..#..#.#.##.#..##..##.###.#..#.#","###.##..#..###.#####.#...#...##.#.####...###","#.#..#.#.###.######.#..#..#..###.#....#####.","#.##...#........###.##..####.##..#.###...#..",".#.#######...#..#.####.##.....#..#.#..###.##","####..#.....#...##.#.##....##.####....#..#.#","##.#######.#..#.#..#..#..####.#...###.####..","#.#.##.#.####.##.###.#..##.####.###.#...#...","#...##......#.#.#.####.#...##..#..###.##.###","...###..#..##.........##..#.##...#.#.#.###.#","#.#..#..#.###.....#...###.#.#.#.....##.#####","######.....###.##..#.#.##.#.#..#..###..####.","......#...##..#.#......###.##.##..##.#####..","..#..##..###.#####.#.#.#.....##.###......###","..##..#.#######.......#.#.##..#..##.##.##..#","#.......###.#.###..#.##.###.#...##...#..####","###...###.#.##.##..#..###..#.###....#.##....","#.#..###.###...######..##..##..#####.#.#####","####.##.###..###....#.#..#.#.##.##..##..##..","#.##.#....#.#..##.#.#.###.####..###...#.#.#.","#.##..####.#####..#.#..#.#.#.##.##..###....#","...##.#.#####........#.....#....###..####.#.","##.#..######...###.###.#.##..##...#..#.###..",".....#.....#####.###....#.##.#...###..#.#...","#.#.#..#..#...#..#.....#....#..#...#....##..","..#..###.#.#.#####.#..#...###..###.##.##.#.#","###..#.##.#.#.###..##...#####.#.#.#..##.####","##...##..#..#.##.#...#..#...#..#....###.....","..####..#.##.#.#.##..#######.#.##..#.##..#.#",".#.#...###......#....#...#..##.###.#.######.","##..##.#####.#####.#.###..#...#.#.##.#.###.#","##.#.#.#.#.#....###.#..###....#..#.##.#..#.#","#####.#.#...##.#.########...####.....#.###..",".#..#.........#..#..#..###..#...######.#..##","...##..###......#.#.#....####...##.##.##..#.","..#.#..###.....##..##.#...##....#....####.#.","##....#..#.####.#.##.#....###.##....#..#..##","#.#..#####.###.###..#....#.##...####..#.....","#..#...#.#.#####...###.#..##..#####.####..#.","#.##.....#.######.##...#..###...##..#..##..."}

    Returns: "Neither"

  19. {"##.###",".#####","##...#","...#..","#..#..",".##.#.","##.##.","#.#...",".###.#","#####.","#..###",".##.#.","..##.#"}

    Returns: "Neither"

  20. {"#.##...#.###.###..##.######..#####","..#.#.#.#...#...###.#..###..###...","##.##.##..#.###...###.###...######","..#...######.##.#.##...##..#...#.#",".#.##.##.#..#..#...#....#.#.##...#",".#.###...#...#..###..#.#.##..###..","..#######...##.#.##...#.#.##......","####..#..####.......#....####.#.#.",".#....#.###....##.#.#.#..##......#","....######..#......###..##.##.##..",".#.#.##.##.#.#..###.....#..###.#.#",".##.#.....##.#...#.##..#.###..##.#","##.#...##.##.....###.##...#...#..#","##.###.###..####..###..####.####.#","..##.#..##..#.#.##.##.#..#...#.##.","....#....#.######.....##.###.###.#","....#....#.###..###.##....#.##..#.","#...####...##....##.#...#####.#.#.","#.###.####.....#.#..####.#.#.##..#","###..##...#...#.###.#.#####.#.#.#.",".##...#...#.##.###..#.#.#.###.....","##.###.#.#####.###.##....##..#.#..","#..####..#..##....###.##..#..####.",".#...#.#..####.##..###.#...###.#.#",".###.##.##..#######.##.#..####.#..",".#.####....#.###..##.#......##.#..","..#.#.##.######..##.###.##..###...","##....#.######.###.#####........##",".######.##.##..#.####.#.######.##.","..###..#..#.##..#..#.#.#..#.#..##.","##..#...#.##..##..####.##..####...",".###.#..##....###..#....#.##.###.#","#..#..#.#######.#.#...##.#.###....",".#.#.##.....###.#.####.#..#......#","..#.##.......##...#.#.#.#...##..#.","..#.#....#...####.#..##..#...##..#"}

    Returns: "Neither"

  21. {"..##...#.###..##..",".###..#.#...#.###.","#.....##..#.#....#","#.##..######..##.#","#..#..##.#..#.#..#"}

    Returns: "Neither"

  22. {".##...#..###","###.#####...",".#.##..#..#.","#.##.#.#####","#.#####..#..","..#...##.#..","##..##..#...","###.#.#..###"}

    Returns: "Neither"

  23. {"##.#..####...#..#....#....#..#.#.#.#..#.##.#.##",".#####..#.###.####....##..##.#####.#.#..######.",".###..#.###.#####..#.#.#.###..#..#......####...",".##..##....####..###......###..###.....#....#..","##.#..#..#.#......###..#..###..##.#...##.#.....","...##..#.#.###.#.....#..##....##.#.##.#.#.##.##","##.###.#.#######.##.###.###....#.#.##...#####..",".###.##.#..##.###.#.#....###..##......#.#...###","#.#.#.###....#...#.#.#...#..#.#...#...###...###","###.###.#.#.#....##.#...##.##...#...#..#...##..","#####..#.###...###..######.##....##..#####..###",".########......#.##.....###.##....#...##.#.##.#","....##..#.#..##.#.#.#..#..#####..##.#####..####",".#....####..####....#........###.####..###.###.",".#.##.#.####.##.....#....##...#..###.#.##..#..#","#..##.#.####.#.####.##.###.#.........#......#.#","##.#.#.#####.#.#.#...#..##.##.##.###...##....#.","#.##.#...##.###..##..#.####.###.####.######..#.","#.###...###.#..##.....#.#..#.#.###...###.#.##..",".#..##..#..#.#.##.##...##.#.########..##...##.#","....#....#...####....#..##.##.#...#.##....##...",".#..#####..#..##.#.#..###..##..##.##.##...###.#","...#.#.##.######.#..##.##..##..#.###.#....#.#..","##.##.##..#.####.#.#....#....###....########.##",".##.#####.###.##..####.#......##...##.#.####.##","#.#..#####..#.###.#.#.#####...######.#..#...#..",".###....#..##.#..#..##.##........#.#.#..#.##..#","#...#.###..#.#.##...##...#.#..#.#...#....##.###","..#.#..##.#..#.#..######.....#....##.###....#.#","..##.###.#.#.....#......##...#...##.###.######.","###......#.#.##.#.....#..###.##..#..###..#.##.#",".#.###..###.####.#..#.#....#.#####.##.....##.##","###......##..#..#.###.#...###.##..#.#.#.#.##...","###...##.#..#...#.#####.#.#.#..##...##...#.##.#","...#.##.##...##.....#...####.#.#.####.##....#..",".#...#....##.##.##.#####.#.#.#..##..#.##....#.#","#.##..#.##.#.#.#......##.###.#.#..#.######...##","#..##.#..##...###.##....#..#.#..###.....####.##","....##.......#...####.#..##.##..##..##.###...##","#.#.###.......#..#.#..##.#.######..#..#....#..#","...##......#####...####.##.#.########....#.#.#.","##.#....#.....##.##..#.##..#.....##.#.#.#.###.#","..##....#..#..#.....##..##..#.#..#.##.#..####..",".###.#..####.#.....#.......#######.....#...#.#.","...####...##.##.####...#.#..##...#..#..##..##.#","#..#####....##...##....##...####..##..##..#...#",".....#...##.##...#.##....###.#...###.#..###..#."}

    Returns: "Neither"

  24. {"...##..##...","............","#.########.#","#.##....##.#","##........##","##..####..##",".##.####.##.",".##.#..#.##.",".#.##..##.#.",".##.#..#.##.","##...##...##","###.#..#.###","#.########.#","..#..##..#..",".#..#..#..#.","##.######.##","...######...","..##.##.##..","############",".##########.","....####....","#####..#####","..###..###..",".#.#.##.#.#.","...##..##...",".##......##.","..#.#..#.#..","#....##....#","..##....##..","###......###","#..######..#",".#...##...#.","####.##.####","..#..##..#..","#..........#",".#...##...#.",".#...##...#.","####.##.####",".#.#....#.#.",".#.#....#.#.","##........##",".##..##..##.","....#..#...."}

    Returns: "Vertically symmetric"

  25. {"#.#.#.#.##",".....#.#.#",".#...#..##","..#...#..#",".##...##.#",".#.#..###.","##.#.....#","##....##..","###..###.#","###..###.#","##....##..","##.#.....#",".#.#..###.",".##...##.#","..#...#..#",".#...#..##",".....#.#.#","#.#.#.#.##"}

    Returns: "Horizontally symmetric"

  26. {"..###...##..#..##...###","#...#.##....##...##....","##....##...#...###..#.#","#####..##..##.##..###.#","..##.......#.#..###.###","#..###...#...#...#..#..","#...#....#.###.#.#.##..",".#..#.##....#.....#.#..","..#.###.#####.##..#.#.#","#...############...#...","#..#...##..#...#....###","...#.#####.#...###.##.#","#...#..#...#.#.##.##.##","...###..#.#...#.##..#..","###..#.#.#..###.#....##","#.#...###.###########..","##...##.###..#..#.##.#.","..##....#...##...###...",".###...####....##..###.","#.#.##.#.######........","..##......##.#...###.##"}

    Returns: "Neither"

  27. {"#######..#..##...####..","#.####..#.####...#..###","##....##...########..#.","..##.#.##..##..#.......",".#.##..#.##.#.####.#...","#.#.#.#.#...#.###.#..#.","##...##.#.###..#.#...#.","#...#..#####...##.###.#","####.......###..##....#","##..#..#.##..###.##..##",".#..#.#.##..#####.#####",".###.#.#....####..#.##.","#..#.#.###..###....##..","##....#...#..#..##.....","##.###......#.###.#..#.","#..####.#.#..#.#...#...","#.##..#.#.##..#..###..#",".##..#.#..#..######...#",".#.#...####.......#.###","##.#..#..#.....##.####.","..##....#.###.##.#.#.#.","##..#.####.#...#.#.#...","#.#.#....#.####.###....",".....#.#...###..#.#...#","..##......###...###.#.#","..###.##....#...#..####","#..##...#...#.#.##..##.","#.#..##.#......#......#","#..###.##.#.######.##..","##..#...#..#...#.#.....","....#..#.#######..#...#",".##.#.#.####.##..#..##.",".####.###.###...#..###.",".#..#.##.#.##.#..##....",".##...#..###..#.#..#.#.","##..#..######.###.##..#","...#####....##.##......","##.#.#.###.#....##.#.##","###.##..#.#....###.#..#"}

    Returns: "Neither"

  28. {".##.###..#..##...####..###...#.#..#.#.###.","....##..#.####...#..####...#..##.#..##..##","......##...########..#.##.###.##..#.#..##.",".##..#.##..##..#.......#...#.#...###.#.#.."}

    Returns: "Neither"

  29. {"#.###.###....#.#.#.#........#.#.#.#....###.###.#",".#######..#.##....##........##....##.#..#######.","..#....###.##..####.##.##.##.####..##.###....#..","#..#...#.##..##...###..##..###...##..##.#...#..#","##.########....#...#.#....#.#...#....########.##","#......##.#..##..#.#.##..##.#.#..##..#.##......#","..#..#..##...###.##..#.##.#..##.###...##..#..#..","###...###..##..##.####.##.####.##..##..###...###","..##..#..##.##.#.#..##.##.##..#.#.##.##..#..##..","###.#.#......#.##...#......#...##.#......#.#.###","###.#...###.#..##..#.##..##.#..##..#.###...#.###","###.#.#.##.#.#..#...###..###...#..#.#.##.#.#.###","###..#.###.#....###.########.###....#.###.#..###",".###.##....#.###.#.#.#....#.#.#.###.#....##.###.","###.....#.###.#..#####....#####..#.###.#.....###","###.....#.###.#..#####....#####..#.###.#.....###",".###.##....#.###.#.#.#....#.#.#.###.#....##.###.","###..#.###.#....###.########.###....#.###.#..###","###.#.#.##.#.#..#...###..###...#..#.#.##.#.#.###","###.#...###.#..##..#.##..##.#..##..#.###...#.###","###.#.#......#.##...#......#...##.#......#.#.###","..##..#..##.##.#.#..##.##.##..#.#.##.##..#..##..","###...###..##..##.####.##.####.##..##..###...###","..#..#..##...###.##..#.##.#..##.###...##..#..#..","#......##.#..##..#.#.##..##.#.#..##..#.##......#","##.########....#...#.#....#.#...#....########.##","#..#...#.##..##...###..##..###...##..##.#...#..#","..#....###.##..####.##.##.##.####..##.###....#..",".#######..#.##....##........##....##.#..#######.","#.###.###....#.#.#.#........#.#.#.#....###.###.#"}

    Returns: "Both"

  30. {"#.##......#.#..##########..#.#......##.#","###.##...##.#.#..##..##..#.#.##...##.###","###..####...#.##.#.##.#.##.#...####..###","###.#....###...##..##..##...###....#.###",".#####....##....#.####.#....##....#####.","#.###..#..#....##..##..##....#..#..###.#","#####..#.####..#..#..#..#..####.#..#####","..#..#...####.##..#..#..##.####...#..#..","###.##.#.#.##.##.#.##.#.##.##.#.#.##.###","##..#.##.#..#..##########..#..#.##.#..##","#..#...#####.##..........##.#####...#..#","##.....##...#.#####..#####.#...##.....##","#.##.##.#.##..##.#.##.#.##..##.#.##.##.#","##.###.#.###.#.##########.#.###.#.###.##","##.##.#..##..##.#.#..#.#.##..##..#.##.##","#.....##.##.####.######.####.##.##.....#","..#...#####.#..#..#..#..#..#.#####...#..","...##.#....##..#.##..##.#..##....#.##...",".#.####.#.###.####....####.###.#.####.#.","....##.####.###.##....##.###.####.##....","..#.##.###.###..#.####.#..###.###.##.#..",".#.#.###.##...##.#.##.#.##...##.###.#.#.",".#.#.###.##...##.#.##.#.##...##.###.#.#.","..#.##.###.###..#.####.#..###.###.##.#..","....##.####.###.##....##.###.####.##....",".#.####.#.###.####....####.###.#.####.#.","...##.#....##..#.##..##.#..##....#.##...","..#...#####.#..#..#..#..#..#.#####...#..","#.....##.##.####.######.####.##.##.....#","##.##.#..##..##.#.#..#.#.##..##..#.##.##","##.###.#.###.#.##########.#.###.#.###.##","#.##.##.#.##..##.#.##.#.##..##.#.##.##.#","##.....##...#.#####..#####.#...##.....##","#..#...#####.##..........##.#####...#..#","##..#.##.#..#..##########..#..#.##.#..##","###.##.#.#.##.##.#.##.#.##.##.#.#.##.###","..#..#...####.##..#..#..##.####...#..#..","#####..#.####..#..#..#..#..####.#..#####","#.###..#..#....##..##..##....#..#..###.#",".#####....##....#.####.#....##....#####.","###.#....###...##..##..##...###....#.###","###..####...#.##.#.##.#.##.#...####..###","###.##...##.#.#..##..##..#.#.##...##.###","#.##......#.#..##########..#.#......##.#"}

    Returns: "Both"

  31. {"....#.####.#.#..#...###....###...#..#.#.####.#....","##.#..#..##.###..##....####....##..###.##..#..#.##","#..####..##..#..#..####.##.####..#..#..##..####..#","..#.#.###.#.##...##..#.#..#.#..##...##.#.###.#.#..",".#.#....#..#..####.##..#..#..##.####..#..#....#.#.","###........#.#####..#...##...#..#####.#........###","####..#.##.#.#.#####.########.#####.#.#.##.#..####","...#...##..##..#.#..##########..#.#..##..##...#...","#..#..##.#####.##..##.##..##.##..##.#####.##..#..#",".#.######......##.#..#......#..#.##......######.#.","##.#...####.#....#.....####.....#....#.####...#.##",".#...##.#.#####.##.....#..#.....##.#####.#.##...#.","..##....#.#####.####..........####.#####.#....##..","##..###.#######.##.###..##..###.##.#######.###..##","......##....#.#.##.#....##....#.##.#.#....##......","..##.#.#.##.####.....##....##.....####.##.#.#.##..","#.#...#.#..#.....#######..#######.....#..#.#...#.#","###..######.#####.#.###.##.###.#.#####.######..###","#.##.##.##..#...##.####....####.##...#..##.##.##.#",".#######...#.###.##...##..##...##.###.#...#######.","#.#####.#.##.#..##..#.######.#..##..#.##.#.#####.#","..###.#..####..#..#.#.#....#.#.#..#..####..#.###..","#..##........#.###..##.####.##..###.#........##..#",".##.#..#...#.####.#....####....#.####.#...#..#.##.","#...#####.#.#....#.############.#....#.#.#####...#","#.#.#.##......#.###.#.#.##.#.#.###.#......##.#.#.#","##.#..##.#..#.....###........###.....#..#.##..#.##","..##....#..##..#####....##....#####..##..#....##..",".#...##.#...#.##.###....##....###.##.#...#.##...#.",".......##.#..#.##.#.#.##..##.#.#.##.#..#.##.......","#...#....#..#..#.####..#..#..####.#..#..#....#...#","..#####..#.#.##...#####.##.#####...##.#.#..#####..","#..#.#####.#.#......#.#....#.#......#.#.#####.#..#","..##.....#.#..##.###.#.####.#.###.##..#.#.....##..","..###..#.####..#..#.##......##.#..#..####.#..###..",".####..#....#.###.....######.....###.#....#..####.","#.....###.....##.###.##.##.##.###.##.....###.....#",".#.#.....#.##...###............###...##.#.....#.#.","..##.#..##.#.#.#.#.#.#......#.#.#.#.#.#.##..#.##..",".###.#.....#.###.###....##....###.###.#.....#.###.",".##...##.#.#.#.....#.##....##.#.....#.#.#.##...##.",".####.####..#####.#...######...#.#####..####.####.",".####..####.#.#..####..#..#..####..#.#.####..####.","#...#.#.#.##..##....####..####....##..##.#.#.#...#"}

    Returns: "Vertically symmetric"

  32. {"#.#...#.#.#.#.#...#.#","#....#.##...##.#....#","##.###.#.....#.###.##",".##.##.#..#..#.##.##.",".#.#.##..#.#..##.#.#.","....##..#...#..##....","....#.#..###..#.#....","#.#....##...##....#.#",".##..#.#######.#..##.",".#....##.###.##....#.","#..##.#.#####.#.##..#","#..#.#.#.###.#.#.#..#","##...#..#####..#...##","#.#.#####.#.#####.#.#","..#..##.#.#.#.##..#..","......##.###.##......",".##..##.#.#.#.##..##.","##.#..#..#.#..#..#.##","##..######.######..##",".####.##.....##.####.","....#############....","#..#.#.........#.#..#",".#...##.#...#.##...#.","......#.#####.#......",".###..#...#...#..###.","...#....#####....#...","##.####...#...####.##",".#.#.###.###.###.#.#.","###.######.######.###","#.#.##.........##.#.#",".##.#####.#.#####.##.","##.####.##.##.####.##","....#.###.#.###.#....","###.#.####.####.#.###","#####....#.#....#####","#.##.####.#.####.##.#","#.###.###.#.###.###.#",".###.####.#.####.###.","..#......###......#..","#.####..##.##..####.#","#####################","#..##.#.#.#.#.#.##..#"}

    Returns: "Vertically symmetric"

  33. {".#...#..##.#.###..###.#.##..#...#.","##..#...#...#........#...#...#..##",".#.#.####.#...#....#...#.####.#.#.","...##..#...#..........#...#..##...",".#..#.#.#..###.#..#.###..#.#.#..#.",".#..#####.#.##..##..##.#.#####..#.","#.##..###...#.##..##.#...###..##.#","#.##.#...##.....##.....##...#.##.#",".#.....#..##....##....##..#.....#.",".###..####..###.##.###..####..###.","....##.......#.#..#.#.......##....","...#..####..##########..####..#...","####.##...###.#.##.#.###...##.####",".#.#.#.#.#.###.####.###.#.#.#.#.#.","###.##..##..###....###..##..##.###","....##.......########.......##....","###.##..##..###....###..##..##.###",".#.#.#.#.#.###.####.###.#.#.#.#.#.","####.##...###.#.##.#.###...##.####","...#..####..##########..####..#...","....##.......#.#..#.#.......##....",".###..####..###.##.###..####..###.",".#.....#..##....##....##..#.....#.","#.##.#...##.....##.....##...#.##.#","#.##..###...#.##..##.#...###..##.#",".#..#####.#.##..##..##.#.#####..#.",".#..#.#.#..###.#..#.###..#.#.#..#.","...##..#...#..........#...#..##...",".#.#.####.#...#....#...#.####.#.#.","##..#...#...#........#...#...#..##",".#...#..##.#.###..###.#.##..#...#."}

    Returns: "Both"

  34. {"..##...#.#.#...##..",".###..#..#..#..###.","##...##..#..##...##","########...########","##.##...###...##.##","..#....#...#....#..","#...##.#.#.#.##...#","#.###############.#","#.#..#.#...#.#..#.#","..#..#########..#..","..#......#......#..","###...#.#.#.#...###","#.###.#.#.#.#.###.#",".#...###...###...#.","...#.###.#.###.#...","....#..#####..#....","#..#..#.....#..#..#",".##.#...###...#.##.",".###.#.......#.###.","###..#.#...#.#..###","##.#.#..###..#.#.##","..##.##..#..##.##..","#..#...#####...#..#",".##.###.....###.##.","###.###########.###","##..#.###.###.#..##","...##.........##...","....#.#.###.#.#....","##.##.#.###.#.##.##","..###.##.#.##.###..","#.##..###.###..##.#","#.##.##.#.#.##.##.#","...#####...#####...","...##.#..#..#.##...","....#.#..#..#.#....","#.##...........##.#","....#...###...#....",".#...##.###.##...#.","#..###.......###..#","####..#..#..#..####",".###...#...#...###.",".#.#...#.#.#...#.#.","..#.#..#####..#.#..","##.......#.......##","..##.#..#.#..#.##..","#....##..#..##....#",".#.#..#######..#.#.","##.##....#....##.##",".#.##..#.#.#..##.#.","#.####...#...####.#"}

    Returns: "Vertically symmetric"

  35. {"#.##...#.#.#...##..#","#.##..#..#..#..###.#"}

    Returns: "Neither"

  36. {"##.##..#..#.##..#..#.#.#..#.#.#..#..##.#..#..##.##","#.#..#...####.##...#..######..#...##.####...#..#.#",".#.##.#..##.##...##..#.####.#..##...##.##..#.##.#.","#.....##.#.##..#..#....#..#....#..#..##.#.##.....#","..#.#.#..##...#....#.#..##..#.#....#...##..#.#.#..","###..###..######...#.##.##.##.#...######..###..###","#....###....#######.#.######.#.#######....###....#","####.##.#..##.###...##########...###.##..#.##.####",".##############.#..############..#.##############.",".###.#.#.#####...#..#..####..#..#...#####.#.#.###.","#.#####.###...#...#.##.#..#.##.#...#...###.#####.#","..#.#.##.####....##.###.##.###.##....####.##.#.#..",".##...##.#.#.######.#..####..#.######.#.#.##...##.","#.##.##.###...#.#.#.##......##.#.#.#...###.##.##.#","...###..##.#####.###..#....#..###.#####.##..###...","#.##......#........#...#..#...#........#......##.#",".#.#...###....#..#####......#####..#....###...#.#.",".##.#...###...######...#..#...######...###...#.##.","..##....#...#.###..###......###..###.#...#....##..",".#.####.#......##...####..####...##......#.####.#.","..#.#.###..####...###..####..###...####..###.#.#..","#.#...###.##.#####.####.##.####.#####.##.###...#.#","..#.###.#....#.##...#.#....#.#...##.#....#.###.#..","###..#.....###..##.##.######.##.##..###.....#..###","##.#.##.###...#..##..##....##..##..#...###.##.#.##","#####..####..##.##.##...##...##.##.##..####..#####","##.#..######.###...#.#.#..#.#.#...###.######..#.##",".#....####.###.###.###......###.###.###.####....#.","..###..##.#.#..###.###.#..#.###.###..#.#.##..###..","..#....#.##.###.#.###.#....#.###.#.###.##.#....#..","##.#....###.###..####...##...####..###.###....#.##","###.##.#.#..#...#.#.#.#.##.#.#.#.#...#..#.#.##.###","#......#.###.#.#...#.##.##.##.#...#.#.###.#......#","#.#.#..####.#.#.....##..##..##.....#.#.####..#.#.#","##..#.##.....#.#.#.....####.....#.#.#.....##.#..##"}

    Returns: "Vertically symmetric"

  37. {"####.###.#.####...##.......##...####.#.###.####","..##########..#..##..#####..##..#..##########..","..#..#....#.#..##.##.#####.##.##..#.#....#..#..","####.####.#...#.###..#...#..###.#...#.####.####","##.....##.#.#.#.#.###########.#.#.#.#.##.....##","#.#.#.#.......###....#...#....###.......#.#.#.#",".#.......##.#...##...........##...#.##.......#.",".#....##......#.#.#.........#.#.#......##....#.","###.####.#...##.#..##.###.##..#.##...#.####.###",".#......#...##..#.....#.#.....#..##...#......#.","..##..##.#.#...##...#..#..#...##...#.#.##..##..","#.#...#...####.#####.#...#.#####.####...#...#.#","###.###...####.#.#.####.####.#.#.####...###.###","###.##..#.##.#.#.##..##.##..##.#.#.##.#..##.###","#.###.##.######.#....#...#....#.######.##.###.#","#..#.....#..#....#.#..#.#..#.#....#..#.....#..#",".###.#...#.#...##.............##...#.#...#.###.","..#.#.##..#.....#.#####.#####.#.....#..##.#.#..","###..##.###...#.#.#..#.#.#..#.#.#...###.##..###","......###..#..#.#..#..###..#..#.#..#..###......","......#.##.#...#....#..#..#....#...#.##.#......","....##.###......#.#.##...##.#.#......###.##....",".#.###.##..#...##.#..#####..#.##...#..##.###.#.","#.#.####.#..#..####.##...##.####..#..#.####.#.#",".#.###.##..#...##.#..#####..#.##...#..##.###.#.","....##.###......#.#.##...##.#.#......###.##....","......#.##.#...#....#..#..#....#...#.##.#......","......###..#..#.#..#..###..#..#.#..#..###......","###..##.###...#.#.#..#.#.#..#.#.#...###.##..###","..#.#.##..#.....#.#####.#####.#.....#..##.#.#..",".###.#...#.#...##.............##...#.#...#.###.","#..#.....#..#....#.#..#.#..#.#....#..#.....#..#","#.###.##.######.#....#...#....#.######.##.###.#","###.##..#.##.#.#.##..##.##..##.#.#.##.#..##.###","###.###...####.#.#.####.####.#.#.####...###.###","#.#...#...####.#####.#...#.#####.####...#...#.#","..##..##.#.#...##...#..#..#...##...#.#.##..##..",".#......#...##..#.....#.#.....#..##...#......#.","###.####.#...##.#..##.###.##..#.##...#.####.###",".#....##......#.#.#.........#.#.#......##....#.",".#.......##.#...##...........##...#.##.......#.","#.#.#.#.......###....#...#....###.......#.#.#.#","##.....##.#.#.#.#.###########.#.#.#.#.##.....##","####.####.#...#.###..#...#..###.#...#.####.####","..#..#....#.#..##.##.#####.##.##..#.#....#..#..","..##########..#..##..#####..##..#..##########..","####.###.#.####...##.......##...####.#.###.####"}

    Returns: "Both"

  38. {"....#...##...#.#.#...###.####..","#..####.#.##.....#...#.##.####.","###.....###..#.##.##.###...##.#","##.#.#.#..#...#..#..###.##.####","#.......#.##....###.###.##..#.#",".#.##....#.#.#.##.#.#...###...#","#.#.##.#.########............##","######.##..##..#....##.#..#.#.#","###.###.#.#####...##.#..###...#","..#.#...##...####.##.##..###..#",".#....###.#.#........##..#....#",".###..#.#..###.##..##......####","##.....#.#.....#.###..##.#...#.","..###..#.##.##.##...#.#..#..##.","..###..#.##.##.##...#.#..#....#","##.....#.#.....#.###..##.#...#.",".###..#.#..###.##..##......#..#",".#....###.#.#........##..#..#.#","..#.#...##...####.##.##..####.#","###.###.#.#####...##.#..###...#","######.##..##..#....##.#..#....","#.#.##.#.########...........#.#",".#.##....#.#.#.##.#.#...###.#.#","#.......#.##....###.###.##..###","##.#.#.#..#...#..#..###.##.##.#","###.....###..#.##.##.###...##.#","#..####.#.##.....#...#.##.##...","....#...##...#.#.#...###.###..#"}

    Returns: "Neither"

  39. {"###..#.##.#..#..##...##..#..#.##.#..###","##..#..#.###.#...........#.###.#..#..##","...##.####...#.####.####.#...####.##...","...#...##..#...##.....##...#..##...#...","#....###.######.#.###.#.######.###....#","#.#...#####.#.##...#...##.#.#####...#.#","##..##.##.##...#...#...#...##.##.##..##","##.#.##.##.#..###.....###..#.##.##.#.##",".##...###..##.####...####.##..###...##.","#.##.....#.#.#.#.#.#.#.#.#.#.#.....##.#","..##.#.#..##....#.....#....##..#.#.##..","##.##.######..#....#....#..######.##.##","..#...##.#.####.#.###.#.####.#.##...#..","..#...##.#.####.#.###.#.####.#.##...#..","##.##.######..#....#....#..######.##.##","..##.#.#..##....#.....#....##..#.#.##..","#.##.....#.#.#.#.#.#.#.#.#.#.#.....##.#",".##...###..##.####...####.##..###...##.","##.#.##.##.#..###.....###..#.##.##.#.##","##..##.##.##...#...#...#...##.##.##..##","#.#...#####.#.##...#...##.#.#####...#.#","#....###.######.#.###.#.######.###....#","...#...##..#...##.....##...#..##...#...","...##.####...#.####.####.#...####.##...","##..#..#.###.#...........#.###.#..#..##","###..#.##.#..#..##...##..#..#.##.#..###"}

    Returns: "Both"

  40. {".....##..###..##..##.###.##..##..###..##.....",".##.#...##.#......#.#.#.#.#......#.##...#.##.",".##.#...#..#..##.#.#..#..#.#.##..#..#...#.##.","#.#.##.#.##..###.#...#.#...#.###..##.#.##.#.#","###....########.##.#.....#.##.########....###","....##..#.......###.##.##.###.......#..##....","....#..#...#####.#####.#####.#####...#..#....","#.#..#.#..###.#......###......#.###..#.#..#.#","##.##.##..#..#.#.#...#.#...#.#.#..#..##.##.##",".##.###.#..##...###.#####.###...##..#.###.##.",".####..###..##..####.....####..##..###..####.","#.###....#.##.##.#.##...##.#.##.##.#....###.#",".####..###..##..####.....####..##..###..####.",".##.###.#..##...###.#####.###...##..#.###.##.","##.##.##..#..#.#.#...#.#...#.#.#..#..##.##.##","#.#..#.#..###.#......###......#.###..#.#..#.#","....#..#...#####.#####.#####.#####...#..#....","....##..#.......###.##.##.###.......#..##....","###....########.##.#.....#.##.########....###","#.#.##.#.##..###.#...#.#...#.###..##.#.##.#.#",".##.#...#..#..##.#.#..#..#.#.##..#..#...#.##.",".##.#...##.#......#.#.#.#.#......#.##...#.##.",".....##..###..##..##.###.##..##..###..##....."}

    Returns: "Both"

  41. {".###.#....####.####.#####.#.##.#....#..#.","#..##.#.#..####.###..#.##.#...#.#.#...#..","##.####.#.....##..#.#.#....#.##.#.#######",".....#...##.......#.##...###.#.###.#.....","#..##..#..#...##.###..#...###..#....##.#.","####...#.###...##.##..#.#...##....##..#..","#..###.#.#########....#.#....####.#......","......###.####.#....#.###....#..#.#######",".#...##.##..####...#...####.###.##...##..","..#####..#.########.#...###.#...#....###.","#.####...#####.###...#...#.#....#.#.#....",".###....###..###.##.###...#.....#.##....#",".##.###...####...###.##.###.#.#......#.#.","#.###..#..###..#...###...##.##.##.##....#","#..###.###...##....#.....##.#..#.##......","#..##.####..##......#..#.#..#.##.##...###","#..#..##.#.#..###########.#.##.##.#...##.",".####....######..##....###..#.####.###..#",".#...#..#..###...##.#.####...#.#####.####","#..##....###..#.###.......#.#.##..#.###.#","...##.#.###.#.###.##..########.#.##...###","##.##...#.#..####.##.#.#.#.#....#..###..#","##..#...#.##.#..##..#.#..#.#.#.....#...##","#.####......##...##..#.#.#.....##.###.###","#.#.#.##...##..#.###.##...#.#......#.#...","#....#...###.#.....##..#.#.###..#..#.....","..##..#.#..#.#.#.###..........####.#.###.",".##.##.#.##....#.##..##.#.#.#.#..#....#..","...#.#..##.###..######.###.....##....####","####..#####...#.##..#....#..######....#..",".....###.#.....#.#..#.#.##.#..##....#.###","##...#..#.....########..#####..#.#...#.#.","..#....#..######.#.#.###..###..##.##...##",".##..#.#.#.....##...#....###....#.#....##","#.#.....#.......#..#.#.#..#.#...#.####..#",".##....#.#####.###..#.#####.#.####...###.","#.#..#.......#..#..######..#.#..#....####","#.....#.#...#.##..#.###.###.##..#.#..##.#","#####.########.#####.#..#.##.#....#....##","#.......##.##...#..#.#.....#.....##.#...#",".###.##..#.####...#.#.#.##.##.###.#.#.#.#","...#...#...#######..####....#.....##.###.",".#.#.#.###....#....#.#..#####...######.#.","..#.###.###.##.###..#.....#...#.#.......#",".....#.###.####.##.#..###...#....####...#","#..#.##..#.###.###..##..#.#..##..#.##.###","#.##..#.......#.##.....####..##..........","#...##.#.#.#.###.##.####.##.##.#.##...#.#",".##.#..#......#####.#..#####.....#.#.#.#."}

    Returns: "Neither"

  42. {".#...#.#####..#.#....#.#####..#",".##....#####..#.....####..#.#.#","#...#.#.####.#....#..###.####.#","#....##.###.#..###.#...#.#.###.",".#......#.######..#...........#","#..#.##..#.#.#.##.#..#..##..###","#...#.######..##......##...####","..#..####.#...#.....#.#.##..###","#.#.##...####.#.........#.####.","#.#...#.##.#####....#####...##.",".#........#####..########....##",".#...#..#.##.#.#.##.#..########","..#..##..#....#..##.......##.##","#.####..###...........#.##.##.#","..###.##.##.....#...#.##..####.","....##.##..#....#...#.####.#..#","#.##.###.#..###....#.########..","##...#.###.#...######.#....##.#","..#.#..####..##.##..###.#####..",".#.##.#..##.###.#..#..####.#..#","..###.##..####.....#...##..###.","#.#...#..####..#.#.#..##..###.#",".##...##..#...#....##.#.#...#.#","#....####......##..#..#.#.##...","#.####.###.########.#.##..#####","...###..#####..#.#..###.#...#.#","######..###.#.....###..#.##...#",".#####.##.##..#.###.#######....","##..#.#...##.#..#.##....##...#.","##.....##.#...###...#.##.###...",".###.####...######.###.#.#####."}

    Returns: "Neither"

  43. {"..####","#.##.#","#.####","....##","#.###.","######",".#....","....##","#####.","###...","###...","#####.","....##",".#....","######","#.###.","....##","#.####","#.##.#","..####"}

    Returns: "Horizontally symmetric"

  44. {".#.###..#.###.##.#.#.#..###.#.",".#.#..#.######.##..###.#..#.#.","###..###....#....##...###..###","#.##....#.####.#..##.#....##.#","...##.####.##.##....####.##...","##.##..##..#.#...#...##..##.##","####.##.#..##..#.##..#.##.####","....###..#..#...#.#.#..###....","..###.##...#.#.##.....##.###..","#.#....##.##.#...###.##....#.#","#.####.##..#.#...##..##.####.#"}

    Returns: "Neither"

  45. {"#....#.###.###.#######.###.###.#....#","##.#.########.#...#...#.########.#.##","#.###.####.###.........###.####.###.#","#..#.#..##...###.###.###...##..#.#..#","##..#..##...###.#.#.#.###...##..#..##","#.###..#..####.#.....#.####..#..###.#","##.#.##...#.#############.#...##.#.##","###.##.###....##.#.#.##....###.##.###",".#..#.#..#####..#...#..#####..#.#..#.",".#..##.#..#.#.##.###.##.#.#..#.##..#.","##....#..#.#...##.#.##...#.#..#....##","#..#..#...####.#.###.#.####...#..#..#",".#.....#.#..###..#.#..###..#.#.....#.",".#.##.#.#..#...##.#.##...#..#.#.##.#.","#..####..#####.##.#.##.#####..####..#","##.#.#.##.#####.##.##.#####.##.#.#.##","##...####..##.###.#.###.##..####...##","...##....#..#############..#....##...",".#..#....#######.#.#.#######....#..#.","#.#.##.#.##.##.##.#.##.##.##.#.##.#.#","#####...####.###.....###.####...#####","##.####...##.#.##...##.#.##...####.##",".####..####...#...#...#...####..####.",".####..####...#...#...#...####..####.","##.####...##.#.##...##.#.##...####.##","#####...####.###.....###.####...#####","#.#.##.#.##.##.##.#.##.##.##.#.##.#.#",".#..#....#######.#.#.#######....#..#.","...##....#..#############..#....##...","##...####..##.###.#.###.##..####...##","##.#.#.##.#####.##.##.#####.##.#.#.##","#..####..#####.##.#.##.#####..####..#",".#.##.#.#..#...##.#.##...#..#.#.##.#.",".#.....#.#..###..#.#..###..#.#.....#.","#..#..#...####.#.###.#.####...#..#..#","##....#..#.#...##.#.##...#.#..#....##",".#..##.#..#.#.##.###.##.#.#..#.##..#.",".#..#.#..#####..#...#..#####..#.#..#.","###.##.###....##.#.#.##....###.##.###","##.#.##...#.#############.#...##.#.##","#.###..#..####.#.....#.####..#..###.#","##..#..##...###.#.#.#.###...##..#..##","#..#.#..##...###.###.###...##..#.#..#","#.###.####.###.........###.####.###.#","##.#.########.#...#...#.########.#.##","#....#.###.###.#######.###.###.#....#"}

    Returns: "Both"

  46. {".#......##.###.#######",".#......#####.#...#...","#..#.#..##.###........","..##.#.###...###.###.#","...######...###.#.#.#.","..#..###..####.#.....#",".#.#.###..#.##########","#.#...####....##.#.#.#"}

    Returns: "Neither"

  47. {"##","..","..","..","..","..","..","##","..","..","##","..","..",".."}

    Returns: "Vertically symmetric"

  48. {"..##..","#....#",".#..#.",".####.","#....#","##..##","######","#....#","#.##.#",".#..#.","#.##.#","......","..##..","#.##.#","..##..","##..##","......",".####.",".#..#.","..##..","#....#","#....#","......","######"}

    Returns: "Vertically symmetric"

  49. {"..#..##.###..##.##...#","#.##.#.##.......#.#..#","##..###.##..###..#.##.","....#.##.#.#.#...#.##.",".##.#...#.#..#..####..",".###.##..###....#.#...",".#..#.#...#.##...#.#.#",".#..#.#...#.##......##",".###.##..###..##.####.",".##.#...#.#..####.#.##","....#.##.#.#.#..#.#..#","##..###.##..##.###..#.","#.##.#.##........##.##","..#..##.###..#..#.###."}

    Returns: "Neither"

  50. {"###..##.###..##.##...#####.###.#.#.#..#.#..",".###.#.##.......#.#..#.#########....##.#..#"}

    Returns: "Neither"

  51. {"###.##...##...#.......","..#....##.###.#.#.#.#.","#####.#.#.#...#####.#.","#.####.#.####..#...#..","#.##.###.#.#.######...",".#..#..##.##.#.#.#..##",".#########.#.#..###.#.","...##.#.#...###.#.#.#.","#####.....##..##..#..#","##......########.#.###",".#.#.#......#..#######","#.##.##.#####..##.#...",".#..#..#..#.....#.#...","#.#####.##.#.....#####",".##..##..#..#.##....#.","...#..##.####.#.#.#...",".#####..#..###.#.....#","##.#######.......##.##","###...#.##.#.#..####..","###.#.#..#......#....#","..#.#..#####....###..#",".##...#...##.#.######.",".##...##.#.#...####.##","..#...#.####...#.###..","#.####....##.#####.##.","####.##...##....#####.","##.#.#.###.####.#...#.","##.##......######.#.#.","###...##...#.....#####","##.#..##.####.....#...","..#......#.#.#..###.#.","#.##.#.#.##..#.#...##.","..###.#..###.#####.#.#","#....####.#.#...###...",".##..#...##..#.#...#.#",".#.#.#.##.#..#..####.#","#..#...########..#.#..","##.#..#...#####.##...#"}

    Returns: "Neither"

  52. {"#...##...#","..##..##..","##.####.##",".#......#.","###....###","##########","###....###","..........","##########","..##..##..","###.##.###","###....###","##..##..##","#..####..#","#.#.##.#.#","####..####","#..####..#"}

    Returns: "Vertically symmetric"

  53. {".#...#####....#.#.....##..#.","#####.###.#...##..#.#..#.###","#..###.##....######.#.......","###.#####.###..#...#..######","##...##.....##.####...#.#..#",".#######.......#.#..##.####.","###...#..#...#.####.#..##...","###.##...#.#.###..#.#..#####","###.#..##..######.#..###..##",".#...###...##.#.##.###.##.#.","##.#.###...#..##.#####...###","#..........#.#....#...###.#.",".##.#.#..##.#..##.#....#####"}

    Returns: "Neither"

  54. {"###.#.#.....#.##..","##..##.#.#.....###","#####.##...#..#.##","###.###...#.#..#.#","#.####.#####.##...",".##.####..#.#.#...",".#..####...#......","....#.#..##.....#.",".###..##....#..#.#","...##.#.#####..#.#","..##.#...##.##..#.","#.###.#.#..####.##","..#.##.....#......","#..........##.#..#","##.##..##...#...#.","##.#...##.###.#.#.","...#.##.#.####..##","..##.#.#..#.#.#.##","#.#.##..##.....#..","#........#.##..###","...####...##.#.#..",".##..#.####..#..##",".....##...#.###...",".##.###..#...###..","###.##...#....##.#",".#..###.#..#...#.#","....##.#....#.#.#.","....##..####.##.##","....##..##.##..###","..##...#.......#.#","##..#####..##..#.#","#.##.....#.#..#...","#.###.##.#........","#.#.###.#..#..####","#...##.#######..#.",".#.#..#.#..#..####","..#.#.#.#..###.#.#","#.#..#.##..#...#..",".#.#.#.####..##.#.","...##...##...##.##","#..#####..#.##...#","..#.#.#..#.##...#.","..#.#.#.##.##..##.",".####..#....#.##.#","#....#.##.#..###.#",".........#.#..###.",".#...##.#..#.#.##.","###.##..#.########","....#.##.#..###..#","##...#...#.#..####"}

    Returns: "Neither"

  55. {"#.......###.####....####.###.......#","#.#..#..##.##..#....#..##.##..#..#.#",".#....###.#.##.#....#.##.#.###....#.",".##...#####.##...##...##.#####...##.",".#..###..##.#..........#.##..###..#.",".####..##..##############..##..####.","..#.###.#..##...#..#...##..#.###.#..","..#..##.#..##.##.##.##.##..#.##..#..",".#..#.#..#.####.#..#.####.#..#.#..#.","#.#.#.#..#...#.#....#.#...#..#.#.#.#","####......##.#.######.#.##......####","##....#.#.#...#..##..#...#.#.#....##","#.########.###.#.##.#.###.########.#","..#.....####.#...##...#.####.....#..","#.....#...#.#..######..#.#...#.....#",".#...#...#..##.#.##.#.##..#...#...#.","##.####....##.#.####.#.##....####.##","##....##.##..##.#..#.##..##.##....##",".#.###..##..##..####..##..##..###.#.",".#.##.....##.##......##.##.....##.#.","#####.####.######..######.####.#####","...#..#..##.###..##..###.##..#..#...",".#..##...###.#...##...#.###...##..#.",".#.....###.###..####..###.###.....#.","#.#..#.##.#.###.####.###.#.##.#..#.#","....#.#...##..#.#..#.#..##...#.#....",".#.#.#.###.#.#..####..#.#.###.#.#.#.","##...#.......#........#.......#...##",".##.#..#.#.#.....##.....#.#.#..#.##.",".##.##.#.#####..####..#####.#.##.##.","..####....#....##..##....#....####..",".##..#..#.######.##.######.#..#..##.","###....###.#..#.####.#..#.###....###","###..##.###..###.##.###..###.##..###","#..###.#..#.#..#....#..#.#..#.###..#","#.#...##.#.####..##..####.#.##...#.#","#....##......#.#....#.#......##....#","#.###.##.#..###......###..#.##.###.#","#....##..##..###.##.###..##..##....#"}

    Returns: "Vertically symmetric"

  56. {".#########...##.#.###.##.###.......#..#...",".##.##.##.####.####..####.##..#..#.####...",".#.###..#..#.##..###...#.#.###....#.##.#.#","####.##.#.#..#.#..####.#.#####...##.##....",".###...###....#.#.####.#.##..###..#.#.#.##","###.###..####..#.###...##..##..####.##.#..","#...#....#.#..##..##...##..#.###.#..###..#","#....###..#.###.##..#####..#.##..#..#..##.","#..##.#..#..##.##..#...##.#..#.#..#..##.##","####.#.###...#.#..#...#...#..#.#.#.##..#.#","#..###.####..#..##.###..##......####...#.#","##.#.#####...#.##.#...#..#.#.#....####.#..","#..###.####..#..##.###.##.########.###.##.","####.#.###...#.#..#...#.####.....#..#..###","#..##.#..#..##.##..#...#.#...#.....#....##","#....###..#.###.##..####..#...#...#.#.....","#...#....#.#..##..##...##....####.##...#..","###.###..####..#.###.....##.##....###..#.#",".###...###....#.#.####.#..##..###.#.##...#","####.##.#.#..#.#..####..##.....##.#...###.",".#.###..#..#.##..###...##.####.#######..#.",".##.##.##.####.####..###.##..#..#........#",".#########...##.#.###.#.###...##..#....#.."}

    Returns: "Neither"

  57. {"##","##"}

    Returns: "Both"

  58. {"#.##.#.....##....#..#..#....##.....#.##.#",".##.#.....#....##.##.##.##....#.....#.##.","###.##..#..#.##.##.#.#.##.##.#..#..##.###",".....#..#..##.#....###....#.##..#..#.....","#.####.#...#.#.#.........#.#.#...#.####.#",".###...###...######...######...###...###.",".#.#.........###.#.#.#.#.###.........#.#.","##.#.....##.###..#.###.#..###.##.....#.##",".##.#.#.##..####.##.#.##.####..##.#.#.##.","#..###..###.#.###.#####.###.#.###..###..#","#...#..#....##..#.#...#.#..##....#..#...#","#.#.#..##.#.#.##.#######.##.#.#.##..#.#.#","##..#####.###.#.##.###.##.#.###.#####..##","###.#####..##..###########..##..#####.###","###.#####..##..###########..##..#####.###","##..#####.###.#.##.###.##.#.###.#####..##","#.#.#..##.#.#.##.#######.##.#.#.##..#.#.#","#...#..#....##..#.#...#.#..##....#..#...#","#..###..###.#.###.#####.###.#.###..###..#",".##.#.#.##..####.##.#.##.####..##.#.#.##.","##.#.....##.###..#.###.#..###.##.....#.##",".#.#.........###.#.#.#.#.###.........#.#.",".###...###...######...######...###...###.","#.####.#...#.#.#.........#.#.#...#.####.#",".....#..#..##.#....###....#.##..#..#.....","###.##..#..#.##.##.#.#.##.##.#..#..##.###",".##.#.....#....##.##.##.##....#.....#.##.","#.##.#.....##....#..#..#....##.....#.##.#"}

    Returns: "Both"

  59. {".##.###.##.##....#..#..#..##.###.##.","###.#.###......##.##.##.#..###.#.###","###..##.#.##.##.##.#.#.###.#.##..###",".#.#..#..#.##.#....###....#..#..#.#.","####.##.####.#.#.........###.##.####",".#..#.#...#..######...####...#.#..#.",".##.......#..###.#.#.#.#.#.......##.","#.....#####.###..#.###.#.#####.....#","#.#...#####.####.##.#.##.#####...#.#","#..##....##.#.###.#####.###....##..#","#..##.#.###.##..#.#...#.####.#.##..#"}

    Returns: "Neither"

  60. {"#.#..##..#....#..##..#.#","##.#.##....##....##.#.##","##...#....#..#....#...##","#.#.#....#.##.#....#.#.#","#....#.##.#..#.##.#....#",".###..###......###..###.","#.###.#..######..#.###.#",".##..##...####...##..##.","####...#.######.#...####",".....##############.....","###..######..######..###","###...#..##..##..#...###","#..#####.#....#.#####..#","#.##..#...####...#..##.#","#.#.##..########..##.#.#","#...#.##..####..##.#...#",".###..#.###..###.#..###.","###.....########.....###","#####...###..###...#####","........##....##........","#.#..####.####.####..#.#","#.#.##..########..##.#.#","#....#..########..#....#","##.###..##....##..###.##","..##.#..#..##..#..#.##..",".#...##...#..#...##...#.","#..#.....#....#.....#..#",".##...##.######.##...##.","....#...#......#...#....","##.#..##.##..##.##..#.##",".#..####..####..####..#.",".....######..######.....","#.#..#.#........#.#..#.#",".#.##.##........##.##.#.","...###.##.####.##.###...","....#..##..##..##..#....","#.#####..#.##.#..#####.#","..#..#..#......#..#..#..","..#...###.#..#.###...#.."}

    Returns: "Vertically symmetric"

  61. {"..##...#......#..##..#.#..######.....#.#","#.......##.##....##.#.#####..#####.#.###","...###.##.#..#....#...######....#.##..#.","....###.##.##.#....#.#.####...#####.....","..#.#.###.#..#.##.#....#.#....#####.#...",".##..#.#.......###..###...######.#....#.","..#############..#.###.#.#.#..##.##..##.","#..#.##..#####...##..##...#...#.###.###.",".#.#####..#####.#...#########....##...##","##.#..##.##########.....#...#.#..#.#####"}

    Returns: "Neither"

  62. {"###..#.#..#.##...#...#.#..######.....#.#.#####..#","####.#..###..###..###.#####..#####.#.####.#....##","#.#.#.##..##.#.##...#.######....#.##..#.#####...#","####...#.###.#.....###.####...#####.....#####....",".###..#.#.#...#...###..#.#....#####.#....#.######",".####.#.#.#.##.#..##.##...######.#....#.##.##..#.","##..##.##..#.#..######.#.#.#..##.##..##.###.#...#",".#......##..##.##.#####...#...#.###.###.##....###","##..#.###.##....#...#########....##...##.#..#.#..","##.#.##..###......##....#...#.#..#.#####.#....##.","....#.#.##....#.###.#####..##....#.#..###..###.#.",".#####..##.##.##.#.#.###.#.#.###..####.###..##.#.",".###....######.##.#....#...#.##..#####.##...#..#.","#.###.#...#.##..#..###.#...#..#...##..#.#..##....",".......##.##..##.##.##.##.....##..#.##..#..####.#",".########.###.####..#..####.####..#.####.#.##..#.","###.##..###.###...#.###....#..##.#.#.###.#...#.#.","..###.#.####.#.#..##.#####.#.#...#.#####.####.#.#","..#...##.###.....###.######.#.####.#####.##.#.#.#","#....#####.#.##.###.#....##.#.#.##.#.###.#......#","#.#..###.#..#..#...#.#.##.#......#.#..####.#.##.#"}

    Returns: "Neither"

  63. {"#.#.#..##.#...#....#.##...######.","#.#.#..###.....#..#.#.#.###..####",".#.##.#..###.#.#..#....#####....#","..#..###.######..####.#####...###","..#.#.#.###.#...##..#.##.#....###",".#.#.#..###....###.###....######.","#.#.#.#...###.....#.#....#.#..##.","##.#....#..###.##.#.####..#...#.#","##.#.#.########.###.##.######....","###..#.##.#.#.####...#.##...#.#..",".##.##...##.#...#.##.####..##....","#..#.#.#.#..####.#.##....#.#.###.","###...###.#.#######..#.#...#.##..","####...###.####.######.....#..#..","###.....####.#.#.###.#.##.....##.","#.#####.#.....##..#..#..###.####.","##...#....##..#.##.###.....#..##.",".#..#....#..######......##.#.#...","..###.#...#.####..#.#######.#.###",".##..###.##..#...#.##.##.##.#.#.#","#..#.##...#...#...#.##.##.#......",".#.######.##..#.#.##...#..#.##.#.",".#..#..#....#.#...#...######..#.#","#.##.###..#...#...###.#.###.####."}

    Returns: "Neither"

  64. {"..#.#..##.#.#..",".#..#..###...#.","..###.#..####.."}

    Returns: "Neither"

  65. {"..#..####..#..","#..##....##..#","#..#.####.#..#","....#....#....","##....##....##",".#..######..#.",".....####.....","....##..##....","###........###","...#.####.#...","##..##..##..##","##############","#####....#####",".##.##..##.##.","#####....#####","##############","##..##..##..##","...#.####.#...","###........###","....##..##....",".....####.....",".#..######..#.","##....##....##","....#....#....","#..#.####.#..#","#..##....##..#","..#..####..#.."}

    Returns: "Both"

  66. {"#.",".#","#.","##",".."}

    Returns: "Neither"

  67. {"..#......#.#......#..",".##..#...###...#..##.",".##.#.##..#..##.#.##.",".#...##.#...#.##...#.",".#.##.##..#..##.##.#.","##..#...##.##...#..##","##.###.........###.##",".#.##.#.##.##.#.##.#.","#...#.#.#...#.#.#...#","....#..#.#.#.#..#....",".######...#...######.","#####..#.....#..#####",".####...........####.","##.###.#######.###.##","...#..#..#.#..#..#...",".###.#.#.#.#.#.#.###.","##...#.###.###.#...##",".#.#..####.####..#.#.","...#.#.#.....#.#.#...",".###.#..##.##..#.###.","..#....#..#..#....#.."}

    Returns: "Vertically symmetric"

  68. {"#............#",".....####.....","#.#..#..#..#.#",".#.#..##..#.#.","#..#..##..#..#","..#.#....#.#..","#..#.####.#..#","#.#........#.#",".###.####.###.","...###..###...","...#.#..#.#...",".#.#......#.#.","###........###","#.##......##.#","....#....#....","#..##.##.##..#","#.#........#.#"}

    Returns: "Vertically symmetric"

  69. {"#####", ".###.", "..#.." }

    Returns: "Vertically symmetric"

  70. {"#######.#.....#", "...#....#.....#", ".#####..#######", "...#....#.....#", "#######.#.....#" }

    Returns: "Horizontally symmetric"

  71. {"#.....#", "#.....#", "#######", "#...#.#", "#.....#" }

    Returns: "Neither"

  72. {"#######", "#..#..#", "#######", "...#...", "#######" }

    Returns: "Vertically symmetric"

  73. {"#..", "#..", "#.." }

    Returns: "Horizontally symmetric"

  74. {"#####", "#...#", "#####" }

    Returns: "Both"

  75. {".", "#" }

    Returns: "Vertically symmetric"

  76. {"#.", ".#" }

    Returns: "Neither"

  77. {"####", "####", "####", "####" }

    Returns: "Both"

  78. {"##", ".." }

    Returns: "Vertically symmetric"

  79. {"###", "###", "###", "...", "...", "..." }

    Returns: "Vertically symmetric"

  80. {"#.#", "###", "#.#", "###" }

    Returns: "Vertically symmetric"

  81. {"###." }

    Returns: "Horizontally symmetric"

  82. {".." }

    Returns: "Both"


This problem statement is the exclusive and proprietary property of TopCoder, Inc. Any unauthorized use or reproduction of this information without the prior written consent of TopCoder, Inc. is strictly prohibited. (c)2024, TopCoder, Inc. All rights reserved.
This problem was used for: