Problem Statement
Your vegetable garden forms a rectangular grid of equal square plots. You've decided to inspect some of your plots. Starting at the top left corner, you will walk through the garden and return back to your starting point. All plots that lie inside the cycle of your path will be considered inspected. You are not allowed to walk inside the plots; you can only walk along their boundaries. Your path must not intersect itself. The boundaries are wide enough that you can walk along the same boundary multiple times without intersecting your own path.
You are given a
Definition
- Class:
- VegetableGarden
- Method:
- getMinDistances
- Parameters:
- String[]
- Returns:
- int[]
- Method signature:
- int[] getMinDistances(String[] garden)
- (be sure your method is public)
Constraints
- garden will contain between 1 and 50 elements, inclusive.
- Each element of garden will contain only periods ('.'), uppercase 'I's and uppercase 'X's.
- Each element of garden will contain an equal number of characters.
- Each element of garden will contain between 1 and 50 characters, inclusive.
- garden will contain between 1 and 10 characters that are not periods ('.').
Examples
{"I"}
Returns: {4 }
Walk around the periphery of the plot.
{"XX", "XI"}
Returns: {8 }
{"III", "IXI", "III"}
Returns: {4, 6, 8, 10, 12, 14, 16, 18 }
An example of inspecting 8 plots is below.
{"X.I", ".I.", "I.."}
Returns: {8, 10, 14 }
{"IIXIIXIXII"}
Returns: {4, 6, 12, 14, 20, 26, 28 }
{"X"}
Returns: { }
{"I.", ".."}
Returns: {4 }
{"I..", "...", "..."}
Returns: {4 }
{"..X.", "....", "....", "...."}
Returns: { }
{".....", ".....", ".....", ".....", "X...."}
Returns: { }
{"......", "......", "......", "......", "......", ".X...."}
Returns: { }
{"...I...", ".......", ".......", ".......", ".......", ".......", "......."}
Returns: {10 }
{"......X.", "........", "........", "........", "........", "........", "........", "........"}
Returns: { }
{".........", ".........", ".........", ".........", ".........", "...X.....", ".........", ".........", "........."}
Returns: { }
{"....I.....", "..........", ".....I....", "..........", "..........", "..........", "..........", "..........", "..........", ".........."}
Returns: {12, 18 }
{"...........", "...........", "...........", "...........", "...........", "...........", ".......X...", ".........I.", "...........", "...........", "..........."}
Returns: {36 }
{"...........I", "............", ".........I..", "............", "............", "............", "............", "............", "............", "............", "............", "............"}
Returns: {26, 30 }
{".............", ".............", ".............", ".............", ".............", ".............", "...I.........", ".............", ".............", ".I...........", ".............", ".............", "............."}
Returns: {22, 28 }
{"..............", "..............", ".....I........", "..............", "..............", "..............", "..............", "...I..........", "..............", "..............", "..............", "..............", "..............", ".............."}
Returns: {18, 28 }
{"...............", "...............", "...............", "...............", "...............", "...............", "...............", "..............X", "...............", "...............", "...............", "...............", ".X.............", "............I..", "..............."}
Returns: {54 }
{".......X........", "................", "................", "................", "...............X", "................", "................", "................", "................", "...........X....", "................", "................", "................", "................", "................", "................"}
Returns: { }
{".................", ".................", ".................", ".................", ".................", ".................", ".................", ".................", ".................", "........I........", ".................", ".................", ".....X...........", ".........X.......", ".................", ".................", "................."}
Returns: {38 }
{"..................", "..................", "..................", "..................", "..................", "..................", "..................", "......I...........", "..................", "..................", "..................", "......I...........", "..................", "..................", "..................", "..................", "..................", "....I............."}
Returns: {30, 38, 50 }
{"...................", "...................", "...................", "...................", ".................I.", "...................", "...................", ".....I.............", "...................", "...................", "...................", "...................", "...................", "...................", "...................", "...........I.......", "...................", "...................", "..................."}
Returns: {28, 52, 68 }
{".................I..", "....................", "I...................", "....................", "....................", "....................", "....................", "....................", ".................I..", "....................", "........I...........", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "...................."}
Returns: {8, 40, 54, 58 }
{".....................", ".....................", ".....................", ".....................", ".....................", ".....................", "...........X.........", ".....................", ".............X.......", ".....................", ".....................", ".....................", ".....................", ".....................", ".....................", ".....................", "...I.................", ".X...................", ".....................", ".....................", "....................."}
Returns: {42 }
{"......................", "......................", "......................", "......................", "......................", "......................", "......................", "......................", "......................", "X.....................", "......................", "......................", "......................", "......X...............", "......................", "......................", ".............I........", "......................", "......................", "......................", ".....I................", "......................"}
Returns: {54, 70 }
{".......................", ".......................", ".......................", ".......................", ".......................", "...............I.......", ".......................", ".......................", ".......................", ".......................", ".......................", ".......................", ".......................", ".......................", ".......................", ".......................", ".......................", ".......I...........X...", ".......................", ".......................", ".......................", ".......................", "......................."}
Returns: {44, 68 }
{"........................", "........................", ".....................X..", "........................", "........................", "........................", "........................", "........................", "........................", "........................", "..........X.............", "........................", "........................", "X.......................", "........................", "........................", "........................", "........................", "........................", "........................", "........................", "........................", "...........X............", "........................"}
Returns: { }
{".........................", ".........................", ".........................", ".........................", ".........................", ".........................", ".........................", "................I........", ".........................", ".........................", ".........................", ".........................", ".........................", ".........................", ".........................", "........I................", "....................I....", ".........................", ".........................", ".........................", ".........................", ".........................", "........I................", ".........................", ".I......................."}
Returns: {50, 64, 68, 84, 92 }
{"..........................", "..........................", "..........................", ".....X....................", "..........................", "..........................", "...............X..........", "..........................", "..........................", "..........................", "..........X...............", "..........................", "..........................", "..........................", "..........................", "..........................", "..........................", "..........................", ".........................I", "....................I.....", "..........................", "..........................", "..........................", "..........................", "..........................", ".........................."}
Returns: {82, 92 }
{"...........................", ".........I.................", "...........................", "...........................", "...........................", ".......X...................", "...........................", "...........................", "...........................", ".....X.......X.............", "..............I............", "...........................", "...........................", "...........................", "...........................", "...........................", "...........................", "...........................", "...........................", "...........................", "...........................", "...........................", "...........................", "...........................", "...........................", "...........................", "..........................."}
Returns: {24, 52 }
{"............................", "............................", ".....I.............I........", "............................", "............................", "............................", "............................", "............................", "............................", "............................", "............................", "............................", "............................", "............................", "............................", ".I..........................", "............................", "............................", "............................", "..................I.........", "............................", ".................I..........", "............................", "............................", "............................", "............................", "............................", "............................"}
Returns: {18, 44, 72, 80, 84 }
{".............................", ".............................", "....................X........", "...............X.............", ".............................", ".............................", ".............................", ".............................", ".............................", ".............................", ".............................", ".............................", ".............................", ".............................", ".............................", ".............................", ".............................", ".............................", ".............................", "...................X.........", ".............................", ".............................", "....X........................", ".............................", "............X................", ".............................", ".............................", ".............................", "............................."}
Returns: { }
{"..............................", "..............................", "..............................", ".............................I", "..............................", "..............................", "..............................", "............................I.", "..............................", "..............................", "..............................", "..............................", "..............................", "..............................", "..............................", "..............................", "..............................", "..............................", "..............................", ".................I............", "..............................", "..............................", "..............................", "........I...............I.....", "..............................", "..............................", "..............................", "..............................", "..............................", ".........................X...."}
Returns: {66, 76, 98, 106, 108 }
{"...............................", "...............................", "...............................", "....................X..........", "...............................", "...............................", "...............................", "...............................", "...............................", "...............................", "...............................", ".X.............................", "...............................", "...............................", "...............................", "................X..............", "...............................", "...............................", "...............................", "...............................", "...............................", "...............................", "...............................", "...............................", "........................I......", "...............................", "...............................", "...............................", "............................X..", "...................I...........", "..............................."}
Returns: {100, 110 }
{"................................", "................................", "................................", "................................", "................................", "................................", "................................", "..........................I.....", "................................", "................................", "......I.........................", "...X............................", "................................", "................................", "................................", "................................", "................................", "................................", "................................", "....................X...........", "................................", "................................", "................................", "................................", ".....................X..........", "................................", "................................", "................................", "................................", "................................", "........X.......................", "................................"}
Returns: {36, 76 }
{"................X................", ".................................", "..X..............................", ".................................", ".................................", ".................................", ".................................", ".................................", ".................................", ".................................", ".................................", ".................................", "..............X..................", ".................................", ".................................", ".................................", ".......................I.........", ".................................", ".................................", ".................................", ".................................", ".................................", ".................................", ".................................", ".................................", ".................................", ".................................", "..........................X......", ".................................", ".................................", ".................................", ".................................", "......................X.........."}
Returns: {82 }
{"..................................", "..................................", ".....................X............", "..................................", "..................................", "..................................", ".........................X........", "..................................", "..................................", "..................X......X........", "..................................", "...........X......................", "..................................", "..................................", ".......................X..........", "..................................", "..................................", "..................................", "..................................", "..................................", "..................................", "..................................", "..................................", "..................................", "..................................", "..................................", "..................................", "..................................", "..................................", "..................................", "..................................", "..................................", "..................................", ".................................."}
Returns: { }
{"...................................", "...................................", "...................................", "..............................X....", "...................................", "...................................", "...................................", "...................................", "...................................", "...................................", "...................................", "...................................", "......................X............", "...................................", "...................................", "........X..........................", "...................................", "...................................", "...................................", "...................................", "...................................", ".................................X.", "...................................", "...................................", "...................................", "...X...............................", "...................................", "...................................", "...................................", "................................I..", ".........................X.........", "...................................", "...................................", "...................................", "..................................."}
Returns: {126 }
{"....................................", "....................................", "....................................", "....................................", "....................................", "....................................", "....................................", "....................................", "....................................", "....X.....I.........................", "....................................", "........X...........................", "....................................", "....................................", "....................................", "....................................", "....................................", "....................................", "....................................", "..............................X.....", "....................................", ".....X..............................", ".............................X......", "....................................", "....................................", "....................................", ".............................X......", "....................................", "....................................", "....................................", "....................................", "....................................", "....................................", "....................................", "....................................", "...................................."}
Returns: {42 }
{".....................................", ".....................................", ".....................................", ".....................................", ".....................................", ".....................................", ".....................................", ".....................................", ".....................................", ".....................................", ".....................................", ".......X.............................", ".................X...................", ".....................................", "...........X.........................", ".....................................", ".....................................", ".....................................", ".....................................", "...................................I.", ".....................................", ".....................................", ".....................................", "...........................X.........", ".....................................", "....................X................", ".....................................", ".....................................", ".....................................", ".....................................", ".....................................", ".....................................", "..................................X..", ".....................................", ".....................................", ".....................................", "....................................."}
Returns: {112 }
{"......................................", "......................................", "......................................", "......................................", "......................................", "......................................", "..........................X.........X.", "..................X...................", "......................................", "......................................", "......................................", "......................................", "......................................", "......................................", "......................................", "......................................", "......X...............................", "......................................", ".............................X........", "......................................", "......................................", "......................................", "......................................", "......................................", "......................................", "......................................", "......................................", "......................................", "....................X.................", "......................................", "......................................", "......................................", "....................................X.", "......................................", "......................................", "......................................", "......................................", "......................................"}
Returns: { }
{".......................................", ".......................................", ".......................................", ".......................................", ".......................................", ".......................................", ".......................................", ".......................................", ".......................................", ".......................................", ".......................................", ".......................................", "................................X......", ".......................................", ".......................................", ".................................X.....", ".......................................", ".......................................", ".......................................", ".......................................", ".......................................", ".......................................", "......................X................", ".......................................", ".......................................", ".......................................", ".......................................", ".......................................", ".......................................", ".....I..................X..............", "..........................I............", ".......................................", ".......................................", ".......................................", ".......................................", ".......................................", "...........X...........................", ".......................................", "......................................."}
Returns: {72, 116 }
{"........................................", "........................................", "..................................I.....", "I.......................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "..................................I.....", ".....I..................................", "........................................", ".......I................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "..........I.............................", "...........I............................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "........................................", "............................I...........", "........................................"}
Returns: {10, 40, 48, 76, 80, 124, 126, 148 }
{".........................................", ".........................................", ".................X.......................", ".........................................", ".........................................", "..................................X......", ".........................................", ".........................................", ".........................................", ".........................................", "................................X........", "........X................................", ".........................................", ".........................................", ".........................................", "...........I.............................", ".........................................", ".........................................", ".........................................", ".........................................", ".........................................", ".........................................", ".........................................", "......................................X..", ".........................................", ".........................................", ".........................................", ".........................................", ".........................................", ".........................................", ".........................................", ".........................................", ".....................................X...", ".........................................", ".........................................", ".........................................", ".........................................", ".........................................", ".........................................", ".........................................", ".....................................X..."}
Returns: {56 }
{"..I.......................................", "..........................................", "..........................................", "..........................................", "..........................................", "..........................................", "..........................................", "..........................................", "..........................I...............", "..........................................", "..........................................", "..........................................", "..........................................", "..........................................", "..........................................", "..........................................", "..........................................", "..........................................", "..........................................", ".........................................I", "..........................................", "..........................................", "..........................................", ".............I............................", "..........................................", "..........................................", "..........................................", "..........................................", "..........................................", "..........................................", "..........................................", "..........................................", "......I...................................", "..........................................", "...........I..............................", "..........................................", "..........................................", "........................I.................", "..........................................", ".........................................I", "..........................................", ".........................................."}
Returns: {8, 72, 94, 98, 124, 130, 160, 164 }
{"...........................................", "...........................................", "...........................................", "...........................................", "..I........................................", "...........................................", "...........................................", "...........................................", "...........................................", "...........................................", "...........................................", ".........................................X.", "...........................................", "...........................................", "...........................................", "..........................X................", "...........................................", "...........................................", "...........................................", "...........................................", "................................X..........", "X..........................................", "...........................................", "...........................................", "...........................................", "...........................................", "...........................................", "...........................................", "...........................................", "...........................................", "...........................................", "...........................................", "...........................................", "...........................................", ".........................X.................", ".I........X................................", "...........................................", "...........................................", "...........................................", "...........................................", "...........................................", "...........................................", "..........................................."}
Returns: {16, 78 }
{"............................................", "............................................", "............................................", "............................................", "I...........................................", "............................................", "..............................X.............", "............................................", "............................................", ".....................I......................", "............................................", "..............I.............................", "............................................", "............................................", "............................................", "............................................", "............................................", "...I.....................................I..", "............................................", "............................................", "............................................", "............................................", "............................................", "............................................", "............................................", "............................................", "............................................", "............................................", "............................................", "........................................I...", "............................................", "............................................", "............................................", "............................................", "............................................", "............................................", "............................................", "............................................", ".........................................X..", "............................................", "............................................", "............................................", "............................................", "............................................"}
Returns: {12, 44, 66, 80, 120, 144 }
{".I...........................................", ".............................................", ".............................................", ".............................................", ".............................................", ".............................................", ".........X...................................", ".............................................", ".............................................", ".............................................", ".............................................", ".............................................", ".............................................", ".............................................", ".............................................", "............................X................", ".............................................", ".............................................", ".....................................I.......", ".......X.....................................", ".............................................", ".............................................", ".............................................", ".............................................", ".............................................", ".......................................I.....", ".............................................", ".............................................", ".............................................", ".............................................", ".............................................", ".............................................", "..........................................I..", ".............................................", ".............................................", ".............................................", ".............................................", ".............................................", ".................................I...........", "..........................................X..", ".............................................", ".............................................", ".............................................", ".............................................", "............................................."}
Returns: {6, 114, 132, 152, 164 }
{"..............................................", "...X..........................................", "..............................................", "...................I..........................", "..............................................", "..............................................", "............I.................................", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", ".................................I............", "..............................................", "...................................I..........", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", ".....................................I........", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", "..............................................", ".........................I....................", "..............I...............................", "..............................................", "......................X......................."}
Returns: {40, 54, 98, 106, 146, 160, 164 }
{".........I.I...................................", "...............................................", "........................................I......", "...............................................", "...............................................", "...............................................", "....................................I..........", "...............................................", ".........................I.....................", "...............................................", "...............I...............................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "..........................................I....", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", ".I.........I...................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "...............................................", "..............................................."}
Returns: {22, 26, 54, 74, 88, 104, 122, 138, 142 }
{"................................................", "................................................", "................................................", ".I..............................................", "................................................", "................................................", "........................I.......................", "................................................", "................................................", "................................................", "................................................", "......I.........................................", "................................................", "................................................", "................................................", "................................................", "................................................", "................................................", "........X.......................................", "................................................", "..........X.....................................", "................................................", "................................................", "................................................", "................................................", "................................................", "................................................", "................................................", "................................................", "........I.......................................", "................................................", "................................................", "................................................", "................................................", "................................................", "..........I.....................................", "................................................", "................................................", "................................................", "................................................", "................................................", "..........................I.....................", "................................................", "...I............................................", "................................................", "................................................", "................................................", "................................................"}
Returns: {12, 38, 74, 94, 110, 142, 158 }
{".................................................", ".................................................", ".................................................", ".................................................", ".................................................", ".................................................", ".................................................", "....................................X............", ".................................................", ".................................................", ".................................................", ".................................................", ".................................................", ".................................................", ".................................................", ".................................X...............", ".................................................", ".................................................", ".................................................", "...............................................X.", "............................................X....", ".................................................", ".................................................", ".................................................", ".................................................", ".......................................X.........", ".........................................X.......", ".................................................", ".................................................", ".................................................", "............................................X....", ".................................................", "...............I.................................", ".................................................", ".................................................", ".................................................", ".................................................", ".................................................", ".................................................", ".................................................", ".................................................", "..........................................X......", ".................................................", ".................................................", ".................................................", ".................................................", ".................................................", ".................................................", "................................................."}
Returns: {98 }
{"....................................X.............", "..................................................", "..................................................", "..................................................", "..................................................", "...................................X..........I...", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....................................X............", "................................................X.", "..................................................", "..................................................", "........X.........................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "....................................X.............", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....I............................................", "...........................X......................", "..................................................", "..........I.......................................", "..................................................", ".................................................."}
Returns: {102, 118, 198 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".X................................................", "..................................................", "..................................................", "..................................................", "............................X.....................", "..................................................", "..................................................", ".......X.................................X........", ".........X........................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".........................X........................", "..................................................", ".......I..........................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...I..............................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..............X....................X.............."}
Returns: {74, 98 }
{"..................................................", "..................................................", "I.................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...................................I..............", "..................................................", "..................................................", "...................................X..............", "..................................................", ".......X..........................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".............I....................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...........I......................................", "..................................................", ".............I....................................", "..................................................", "..................................................", "..................................................", "......................................X...........", "..................................................", "..................................................", "..................................................", ".............................I....................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {8, 74, 92, 96, 140, 156 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "......................I...........................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "....X......X......................................", "......I...........................................", "..................................................", "..................................................", "................X.................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "........................I.........................", "..................................................", "..................I...............................", ".........................X........................", "..................................................", "............................................X.....", "..................................................", "..................................................", "........X.........................................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {46, 78, 130, 134 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....X.....I......................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....X............................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................X................................", "..................................................", "..................................................", "......X...........................................", "..................................................", "..................................................", "..................................................", ".........................X........................", "..................................................", "..................................................", "..................................................", "...........................X......................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".............................................X....", "..................................................", "..................................................", "...................X..............................", "....X............................................."}
Returns: {38 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...........................I......................", "...I.......................X......................", "............X.....................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".........................X........................", "....................................X.............", "..................................................", "..................................................", "..................................................", "................................I.................", "..................................................", "............I.....................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...............................................X..", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................X................"}
Returns: {34, 82, 116, 132 }
{"........................................I...I.....", "..................................................", "..................................................", "............I.....................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "................................X.................", "..................................................", "..................................................", "..................................................", "..........I.....I.................................", "..................................................", "..................................................", "..................................................", "I................................................X", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................X................................", "..................................................", "..................................................", "..................................................", ".........................................I........", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {34, 66, 74, 82, 130, 138, 194 }
{"..................................................", "......................................I...........", "..................................................", "..................................................", "..................................................", ".............................................X....", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "........I.........................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "....I.......................I.....................", "..................................................", ".................I................................", "..................................................", "..................................................", "I.................................................", "..................................................", "..................................................", "..................................................", "........X.........................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".........................................X...X....", ".................................................."}
Returns: {48, 80, 90, 108, 130, 150 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "............X.....................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....X...........X................................", "..................................................", ".................X................................", "...X.........................................X....", "...........X......................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".......................X..........................", "..................................................", "................X.................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..............................X..................."}
Returns: { }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...................................I..............", ".....................................I............", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "............I.....................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..............I...................................", "..................................................", "...............I................................I.", "..................................................", "..................................................", "..................................................", "..................................................", ".............................................I....", "...............................I..................", "..................................................", "...................I..............................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...........................................I......", "..................................................", "..................................................", ".................................................."}
Returns: {60, 86, 92, 116, 136, 148, 152, 168, 174, 192 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "....................I.............................", "..................................................", "..................................................", "..................................................", "..............................................I...", "...............................................X..", "..................................................", "..................................................", "..................................................", "....X.............................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "X.................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".............................................I....", "..................................................", "..............................................I...", "X.................................................", "...........I......................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".........................X........................", "..................................................", ".................................................."}
Returns: {56, 116, 166, 170, 174 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..........................X.......................", "......................X...........................", "..................................................", "..................................................", "..................................................", ".........................X........................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "........X.........................................", "..................................................", "..................................................", "...........................................X......", "..................................................", "..................................................", "........................................I.........", "..................................................", "..X...............................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..........X.......................................", "..................................................", ".........................................X........", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...............X.................................."}
Returns: {138 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "........................I.........................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".......................I..........................", ".......................I..I.......................", ".................I................................", "..................................................", "..................................................", "..................................................", ".......................I..........................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..............I........................X..........", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".............................................I....", "..................................................", "I.................................................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {62, 88, 90, 92, 96, 104, 116, 146, 184 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..I..I............................................", "..................................................", "..................................................", "..................................................", "..........I.......................................", "..............................................I...", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...................X..............................", "..................................................", "............................................I.....", "..................................................", "..................................................", "..................................................", "........................I.........................", "....................I.............................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".........................I........................", "..................................................", "..................................................", ".................................................I", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {20, 26, 44, 92, 100, 134, 144, 176, 188 }
{".......................X.................I........", "..................................................", "..................................I...............", ".................................X................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".............X....................................", "..................................................", "..................................................", "..................................................", "..................................................", "............................................X.....", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "....X.............................I...............", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..............................................X...", "..................................................", "..................................................", "..................................................", "..................................................", "...............................................I..", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {76, 90, 148, 184 }
{"..................................................", ".............................X....................", "..............................................X...", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "................................X.................", "..................................................", ".X................................................", "..................................................", "..................................................", "...............................................I..", "..................................................", "...X..............................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................I...............................", ".......................X..........................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "............I.....................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...........................................X......", "..................................................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {100, 114, 172 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................X................................", "..................................................", "..................................................", "..I...............................................", ".........................................X........", "X.................................................", "..................................................", "......X...........................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".........X........................................", "..................................................", "..................................................", "..................................................", "..........X.......................................", "..................................................", "..................................................", "...................................X..............", "..................................................", "..................................................", "..................................................", "..................X...............................", "...................I..............................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {48, 132 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................I................................", "..................................................", "............................I.....................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "........................................I.........", "...............................................I..", "..................................................", "..................................I...............", "..................................................", "..................................................", "..................................................", "...............................I..................", "..................................................", "..................................................", "..................................................", "...............................I..................", "..................................................", "..................................................", "........................I.........................", "..................................................", "...................I..............................", ".........................................I........", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {48, 74, 112, 120, 128, 132, 138, 150, 154, 166 }
{"..................................................", "....................................X.............", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..........I.......................................", "..................................................", "...................I..............................", "..................................................", "..................................................", "..................................................", "..................................................", "...X.........................I....................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................I................", "..................................................", "............I.....................................", "...X..............................................", "..................................................", "..................................................", "..................................................", "......................X...........................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "....................X.............................", ".................................................."}
Returns: {52, 74, 104, 128, 136 }
{"..................................................", "..................................................", "..................................................", "....................X.............................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "....X................X............................", "..................................................", "..................................................", "..................................................", "..................................................", "....................................X.............", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..........................X.......................", "..................................................", "..................................................", ".........X........................................", "..................................................", "..................................................", ".......................................X..........", "..................................................", "..................................................", "............X..................................X..", "..................................................", "..................................................", "..................................................", "..................................................", "..............................X...................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: { }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..............................I...................", "......I...........................................", "......X...........................................", "..................................................", "..................................................", "..................................................", "..................................................", "......................I...........................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...I..............................................", "..................................................", "..................................................", "................................................X.", "..................................................", "........X.........................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................I...............................", "..................................................", "..................................................", "............................X.....................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................X................................"}
Returns: {32, 72, 92, 128, 150 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................I...............................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "X.................................................", "..................................................", ".....................X............................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...I..............................................", ".........................................I........", "..................................................", "..................................................", "..................................................", "..................................................", "................I.................................", "..................................................", "..................................................", "..................................................", "...................................X..............", "..................................................", "..................................................", "..................................................", "..................................................", "......................................X...........", "..................................................", ".........I.............X..........................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {48, 90, 102, 124, 170 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".......................I..........................", "..................................................", "..........................I.......................", "..................................................", ".....................................X............", "..............................X...................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................I................", "..................................................", "..................................................", ".................X................................", "..................................................", "..................................................", "..................................................", "...................I..............................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "................................................X.", "..................................................", "..................................................", "..................................................", "..................................................", "....................X.............................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..........................X......................."}
Returns: {60, 70, 108, 122 }
{"...............I..................................", "................................I.................", "..................................................", "..................................................", "..................................................", "............I.....................................", "..................................................", "..................................................", "..................................................", "................................................X.", "........I.........................................", "..................................................", "..................................................", "..................................................", "..................................................", "...............I..................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".........................................I........", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "............X.....................................", "...........................................X......", "..................................................", "..........................I.......................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {34, 44, 54, 64, 98, 144, 170 }
{"..................................................", "..................................................", "..................................................", "......X..................I........................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "......................................X...........", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "................I.................................", "..................................................", "...............I..................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "......................X...........................", "..................................................", "..................................................", "..................................X...............", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...........................................X......", "..................................................", "........X.........................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "................................X................."}
Returns: {60, 70, 88 }
{"..................................................", "..................................................", "..................................................", ".....X............................................", "..................................................", "..................................................", "..................................................", "............................................X.....", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "............X.....................................", "..................................................", "..................................................", "..................................................", "..................................................", "...................................X..............", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".........................X........................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".............................X....................", "..................................................", "..................................................", "..................................................", ".................I................................", "..................................................", "..................................................", "...........................................X......", "..................................................", "..................................................", "..................................................", "..............I...................................", "..................................................", "..................................................", ".....................I............................"}
Returns: {116, 130, 144 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...I..............................................", "..................................................", "........I.........................................", "..................................................", "..................................................", "..........................................X...I...", "..................................................", ".................................................I", "..................................I...............", "..................................................", "..................................................", "..................................................", "...................................I..............", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".............................................I....", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................I................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "................................I.................", ".................................................."}
Returns: {26, 40, 104, 114, 136, 144, 158, 172, 200 }
{"..........................X.......................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "....X.............................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "......X...........................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".......X..........................................", "..................................................", "..................................................", "..X...............................................", "..................................................", "...................X..............................", "..................................................", ".......................X..........................", "..................................................", "..................................................", "..................................................", "..................................................", "...............................................X..", "...............X..................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....X............................................", ".................................................."}
Returns: { }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "................................................X.", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".............................I....................", "..................................................", "..................................................", "..................................................", "..................................................", ".......................X..........................", "..................................................", "...................I..............................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...........X......................................", "..................................................", "..................................................", "..X..............I................................", "..................................................", "..................................................", "..................................................", "................I................................I", "..................................................", ".............X...................................."}
Returns: {88, 108, 136, 156, 208 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "................................................X.", "......................................X...........", "..................................................", "..................................................", "...................I..............................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "........I....................................X....", "...........................X......................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................X................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...X..............................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...........X......................................", "..................................................", "..................................................", "..................................................", "..........................................I.......", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {58, 80, 178 }
{"..................................................", "..................................................", "..................................................", "...............I..................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "................................................X.", "..............................I...................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".........................................I........", "............................I.....................", "..................................................", ".............................................I....", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...............................I..................", "..................................................", "..................................................", "..................................................", "..................................................", "..............................................X...", "..................X...........................I...", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {40, 94, 108, 130, 142, 168, 182 }
{"..................................................", "......X...........................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "................................X.................", "..................................................", "..................................................", "..................................................", "..........................................I.......", "..................................................", "..................................................", "..................................................", "..................................................", "...................................X..............", "..................................................", "....................................I.............", "..................................................", "..................................................", "..................................................", "..................................................", "..........X......X................................", "..................................................", "................................I.................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....X............................................", "..................................................", "..........X......................................."}
Returns: {120, 134, 152 }
{"........................X.....I...................", ".......I..........................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...........I......................................", "..................................................", ".....I............................................", "..................................................", "..................................................", "..................................................", "..................................................", "..I...............................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...................................I..............", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....................X............................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....X............................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....I............................................", "..................................................", ".................................................."}
Returns: {20, 42, 50, 60, 100, 124, 172 }
{"........................I.........................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....I..........................................I.", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "....I.............................................", "..................................................", "..................................................", "..........................................I.......", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................I..........X.....", "....X.............................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".............................................I....", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".I................................................"}
Returns: {26, 48, 86, 128, 140, 166, 188, 210 }
{"..................................................", "..................................................", "..................................................", "..................................................", ".......X..........................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "......X...........................................", "..................................................", "..................................................", "...............I..................................", "..................................................", "..................................................", "..................................................", "..........................................I.......", ".........I........................................", "..................................................", "..................................................", "..................................................", "........I.........................................", "..................................................", "................I.................................", "..........................................X.......", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "....................................I.............", "..................................................", "..................................................", "..................................................", "..................................................", "........I.........................................", "..................................................", ".................................................."}
Returns: {70, 78, 90, 96, 130, 170, 182 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "......................................I...........", "..................I...............................", "..................................................", "..................................................", "..................................................", "..................................................", ".................I.......X...............I........", "..................................................", "..................I...............................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....................................I............", "..................................................", "..................................................", "..................................................", "..I...............................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".......................I..........................", "..................................................", "..................................................", "..I..............................................."}
Returns: {72, 82, 86, 118, 134, 148, 176, 186, 198 }
{"..................................................", "......................................I...........", "..................I...............................", "...........................................X...I..", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "......................................X...........", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....................X............................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....X......I.....................................", "..................................................", "..................................................", "..................................................", "......X...........................................", "..................................................", "...........................I......................", "..................................................", ".................................................."}
Returns: {44, 84, 104, 182, 208 }
{"..........................I.......................", "..................................................", "............................................II....", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "....................II............................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".............................I....................", "..............................................I...", "..................................................", "..................................................", "..................................................", "..................................................", ".......................I..........................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "........................................I.........", "..................................................", "..................................................", ".....................I............................", ".................................................."}
Returns: {56, 70, 80, 114, 118, 146, 150, 160, 186, 192 }
{".............................X....................", "..................................................", "..............................I...................", "..................................................", "..................................................", ".........................I........................", "..................................................", "..................................................", "..................................................", "............................................I.....", "..................................................", "..................................................", "..................................................", "...................................X..............", "..................................................", "..................................................", ".............................................I....", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...........................X......................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".......................................I.I........", "..................................................", "...........................I......................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {64, 74, 110, 126, 172, 174, 190 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".I................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "................................................X.", "..................................................", "................................................X.", "..................................................", "................................X.................", "..................................................", "..................................................", "..................................................", "........................X.........................", "..................................................", "............X.....................................", "..................................................", "..................................................", "..................................................", ".....................X............................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................X...............................", "..................................................", "........................................X.........", "..................................................", "..................................................", "...................................X..............", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {26 }
{"........X.........................................", "..................................................", "..................................................", "...............................................I..", "..................................................", "..................................................", "..................................................", "................................................X.", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "................................................I.", "..................................................", "...............................................I..", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".......................X..........................", "..................................................", ".........X........................................", "..................................................", "..................................................", "..................................................", "......I...........................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................I...............................", "..................................................", "..................................................", "....I............................................."}
Returns: {78, 114, 134, 162, 198, 210 }
{".........X........................................", "..................................................", "....................................X.............", "..................................................", "..................................................", ".................I................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "................................................I.", "..................................................", "..................................................", "..................................................", "................................I.................", "...........................I......................", "..................................................", "..................................................", "...........................I......................", "..................................................", "...........................I......................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................................I", "..................................................", "..I...............................................", "..................................................", ".................................................."}
Returns: {48, 90, 96, 100, 110, 142, 192, 196 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".......................I..........................", "..................................................", ".....................I............................", "..................................................", "..................................................", "..................................................", "........I.........................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....I............................................", "..................................................", "..................................................", "..................................................", "..................................................", ".............................I....................", "..................................................", "..................................................", "...............................................I..", ".I................................................", "..................................................", "..................................................", "........I.X.......................................", ".....................................I............", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {46, 68, 76, 96, 120, 126, 138, 158, 178 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".........X.........................I..............", "..................................................", "..................................................", "..................................................", ".........................................I........", "..................................................", "..................................................", "........................................I.........", "..................................................", "..................................................", "..................................................", "......X...........................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "....................X.............................", "...............X..................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".I............................I...................", "..................................................", "..................................................", "..................................................", "..................................................", "...................X..............................", ".................................................."}
Returns: {92, 118, 124, 172, 210 }
{"................I.................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "....................................X.............", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "X.................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".X................................................", "..................................................", "..................................................", "..........................................X.......", "..........X.......................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "............................X.....................", "..................................................", "...........................................I......", "..................................................", "..................................................", "...............................................X..", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................................X", "..................................................", "..................................................", ".................................................."}
Returns: {36, 164 }
{"..................................................", "..................................................", "...............................I..................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....................I............................", "..................................................", "..................................................", "..................................................", ".................................X................", "..I...............................................", "..................................................", "..................................................", "..................................................", "..................................................", "....................I.............................", "..................................................", "..................................................", "..................................................", ".............................I....................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................X................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..............................X...................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "......X...........................................", "..................................................", ".......................X..........................", "..................................................", ".................................................."}
Returns: {34, 72, 82, 102, 110 }
{"..................................................", "..................................................", ".......I..........................................", ".................................................I", "..................................................", "..........X.......................................", "..................................................", "..................................................", "..................................................", ".........................................X........", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "........................................I.........", "..................................................", "..................................................", "................................................X.", "............................X.....................", "..................................................", ".X................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................I.I..............", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {22, 108, 158, 170, 188 }
{"..................................................", "..................................................", "..................................................", "...............................X..........I.......", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "......................I......................I....", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....................................X............", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "X.................................................", "..................................................", ".........................................I........", "................................I.................", "..................................................", "..................................................", "..................................................", "............X................................I....", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {76, 118, 124, 168, 178, 190 }
{"..................................................", ".......................X..........................", "..................................................", "...................................X..............", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".....................X............................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...........I......................................", ".X................................................", "...........X......................................", "..................................................", "..................................................", "..................................................", "..........................I.......................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "....................X.............................", "..................................................", "..................................................", "......................................X...........", "..................................................", "..................................................", "..................................................", "..................................................", "..........................................X.......", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {70, 112 }
{"..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", ".........X........................................", "..................................................", "..................................................", "..................................................", "..................................................", ".........................................X........", "..................................................", "..........X.......................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..........................X.......................", "..................................................", "..................................................", "..................................................", "...................X..............................", "..................................................", ".....................I.X..........................", "..................................................", ".........I........................................", "............X.....................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "................................X.................", "..................................................", "..................................................", "..................................................", "..................................................", ".................................................."}
Returns: {78, 102 }
{"..................................................", "..................................................", "..................................................", "..................................................", ".....I............................................", "..................................................", "..................................I...............", "..................................................", "..................................................", "..................................................", "............I..................I..................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "........................I.........................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "...............................I..................", "...............I..................................", ".......................I..........................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "..................................................", "................I.................................", "..................................................", "..................................................", "..................................................", "...................I..............................", ".................................................."}
Returns: {22, 48, 86, 92, 110, 134, 136, 142, 160, 168 }
{".X"}
Returns: { }
{"X", "I"}
Returns: {6 }
{".I.X.", ".....", "...IX", ".....", "....."}
Returns: {6, 14 }
{"IXX", "...", "...", "..X", "...", "X.X"}
Returns: {4 }
{"..I", "II.", ".II", ".I.", "..I"}
Returns: {6, 8, 10, 12, 12, 14, 16 }
{"X.", ".X", "..", ".X", "..", ".X", "..", "..", "..", "XX", "..", "X."}
Returns: { }
{".......", ".......", ".......", "X......", ".......", ".......", ".I.....", ".......", ".......", ".......", ".......", "......."}
Returns: {18 }
{"..", "..", "XI", "..", "..", "..", "..", "XI", ".X", "II", ".."}
Returns: {10, 20, 26, 28 }
{"........I.....", "..............", "..............", "..............", ".......II.....", "..............", "..............", "..............", ".....X........", ".............X"}
Returns: {20, 28, 28 }
{"...........X.......", "...................", "...................", "...................", "...................", "...................", ".......X...........", "...................", "...................", "...................", ".......X...........", "...................", "...................", "...................", "..................."}
Returns: { }
{".", ".", ".", "I", "I", ".", ".", "X", ".", "X", ".", "I", "X", ".", ".", "X", ".", ".", ".", "."}
Returns: {10, 12, 28 }
{".......................", ".......................", ".......................", ".......................", ".......................", ".......................", ".......................", ".......................", ".......................", "....X..................", ".......................", ".......................", ".......................", ".......................", "......................."}
Returns: { }
{".............", ".............", "X....X.......", ".............", ".............", ".............", ".I...........", ".............", ".X...........", ".............", "..........X..", ".............", ".............", "..........X..", ".............", ".............", "....X........", ".............", "............."}
Returns: {18 }
{"..", "..", ".X", "..", ".X", "..", "..", ".X", "..", ".X", ".I", "..", "..", ".X", "..", "..", "XX", "..", "..", ".X", "..", ".X"}
Returns: {26 }
{"............I.................", "..............................", "..............................", "..............................", "..............................", "............I.................", "..............................", "..............................", "..............................", "..............................", "..............................", "..............................", ".......I......................", "..............................", "..............................", "..............................", "..............................", "..............................", "..............................", "..................I.......I...", "...I...X......................", "..............................", ".........................I....", "............I................."}
Returns: {28, 38, 52, 68, 76, 88, 102, 104 }
{".........................", ".........................", ".........................", ".........................", ".........................", ".........................", ".........................", ".........................", "...............X.........", "X........................"}
Returns: { }
{".....XII............"}
Returns: {16, 18 }
{".................", ".............I...", ".................", ".................", ".................", ".................", "...............X.", ".................", ".................", ".................", ".................", ".................", ".................", "....X............", ".................", ".................", "..........X......", ".................", "..............X..", ".................", ".................", ".......X.........", ".................", ".................", "....X............", ".................", ".................", ".................", ".................", ".X.....X.........", ".................", ".................", "..X..............", ".................", "................."}
Returns: {32 }
{"....................", "....................", "....................", "....................", "..........X.....X...", "....................", "....................", "....................", "....................", "..X............X....", "....................", "....................", "................I...", "....................", ".......X............", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "...X................", ".X..................", "....................", "...................."}
Returns: {60 }
{"......................................", "...................II.................", "..................I...................", "......................................", "......................................", "......................................", "......................................", "......................................"}
Returns: {44, 46, 48 }
{"..", "I.", "..", "..", "..", "..", "..", "..", "..", "..", "..", "..", "..", "..", "..", "I.", "..", "..", "..", "..", "..", "..", "..", "..", "..", "..", ".."}
Returns: {6, 34 }
{".......................", ".......................", "..........X............", ".......................", "......X................", ".......................", ".......................", ".......................", ".......................", ".......................", "....................I..", ".......................", ".......................", ".......................", ".......................", ".......................", ".......................", "......................."}
Returns: {64 }
{"......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", "......", ".....X", "......", "......"}
Returns: { }
{".....................................I..", "..........................I.............", "..................................I.....", "........................................", "........................................", "........................................", "..............I.........................", "..........I.............................", "...X..I.................................", "..........................I.............", "........................................"}
Returns: {32, 40, 48, 72, 74, 90, 96 }
{".................", ".................", ".................", ".................", ".................", ".................", ".................", ".................", "...........I.....", ".................", ".................", ".................", ".................", ".................", ".................", ".................", ".................", ".................", ".................", ".................", ".................", ".................", ".................", ".................", ".................", ".................", ".................", ".................", ".................", "................."}
Returns: {42 }
{"....X........I..I........I.......I..X.....I.X.X..I"}
Returns: {30, 36, 54, 70, 90, 106 }
{".", ".", ".", "X", "X", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", "X", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", ".", "X", ".", ".", ".", ".", ".", "X", "X", ".", ".", "X", ".", "X", "X", ".", ".", "."}
Returns: { }