aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-151/bruce-gray/raku/ch-1.raku1389
-rw-r--r--challenge-151/bruce-gray/raku/ch-2.raku92
2 files changed, 1481 insertions, 0 deletions
diff --git a/challenge-151/bruce-gray/raku/ch-1.raku b/challenge-151/bruce-gray/raku/ch-1.raku
new file mode 100644
index 0000000000..2df18649fa
--- /dev/null
+++ b/challenge-151/bruce-gray/raku/ch-1.raku
@@ -0,0 +1,1389 @@
+constant $Null_char = '*';
+sub is_null ( Str $s ) { $s eq $Null_char }
+
+sub minimum_depth_of_binary_tree ( Str $binary_tree_in_linear_format ) {
+ my @rows = $binary_tree_in_linear_format.split: '|';
+
+ my @last_row = 'anything_but_asterisk';
+
+ for @rows.kv -> $k, $row_string {
+ my @row = $row_string.words;
+ push @row, $Null_char while @row < 2**$k;
+
+ @last_row = @row if $k == 0;
+
+ for @row.batch(2) Z @last_row -> ($batch, $parent) {
+ return $k if $parent.&is_null.not
+ and $batch[0].&is_null
+ and $batch[1].&is_null;
+ }
+
+ @last_row = @row;
+ }
+
+ return +@rows;
+}
+
+my @tests = (
+# From task description:
+ 2 => '1 | 2 3 | 4 5',
+ 3 => '1 | 2 3 | 4 * * 5 | * 6',
+
+ # Generated
+ 2 => '0 | * 2 | |',
+ 2 => '0 | * 2 | * * * * | * * * * * * * *',
+ 3 => '0 | * 2 | * * * 6 |',
+ 3 => '0 | * 2 | * * * 6 | * * * * * * * *',
+ 4 => '0 | * 2 | * * * 6 | * * * * * * * E',
+ 4 => '0 | * 2 | * * * 6 | * * * * * * * E',
+ 4 => '0 | * 2 | * * * 6 | * * * * * * D',
+ 4 => '0 | * 2 | * * * 6 | * * * * * * D *',
+ 4 => '0 | * 2 | * * * 6 | * * * * * * D E',
+ 4 => '0 | * 2 | * * * 6 | * * * * * * D E',
+ 3 => '0 | * 2 | * * 5 |',
+ 3 => '0 | * 2 | * * 5 * | * * * * * * * *',
+ 4 => '0 | * 2 | * * 5 * | * * * * * C',
+ 4 => '0 | * 2 | * * 5 * | * * * * * C * *',
+ 4 => '0 | * 2 | * * 5 * | * * * * B',
+ 4 => '0 | * 2 | * * 5 * | * * * * B * * *',
+ 4 => '0 | * 2 | * * 5 * | * * * * B C',
+ 4 => '0 | * 2 | * * 5 * | * * * * B C * *',
+ 3 => '0 | * 2 | * * 5 6 |',
+ 3 => '0 | * 2 | * * 5 6 | * * * * * * * *',
+ 3 => '0 | * 2 | * * 5 6 | * * * * * * * E',
+ 3 => '0 | * 2 | * * 5 6 | * * * * * * * E',
+ 3 => '0 | * 2 | * * 5 6 | * * * * * * D',
+ 3 => '0 | * 2 | * * 5 6 | * * * * * * D *',
+ 3 => '0 | * 2 | * * 5 6 | * * * * * * D E',
+ 3 => '0 | * 2 | * * 5 6 | * * * * * * D E',
+ 3 => '0 | * 2 | * * 5 6 | * * * * * C',
+ 3 => '0 | * 2 | * * 5 6 | * * * * * C * *',
+ 4 => '0 | * 2 | * * 5 6 | * * * * * C * E',
+ 4 => '0 | * 2 | * * 5 6 | * * * * * C * E',
+ 4 => '0 | * 2 | * * 5 6 | * * * * * C D',
+ 4 => '0 | * 2 | * * 5 6 | * * * * * C D *',
+ 4 => '0 | * 2 | * * 5 6 | * * * * * C D E',
+ 4 => '0 | * 2 | * * 5 6 | * * * * * C D E',
+ 3 => '0 | * 2 | * * 5 6 | * * * * B',
+ 3 => '0 | * 2 | * * 5 6 | * * * * B * * *',
+ 4 => '0 | * 2 | * * 5 6 | * * * * B * * E',
+ 4 => '0 | * 2 | * * 5 6 | * * * * B * * E',
+ 4 => '0 | * 2 | * * 5 6 | * * * * B * D',
+ 4 => '0 | * 2 | * * 5 6 | * * * * B * D *',
+ 4 => '0 | * 2 | * * 5 6 | * * * * B * D E',
+ 4 => '0 | * 2 | * * 5 6 | * * * * B * D E',
+ 3 => '0 | * 2 | * * 5 6 | * * * * B C',
+ 3 => '0 | * 2 | * * 5 6 | * * * * B C * *',
+ 4 => '0 | * 2 | * * 5 6 | * * * * B C * E',
+ 4 => '0 | * 2 | * * 5 6 | * * * * B C * E',
+ 4 => '0 | * 2 | * * 5 6 | * * * * B C D',
+ 4 => '0 | * 2 | * * 5 6 | * * * * B C D *',
+ 4 => '0 | * 2 | * * 5 6 | * * * * B C D E',
+ 4 => '0 | * 2 | * * 5 6 | * * * * B C D E',
+ 2 => '0 | 1 * | |',
+ 2 => '0 | 1 * | * * * * | * * * * * * * *',
+ 3 => '0 | 1 * | * 4 |',
+ 3 => '0 | 1 * | * 4 * * | * * * * * * * *',
+ 4 => '0 | 1 * | * 4 * * | * * * A',
+ 4 => '0 | 1 * | * 4 * * | * * * A * * * *',
+ 4 => '0 | 1 * | * 4 * * | * * 9',
+ 4 => '0 | 1 * | * 4 * * | * * 9 * * * * *',
+ 4 => '0 | 1 * | * 4 * * | * * 9 A',
+ 4 => '0 | 1 * | * 4 * * | * * 9 A * * * *',
+ 3 => '0 | 1 * | 3 |',
+ 3 => '0 | 1 * | 3 * * * | * * * * * * * *',
+ 4 => '0 | 1 * | 3 * * * | * 8',
+ 4 => '0 | 1 * | 3 * * * | * 8 * * * * * *',
+ 4 => '0 | 1 * | 3 * * * | 7',
+ 4 => '0 | 1 * | 3 * * * | 7 * * * * * * *',
+ 4 => '0 | 1 * | 3 * * * | 7 8',
+ 4 => '0 | 1 * | 3 * * * | 7 8 * * * * * *',
+ 3 => '0 | 1 * | 3 4 |',
+ 3 => '0 | 1 * | 3 4 * * | * * * * * * * *',
+ 3 => '0 | 1 * | 3 4 * * | * * * A',
+ 3 => '0 | 1 * | 3 4 * * | * * * A * * * *',
+ 3 => '0 | 1 * | 3 4 * * | * * 9',
+ 3 => '0 | 1 * | 3 4 * * | * * 9 * * * * *',
+ 3 => '0 | 1 * | 3 4 * * | * * 9 A',
+ 3 => '0 | 1 * | 3 4 * * | * * 9 A * * * *',
+ 3 => '0 | 1 * | 3 4 * * | * 8',
+ 3 => '0 | 1 * | 3 4 * * | * 8 * * * * * *',
+ 4 => '0 | 1 * | 3 4 * * | * 8 * A',
+ 4 => '0 | 1 * | 3 4 * * | * 8 * A * * * *',
+ 4 => '0 | 1 * | 3 4 * * | * 8 9',
+ 4 => '0 | 1 * | 3 4 * * | * 8 9 * * * * *',
+ 4 => '0 | 1 * | 3 4 * * | * 8 9 A',
+ 4 => '0 | 1 * | 3 4 * * | * 8 9 A * * * *',
+ 3 => '0 | 1 * | 3 4 * * | 7',
+ 3 => '0 | 1 * | 3 4 * * | 7 * * * * * * *',
+ 4 => '0 | 1 * | 3 4 * * | 7 * * A',
+ 4 => '0 | 1 * | 3 4 * * | 7 * * A * * * *',
+ 4 => '0 | 1 * | 3 4 * * | 7 * 9',
+ 4 => '0 | 1 * | 3 4 * * | 7 * 9 * * * * *',
+ 4 => '0 | 1 * | 3 4 * * | 7 * 9 A',
+ 4 => '0 | 1 * | 3 4 * * | 7 * 9 A * * * *',
+ 3 => '0 | 1 * | 3 4 * * | 7 8',
+ 3 => '0 | 1 * | 3 4 * * | 7 8 * * * * * *',
+ 4 => '0 | 1 * | 3 4 * * | 7 8 * A',
+ 4 => '0 | 1 * | 3 4 * * | 7 8 * A * * * *',
+ 4 => '0 | 1 * | 3 4 * * | 7 8 9',
+ 4 => '0 | 1 * | 3 4 * * | 7 8 9 * * * * *',
+ 4 => '0 | 1 * | 3 4 * * | 7 8 9 A',
+ 4 => '0 | 1 * | 3 4 * * | 7 8 9 A * * * *',
+ 2 => '0 | 1 2 | |',
+ 2 => '0 | 1 2 | * * * * | * * * * * * * *',
+ 2 => '0 | 1 2 | * * * 6 |',
+ 2 => '0 | 1 2 | * * * 6 | * * * * * * * *',
+ 2 => '0 | 1 2 | * * * 6 | * * * * * * * E',
+ 2 => '0 | 1 2 | * * * 6 | * * * * * * * E',
+ 2 => '0 | 1 2 | * * * 6 | * * * * * * D',
+ 2 => '0 | 1 2 | * * * 6 | * * * * * * D *',
+ 2 => '0 | 1 2 | * * * 6 | * * * * * * D E',
+ 2 => '0 | 1 2 | * * * 6 | * * * * * * D E',
+ 2 => '0 | 1 2 | * * 5 |',
+ 2 => '0 | 1 2 | * * 5 * | * * * * * * * *',
+ 2 => '0 | 1 2 | * * 5 * | * * * * * C',
+ 2 => '0 | 1 2 | * * 5 * | * * * * * C * *',
+ 2 => '0 | 1 2 | * * 5 * | * * * * B',
+ 2 => '0 | 1 2 | * * 5 * | * * * * B * * *',
+ 2 => '0 | 1 2 | * * 5 * | * * * * B C',
+ 2 => '0 | 1 2 | * * 5 * | * * * * B C * *',
+ 2 => '0 | 1 2 | * * 5 6 |',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * * * * *',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * * * * E',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * * * * E',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * * * D',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * * * D *',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * * * D E',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * * * D E',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * * C',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * * C * *',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * * C * E',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * * C * E',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * * C D',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * * C D *',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * * C D E',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * * C D E',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * B',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * B * * *',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * B * * E',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * B * * E',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * B * D',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * B * D *',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * B * D E',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * B * D E',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * B C',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * B C * *',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * B C * E',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * B C * E',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * B C D',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * B C D *',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * B C D E',
+ 2 => '0 | 1 2 | * * 5 6 | * * * * B C D E',
+ 2 => '0 | 1 2 | * 4 |',
+ 2 => '0 | 1 2 | * 4 * * | * * * * * * * *',
+ 2 => '0 | 1 2 | * 4 * * | * * * A',
+ 2 => '0 | 1 2 | * 4 * * | * * * A * * * *',
+ 2 => '0 | 1 2 | * 4 * * | * * 9',
+ 2 => '0 | 1 2 | * 4 * * | * * 9 * * * * *',
+ 2 => '0 | 1 2 | * 4 * * | * * 9 A',
+ 2 => '0 | 1 2 | * 4 * * | * * 9 A * * * *',
+ 3 => '0 | 1 2 | * 4 * 6 |',
+ 3 => '0 | 1 2 | * 4 * 6 | * * * * * * * *',
+ 3 => '0 | 1 2 | * 4 * 6 | * * * * * * * E',
+ 3 => '0 | 1 2 | * 4 * 6 | * * * * * * * E',
+ 3 => '0 | 1 2 | * 4 * 6 | * * * * * * D',
+ 3 => '0 | 1 2 | * 4 * 6 | * * * * * * D *',
+ 3 => '0 | 1 2 | * 4 * 6 | * * * * * * D E',
+ 3 => '0 | 1 2 | * 4 * 6 | * * * * * * D E',
+ 3 => '0 | 1 2 | * 4 * 6 | * * * A',
+ 3 => '0 | 1 2 | * 4 * 6 | * * * A * * * *',
+ 4 => '0 | 1 2 | * 4 * 6 | * * * A * * * E',
+ 4 => '0 | 1 2 | * 4 * 6 | * * * A * * * E',
+ 4 => '0 | 1 2 | * 4 * 6 | * * * A * * D',
+ 4 => '0 | 1 2 | * 4 * 6 | * * * A * * D *',
+ 4 => '0 | 1 2 | * 4 * 6 | * * * A * * D E',
+ 4 => '0 | 1 2 | * 4 * 6 | * * * A * * D E',
+ 3 => '0 | 1 2 | * 4 * 6 | * * 9',
+ 3 => '0 | 1 2 | * 4 * 6 | * * 9 * * * * *',
+ 4 => '0 | 1 2 | * 4 * 6 | * * 9 * * * * E',
+ 4 => '0 | 1 2 | * 4 * 6 | * * 9 * * * * E',
+ 4 => '0 | 1 2 | * 4 * 6 | * * 9 * * * D',
+ 4 => '0 | 1 2 | * 4 * 6 | * * 9 * * * D *',
+ 4 => '0 | 1 2 | * 4 * 6 | * * 9 * * * D E',
+ 4 => '0 | 1 2 | * 4 * 6 | * * 9 * * * D E',
+ 3 => '0 | 1 2 | * 4 * 6 | * * 9 A',
+ 3 => '0 | 1 2 | * 4 * 6 | * * 9 A * * * *',
+ 4 => '0 | 1 2 | * 4 * 6 | * * 9 A * * * E',
+ 4 => '0 | 1 2 | * 4 * 6 | * * 9 A * * * E',
+ 4 => '0 | 1 2 | * 4 * 6 | * * 9 A * * D',
+ 4 => '0 | 1 2 | * 4 * 6 | * * 9 A * * D *',
+ 4 => '0 | 1 2 | * 4 * 6 | * * 9 A * * D E',
+ 4 => '0 | 1 2 | * 4 * 6 | * * 9 A * * D E',
+ 3 => '0 | 1 2 | * 4 5 |',
+ 3 => '0 | 1 2 | * 4 5 * | * * * * * * * *',
+ 3 => '0 | 1 2 | * 4 5 * | * * * * * C',
+ 3 => '0 | 1 2 | * 4 5 * | * * * * * C * *',
+ 3 => '0 | 1 2 | * 4 5 * | * * * * B',
+ 3 => '0 | 1 2 | * 4 5 * | * * * * B * * *',
+ 3 => '0 | 1 2 | * 4 5 * | * * * * B C',
+ 3 => '0 | 1 2 | * 4 5 * | * * * * B C * *',
+ 3 => '0 | 1 2 | * 4 5 * | * * * A',
+ 3 => '0 | 1 2 | * 4 5 * | * * * A * * * *',
+ 4 => '0 | 1 2 | * 4 5 * | * * * A * C',
+ 4 => '0 | 1 2 | * 4 5 * | * * * A * C * *',
+ 4 => '0 | 1 2 | * 4 5 * | * * * A B',
+ 4 => '0 | 1 2 | * 4 5 * | * * * A B * * *',
+ 4 => '0 | 1 2 | * 4 5 * | * * * A B C',
+ 4 => '0 | 1 2 | * 4 5 * | * * * A B C * *',
+ 3 => '0 | 1 2 | * 4 5 * | * * 9',
+ 3 => '0 | 1 2 | * 4 5 * | * * 9 * * * * *',
+ 4 => '0 | 1 2 | * 4 5 * | * * 9 * * C',
+ 4 => '0 | 1 2 | * 4 5 * | * * 9 * * C * *',
+ 4 => '0 | 1 2 | * 4 5 * | * * 9 * B',
+ 4 => '0 | 1 2 | * 4 5 * | * * 9 * B * * *',
+ 4 => '0 | 1 2 | * 4 5 * | * * 9 * B C',
+ 4 => '0 | 1 2 | * 4 5 * | * * 9 * B C * *',
+ 3 => '0 | 1 2 | * 4 5 * | * * 9 A',
+ 3 => '0 | 1 2 | * 4 5 * | * * 9 A * * * *',
+ 4 => '0 | 1 2 | * 4 5 * | * * 9 A * C',
+ 4 => '0 | 1 2 | * 4 5 * | * * 9 A * C * *',
+ 4 => '0 | 1 2 | * 4 5 * | * * 9 A B',
+ 4 => '0 | 1 2 | * 4 5 * | * * 9 A B * * *',
+ 4 => '0 | 1 2 | * 4 5 * | * * 9 A B C',
+ 4 => '0 | 1 2 | * 4 5 * | * * 9 A B C * *',
+ 3 => '0 | 1 2 | * 4 5 6 |',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * * * * *',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * * * * E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * * * * E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * * * D',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * * * D *',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * * * D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * * * D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * * C',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * * C * *',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * * C * E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * * C * E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * * C D',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * * C D *',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * * C D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * * C D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * B',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * B * * *',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * B * * E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * B * * E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * B * D',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * B * D *',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * B * D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * B * D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * B C',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * B C * *',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * B C * E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * B C * E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * B C D',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * B C D *',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * B C D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * * B C D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * A',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * A * * * *',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * A * * * E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * A * * * E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * A * * D',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * A * * D *',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * A * * D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * A * * D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * A * C',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * A * C * *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A * C * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A * C * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A * C D',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A * C D *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A * C D E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A * C D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * A B',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * A B * * *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A B * * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A B * * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A B * D',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A B * D *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A B * D E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A B * D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * A B C',
+ 3 => '0 | 1 2 | * 4 5 6 | * * * A B C * *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A B C * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A B C * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A B C D',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A B C D *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A B C D E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * * A B C D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 * * * * *',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 * * * * E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 * * * * E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 * * * D',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 * * * D *',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 * * * D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 * * * D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 * * C',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 * * C * *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * * C * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * * C * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * * C D',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * * C D *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * * C D E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * * C D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 * B',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 * B * * *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * B * * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * B * * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * B * D',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * B * D *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * B * D E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * B * D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 * B C',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 * B C * *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * B C * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * B C * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * B C D',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * B C D *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * B C D E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 * B C D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 A',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 A * * * *',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 A * * * E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 A * * * E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 A * * D',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 A * * D *',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 A * * D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 A * * D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 A * C',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 A * C * *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A * C * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A * C * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A * C D',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A * C D *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A * C D E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A * C D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 A B',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 A B * * *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A B * * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A B * * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A B * D',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A B * D *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A B * D E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A B * D E',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 A B C',
+ 3 => '0 | 1 2 | * 4 5 6 | * * 9 A B C * *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A B C * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A B C * E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A B C D',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A B C D *',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A B C D E',
+ 4 => '0 | 1 2 | * 4 5 6 | * * 9 A B C D E',
+ 2 => '0 | 1 2 | 3 |',
+ 2 => '0 | 1 2 | 3 * * * | * * * * * * * *',
+ 2 => '0 | 1 2 | 3 * * * | * 8',
+ 2 => '0 | 1 2 | 3 * * * | * 8 * * * * * *',
+ 2 => '0 | 1 2 | 3 * * * | 7',
+ 2 => '0 | 1 2 | 3 * * * | 7 * * * * * * *',
+ 2 => '0 | 1 2 | 3 * * * | 7 8',
+ 2 => '0 | 1 2 | 3 * * * | 7 8 * * * * * *',
+ 3 => '0 | 1 2 | 3 * * 6 |',
+ 3 => '0 | 1 2 | 3 * * 6 | * * * * * * * *',
+ 3 => '0 | 1 2 | 3 * * 6 | * * * * * * * E',
+ 3 => '0 | 1 2 | 3 * * 6 | * * * * * * * E',
+ 3 => '0 | 1 2 | 3 * * 6 | * * * * * * D',
+ 3 => '0 | 1 2 | 3 * * 6 | * * * * * * D *',
+ 3 => '0 | 1 2 | 3 * * 6 | * * * * * * D E',
+ 3 => '0 | 1 2 | 3 * * 6 | * * * * * * D E',
+ 3 => '0 | 1 2 | 3 * * 6 | * 8',
+ 3 => '0 | 1 2 | 3 * * 6 | * 8 * * * * * *',
+ 4 => '0 | 1 2 | 3 * * 6 | * 8 * * * * * E',
+ 4 => '0 | 1 2 | 3 * * 6 | * 8 * * * * * E',
+ 4 => '0 | 1 2 | 3 * * 6 | * 8 * * * * D',
+ 4 => '0 | 1 2 | 3 * * 6 | * 8 * * * * D *',
+ 4 => '0 | 1 2 | 3 * * 6 | * 8 * * * * D E',
+ 4 => '0 | 1 2 | 3 * * 6 | * 8 * * * * D E',
+ 3 => '0 | 1 2 | 3 * * 6 | 7',
+ 3 => '0 | 1 2 | 3 * * 6 | 7 * * * * * * *',
+ 4 => '0 | 1 2 | 3 * * 6 | 7 * * * * * * E',
+ 4 => '0 | 1 2 | 3 * * 6 | 7 * * * * * * E',
+ 4 => '0 | 1 2 | 3 * * 6 | 7 * * * * * D',
+ 4 => '0 | 1 2 | 3 * * 6 | 7 * * * * * D *',
+ 4 => '0 | 1 2 | 3 * * 6 | 7 * * * * * D E',
+ 4 => '0 | 1 2 | 3 * * 6 | 7 * * * * * D E',
+ 3 => '0 | 1 2 | 3 * * 6 | 7 8',
+ 3 => '0 | 1 2 | 3 * * 6 | 7 8 * * * * * *',
+ 4 => '0 | 1 2 | 3 * * 6 | 7 8 * * * * * E',
+ 4 => '0 | 1 2 | 3 * * 6 | 7 8 * * * * * E',
+ 4 => '0 | 1 2 | 3 * * 6 | 7 8 * * * * D',
+ 4 => '0 | 1 2 | 3 * * 6 | 7 8 * * * * D *',
+ 4 => '0 | 1 2 | 3 * * 6 | 7 8 * * * * D E',
+ 4 => '0 | 1 2 | 3 * * 6 | 7 8 * * * * D E',
+ 3 => '0 | 1 2 | 3 * 5 |',
+ 3 => '0 | 1 2 | 3 * 5 * | * * * * * * * *',
+ 3 => '0 | 1 2 | 3 * 5 * | * * * * * C',
+ 3 => '0 | 1 2 | 3 * 5 * | * * * * * C * *',
+ 3 => '0 | 1 2 | 3 * 5 * | * * * * B',
+ 3 => '0 | 1 2 | 3 * 5 * | * * * * B * * *',
+ 3 => '0 | 1 2 | 3 * 5 * | * * * * B C',
+ 3 => '0 | 1 2 | 3 * 5 * | * * * * B C * *',
+ 3 => '0 | 1 2 | 3 * 5 * | * 8',
+ 3 => '0 | 1 2 | 3 * 5 * | * 8 * * * * * *',
+ 4 => '0 | 1 2 | 3 * 5 * | * 8 * * * C',
+ 4 => '0 | 1 2 | 3 * 5 * | * 8 * * * C * *',
+ 4 => '0 | 1 2 | 3 * 5 * | * 8 * * B',
+ 4 => '0 | 1 2 | 3 * 5 * | * 8 * * B * * *',
+ 4 => '0 | 1 2 | 3 * 5 * | * 8 * * B C',
+ 4 => '0 | 1 2 | 3 * 5 * | * 8 * * B C * *',
+ 3 => '0 | 1 2 | 3 * 5 * | 7',
+ 3 => '0 | 1 2 | 3 * 5 * | 7 * * * * * * *',
+ 4 => '0 | 1 2 | 3 * 5 * | 7 * * * * C',
+ 4 => '0 | 1 2 | 3 * 5 * | 7 * * * * C * *',
+ 4 => '0 | 1 2 | 3 * 5 * | 7 * * * B',
+ 4 => '0 | 1 2 | 3 * 5 * | 7 * * * B * * *',
+ 4 => '0 | 1 2 | 3 * 5 * | 7 * * * B C',
+ 4 => '0 | 1 2 | 3 * 5 * | 7 * * * B C * *',
+ 3 => '0 | 1 2 | 3 * 5 * | 7 8',
+ 3 => '0 | 1 2 | 3 * 5 * | 7 8 * * * * * *',
+ 4 => '0 | 1 2 | 3 * 5 * | 7 8 * * * C',
+ 4 => '0 | 1 2 | 3 * 5 * | 7 8 * * * C * *',
+ 4 => '0 | 1 2 | 3 * 5 * | 7 8 * * B',
+ 4 => '0 | 1 2 | 3 * 5 * | 7 8 * * B * * *',
+ 4 => '0 | 1 2 | 3 * 5 * | 7 8 * * B C',
+ 4 => '0 | 1 2 | 3 * 5 * | 7 8 * * B C * *',
+ 3 => '0 | 1 2 | 3 * 5 6 |',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * * * * *',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * * * * E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * * * * E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * * * D',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * * * D *',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * * * D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * * * D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * * C',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * * C * *',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * * C * E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * * C * E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * * C D',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * * C D *',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * * C D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * * C D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * B',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * B * * *',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * B * * E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * B * * E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * B * D',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * B * D *',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * B * D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * B * D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * B C',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * B C * *',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * B C * E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * B C * E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * B C D',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * B C D *',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * B C D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * * * * B C D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * 8',
+ 3 => '0 | 1 2 | 3 * 5 6 | * 8 * * * * * *',
+ 3 => '0 | 1 2 | 3 * 5 6 | * 8 * * * * * E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * 8 * * * * * E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * 8 * * * * D',
+ 3 => '0 | 1 2 | 3 * 5 6 | * 8 * * * * D *',
+ 3 => '0 | 1 2 | 3 * 5 6 | * 8 * * * * D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * 8 * * * * D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * 8 * * * C',
+ 3 => '0 | 1 2 | 3 * 5 6 | * 8 * * * C * *',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * * C * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * * C * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * * C D',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * * C D *',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * * C D E',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * * C D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * 8 * * B',
+ 3 => '0 | 1 2 | 3 * 5 6 | * 8 * * B * * *',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * B * * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * B * * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * B * D',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * B * D *',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * B * D E',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * B * D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | * 8 * * B C',
+ 3 => '0 | 1 2 | 3 * 5 6 | * 8 * * B C * *',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * B C * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * B C * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * B C D',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * B C D *',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * B C D E',
+ 4 => '0 | 1 2 | 3 * 5 6 | * 8 * * B C D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 * * * * * * *',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 * * * * * * E',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 * * * * * * E',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 * * * * * D',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 * * * * * D *',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 * * * * * D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 * * * * * D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 * * * * C',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 * * * * C * *',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * * C * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * * C * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * * C D',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * * C D *',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * * C D E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * * C D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 * * * B',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 * * * B * * *',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * B * * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * B * * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * B * D',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * B * D *',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * B * D E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * B * D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 * * * B C',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 * * * B C * *',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * B C * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * B C * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * B C D',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * B C D *',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * B C D E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 * * * B C D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 8',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 8 * * * * * *',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 8 * * * * * E',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 8 * * * * * E',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 8 * * * * D',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 8 * * * * D *',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 8 * * * * D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 8 * * * * D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 8 * * * C',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 8 * * * C * *',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * * C * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * * C * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * * C D',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * * C D *',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * * C D E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * * C D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 8 * * B',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 8 * * B * * *',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * B * * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * B * * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * B * D',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * B * D *',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * B * D E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * B * D E',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 8 * * B C',
+ 3 => '0 | 1 2 | 3 * 5 6 | 7 8 * * B C * *',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * B C * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * B C * E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * B C D',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * B C D *',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * B C D E',
+ 4 => '0 | 1 2 | 3 * 5 6 | 7 8 * * B C D E',
+ 2 => '0 | 1 2 | 3 4 |',
+ 2 => '0 | 1 2 | 3 4 * * | * * * * * * * *',
+ 2 => '0 | 1 2 | 3 4 * * | * * * A',
+ 2 => '0 | 1 2 | 3 4 * * | * * * A * * * *',
+ 2 => '0 | 1 2 | 3 4 * * | * * 9',
+ 2 => '0 | 1 2 | 3 4 * * | * * 9 * * * * *',
+ 2 => '0 | 1 2 | 3 4 * * | * * 9 A',
+ 2 => '0 | 1 2 | 3 4 * * | * * 9 A * * * *',
+ 2 => '0 | 1 2 | 3 4 * * | * 8',
+ 2 => '0 | 1 2 | 3 4 * * | * 8 * * * * * *',
+ 2 => '0 | 1 2 | 3 4 * * | * 8 * A',
+ 2 => '0 | 1 2 | 3 4 * * | * 8 * A * * * *',
+ 2 => '0 | 1 2 | 3 4 * * | * 8 9',
+ 2 => '0 | 1 2 | 3 4 * * | * 8 9 * * * * *',
+ 2 => '0 | 1 2 | 3 4 * * | * 8 9 A',
+ 2 => '0 | 1 2 | 3 4 * * | * 8 9 A * * * *',
+ 2 => '0 | 1 2 | 3 4 * * | 7',
+ 2 => '0 | 1 2 | 3 4 * * | 7 * * * * * * *',
+ 2 => '0 | 1 2 | 3 4 * * | 7 * * A',
+ 2 => '0 | 1 2 | 3 4 * * | 7 * * A * * * *',
+ 2 => '0 | 1 2 | 3 4 * * | 7 * 9',
+ 2 => '0 | 1 2 | 3 4 * * | 7 * 9 * * * * *',
+ 2 => '0 | 1 2 | 3 4 * * | 7 * 9 A',
+ 2 => '0 | 1 2 | 3 4 * * | 7 * 9 A * * * *',
+ 2 => '0 | 1 2 | 3 4 * * | 7 8',
+ 2 => '0 | 1 2 | 3 4 * * | 7 8 * * * * * *',
+ 2 => '0 | 1 2 | 3 4 * * | 7 8 * A',
+ 2 => '0 | 1 2 | 3 4 * * | 7 8 * A * * * *',
+ 2 => '0 | 1 2 | 3 4 * * | 7 8 9',
+ 2 => '0 | 1 2 | 3 4 * * | 7 8 9 * * * * *',
+ 2 => '0 | 1 2 | 3 4 * * | 7 8 9 A',
+ 2 => '0 | 1 2 | 3 4 * * | 7 8 9 A * * * *',
+ 3 => '0 | 1 2 | 3 4 * 6 |',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * * * * * * *',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * * * * * * E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * * * * * * E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * * * * * D',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * * * * * D *',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * * * * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * * * * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * * A',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * * A * * * *',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * * A * * * E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * * A * * * E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * * A * * D',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * * A * * D *',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * * A * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * * A * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * 9',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * 9 * * * * *',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * 9 * * * * E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * 9 * * * * E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * 9 * * * D',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * 9 * * * D *',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * 9 * * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * 9 * * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * 9 A',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * 9 A * * * *',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * 9 A * * * E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * 9 A * * * E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * 9 A * * D',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * 9 A * * D *',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * 9 A * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * * 9 A * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * 8',
+ 3 => '0 | 1 2 | 3 4 * 6 | * 8 * * * * * *',
+ 3 => '0 | 1 2 | 3 4 * 6 | * 8 * * * * * E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * 8 * * * * * E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * 8 * * * * D',
+ 3 => '0 | 1 2 | 3 4 * 6 | * 8 * * * * D *',
+ 3 => '0 | 1 2 | 3 4 * 6 | * 8 * * * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * 8 * * * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * 8 * A',
+ 3 => '0 | 1 2 | 3 4 * 6 | * 8 * A * * * *',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 * A * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 * A * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 * A * * D',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 * A * * D *',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 * A * * D E',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 * A * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * 8 9',
+ 3 => '0 | 1 2 | 3 4 * 6 | * 8 9 * * * * *',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 9 * * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 9 * * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 9 * * * D',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 9 * * * D *',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 9 * * * D E',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 9 * * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | * 8 9 A',
+ 3 => '0 | 1 2 | 3 4 * 6 | * 8 9 A * * * *',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 9 A * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 9 A * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 9 A * * D',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 9 A * * D *',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 9 A * * D E',
+ 4 => '0 | 1 2 | 3 4 * 6 | * 8 9 A * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 * * * * * * *',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 * * * * * * E',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 * * * * * * E',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 * * * * * D',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 * * * * * D *',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 * * * * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 * * * * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 * * A',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 * * A * * * *',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * * A * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * * A * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * * A * * D',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * * A * * D *',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * * A * * D E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * * A * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 * 9',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 * 9 * * * * *',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * 9 * * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * 9 * * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * 9 * * * D',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * 9 * * * D *',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * 9 * * * D E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * 9 * * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 * 9 A',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 * 9 A * * * *',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * 9 A * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * 9 A * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * 9 A * * D',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * 9 A * * D *',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * 9 A * * D E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 * 9 A * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 8',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 8 * * * * * *',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 8 * * * * * E',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 8 * * * * * E',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 8 * * * * D',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 8 * * * * D *',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 8 * * * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 8 * * * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 8 * A',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 8 * A * * * *',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 * A * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 * A * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 * A * * D',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 * A * * D *',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 * A * * D E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 * A * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 8 9',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 8 9 * * * * *',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 9 * * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 9 * * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 9 * * * D',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 9 * * * D *',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 9 * * * D E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 9 * * * D E',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 8 9 A',
+ 3 => '0 | 1 2 | 3 4 * 6 | 7 8 9 A * * * *',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 9 A * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 9 A * * * E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 9 A * * D',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 9 A * * D *',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 9 A * * D E',
+ 4 => '0 | 1 2 | 3 4 * 6 | 7 8 9 A * * D E',
+ 3 => '0 | 1 2 | 3 4 5 |',
+ 3 => '0 | 1 2 | 3 4 5 * | * * * * * * * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * * * * * C',
+ 3 => '0 | 1 2 | 3 4 5 * | * * * * * C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * * * * B',
+ 3 => '0 | 1 2 | 3 4 5 * | * * * * B * * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * * * * B C',
+ 3 => '0 | 1 2 | 3 4 5 * | * * * * B C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * * * A',
+ 3 => '0 | 1 2 | 3 4 5 * | * * * A * * * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * * * A * C',
+ 3 => '0 | 1 2 | 3 4 5 * | * * * A * C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * * * A B',
+ 3 => '0 | 1 2 | 3 4 5 * | * * * A B * * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * * * A B C',
+ 3 => '0 | 1 2 | 3 4 5 * | * * * A B C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * * 9',
+ 3 => '0 | 1 2 | 3 4 5 * | * * 9 * * * * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * * 9 * * C',
+ 3 => '0 | 1 2 | 3 4 5 * | * * 9 * * C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * * 9 * B',
+ 3 => '0 | 1 2 | 3 4 5 * | * * 9 * B * * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * * 9 * B C',
+ 3 => '0 | 1 2 | 3 4 5 * | * * 9 * B C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * * 9 A',
+ 3 => '0 | 1 2 | 3 4 5 * | * * 9 A * * * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * * 9 A * C',
+ 3 => '0 | 1 2 | 3 4 5 * | * * 9 A * C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * * 9 A B',
+ 3 => '0 | 1 2 | 3 4 5 * | * * 9 A B * * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * * 9 A B C',
+ 3 => '0 | 1 2 | 3 4 5 * | * * 9 A B C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * 8',
+ 3 => '0 | 1 2 | 3 4 5 * | * 8 * * * * * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * 8 * * * C',
+ 3 => '0 | 1 2 | 3 4 5 * | * 8 * * * C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * 8 * * B',
+ 3 => '0 | 1 2 | 3 4 5 * | * 8 * * B * * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * 8 * * B C',
+ 3 => '0 | 1 2 | 3 4 5 * | * 8 * * B C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * 8 * A',
+ 3 => '0 | 1 2 | 3 4 5 * | * 8 * A * * * *',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 * A * C',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 * A * C * *',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 * A B',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 * A B * * *',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 * A B C',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 * A B C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * 8 9',
+ 3 => '0 | 1 2 | 3 4 5 * | * 8 9 * * * * *',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 9 * * C',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 9 * * C * *',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 9 * B',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 9 * B * * *',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 9 * B C',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 9 * B C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | * 8 9 A',
+ 3 => '0 | 1 2 | 3 4 5 * | * 8 9 A * * * *',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 9 A * C',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 9 A * C * *',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 9 A B',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 9 A B * * *',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 9 A B C',
+ 4 => '0 | 1 2 | 3 4 5 * | * 8 9 A B C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | 7',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 * * * * * * *',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 * * * * C',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 * * * * C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 * * * B',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 * * * B * * *',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 * * * B C',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 * * * B C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 * * A',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 * * A * * * *',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * * A * C',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * * A * C * *',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * * A B',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * * A B * * *',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * * A B C',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * * A B C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 * 9',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 * 9 * * * * *',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * 9 * * C',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * 9 * * C * *',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * 9 * B',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * 9 * B * * *',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * 9 * B C',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * 9 * B C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 * 9 A',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 * 9 A * * * *',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * 9 A * C',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * 9 A * C * *',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * 9 A B',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * 9 A B * * *',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * 9 A B C',
+ 4 => '0 | 1 2 | 3 4 5 * | 7 * 9 A B C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 8',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 8 * * * * * *',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 8 * * * C',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 8 * * * C * *',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 8 * * B',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 8 * * B * * *',
+ 3 => '0 | 1 2 | 3 4 5 * | 7 8 * * B C',