From 4b97c30a0f595a03515164c96c2746556b9c8c74 Mon Sep 17 00:00:00 2001 From: Mark Anderson Date: Tue, 4 Nov 2025 07:24:11 +0000 Subject: ch-2.raku grammar improved --- challenge-346/mark-anderson/raku/ch-2.raku | 1299 +++++++++++++++++++++++++++- 1 file changed, 1263 insertions(+), 36 deletions(-) diff --git a/challenge-346/mark-anderson/raku/ch-2.raku b/challenge-346/mark-anderson/raku/ch-2.raku index 60238a8f9d..fd31085299 100644 --- a/challenge-346/mark-anderson/raku/ch-2.raku +++ b/challenge-346/mark-anderson/raku/ch-2.raku @@ -14,31 +14,20 @@ is-deeply magic-expression("1001", 2), ("1+0*0+1", "1+0+0+1", "1+0-0+1", "1-0*0 grammar Calculate { - rule TOP { } - rule add-sub { + % $=<[+-]> } - rule mult { + % '*' } - rule digits { + } + rule TOP { } + rule add { + % '+' } + rule subt { + % '-' } + rule mult { + % '*' } + rule digits { + } } class Actions { - method TOP($/) { make $.made } - method digits($/) { make $/ } - method mult($/) { make [*] $>>.made } - method add-sub($/) - { - my @ops = $>>.Str; - my @vals = $>>.made; - my $result; - - for @vals Z @ops.unshift('+') - { - if .tail eq '+' { $result += .head } - else { $result -= .head } - } - - make $result - } + method TOP ($/) { make $.made } + method add ($/) { make [+] $>>.made } + method subt ($/) { make [-] $>>.made } + method mult ($/) { make [*] $>>.made } + method digits($/) { make $/.UInt } } multi magic-expression($str where *.chars > 7, $target) @@ -54,28 +43,1266 @@ multi magic-expression($str, $target) gather for @partitions[@nums-2]<> -> @p { my @r = @nums.rotor(@p)>>.join; - next if any @r ~~ /^0\d/; + next if any @r ~~ /^0/; for @operators[@p-2]<> -> @o { my $exp = flat roundrobin @r, @o; - take [~] $exp if Calculate.parse($exp, actions => Actions).made == $target + take [~] $exp if Calculate.parse($exp, :actions(Actions)).made == $target } } } =finish + [ -[[[1,1]], -[[1,1,1],[1,2],[2,1]], -[[1,1,1,1],[1,1,2],[1,2,1],[2,1,1],[1,3],[3,1],[2,2]], -[[1,1,1,1,1],[1,1,1,2],[1,1,2,1],[1,2,1,1],[2,1,1,1],[1,1,3],[1,3,1],[3,1,1],[1,2,2],[2,1,2],[2,2,1],[1,4],[4,1],[2,3],[3,2]], -[[1,1,1,1,1,1],[1,1,1,1,2],[1,1,1,2,1],[1,1,2,1,1],[1,2,1,1,1],[2,1,1,1,1],[1,1,1,3],[1,1,3,1],[1,3,1,1],[3,1,1,1],[1,1,2,2],[1,2,1,2],[1,2,2,1],[2,1,1,2],[2,1,2,1],[2,2,1,1],[1,1,4],[1,4,1],[4,1,1],[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1],[1,5],[5,1],[2,2,2],[2,4],[4,2],[3,3]], -[[1,1,1,1,1,1,1],[1,1,1,1,1,2],[1,1,1,1,2,1],[1,1,1,2,1,1],[1,1,2,1,1,1],[1,2,1,1,1,1],[2,1,1,1,1,1],[1,1,1,1,3],[1,1,1,3,1],[1,1,3,1,1],[1,3,1,1,1],[3,1,1,1,1],[1,1,1,2,2],[1,1,2,1,2],[1,1,2,2,1],[1,2,1,1,2],[1,2,1,2,1],[1,2,2,1,1],[2,1,1,1,2],[2,1,1,2,1],[2,1,2,1,1],[2,2,1,1,1],[1,1,1,4],[1,1,4,1],[1,4,1,1],[4,1,1,1],[1,1,2,3],[1,1,3,2],[1,2,1,3],[1,2,3,1],[1,3,1,2],[1,3,2,1],[2,1,1,3],[2,1,3,1],[2,3,1,1],[3,1,1,2],[3,1,2,1],[3,2,1,1],[1,1,5],[1,5,1],[5,1,1],[1,2,2,2],[2,1,2,2],[2,2,1,2],[2,2,2,1],[1,2,4],[1,4,2],[2,1,4],[2,4,1],[4,1,2],[4,2,1],[1,3,3],[3,1,3],[3,3,1],[1,6],[6,1],[2,2,3],[2,3,2],[3,2,2],[2,5],[5,2],[3,4],[4,3]]], - -[[["*"],["+"],["-"]], -[["*","*"],["*","+"],["*","-"],["+","*"],["+","+"],["+","-"],["-","*"],["-","+"],["-","-"]], -[["*","*","*"],["*","*","+"],["*","*","-"],["*","+","*"],["*","+","+"],["*","+","-"],["*","-","*"],["*","-","+"],["*","-","-"],["+","*","*"],["+","*","+"],["+","*","-"],["+","+","*"],["+","+","+"],["+","+","-"],["+","-","*"],["+","-","+"],["+","-","-"],["-","*","*"],["-","*","+"],["-","*","-"],["-","+","*"],["-","+","+"],["-","+","-"],["-","-","*"],["-","-","+"],["-","-","-"]], -[["*","*","*","*"],["*","*","*","+"],["*","*","*","-"],["*","*","+","*"],["*","*","+","+"],["*","*","+","-"],["*","*","-","*"],["*","*","-","+"],["*","*","-","-"],["*","+","*","*"],["*","+","*","+"],["*","+","*","-"],["*","+","+","*"],["*","+","+","+"],["*","+","+","-"],["*","+","-","*"],["*","+","-","+"],["*","+","-","-"],["*","-","*","*"],["*","-","*","+"],["*","-","*","-"],["*","-","+","*"],["*","-","+","+"],["*","-","+","-"],["*","-","-","*"],["*","-","-","+"],["*","-","-","-"],["+","*","*","*"],["+","*","*","+"],["+","*","*","-"],["+","*","+","*"],["+","*","+","+"],["+","*","+","-"],["+","*","-","*"],["+","*","-","+"],["+","*","-","-"],["+","+","*","*"],["+","+","*","+"],["+","+","*","-"],["+","+","+","*"],["+","+","+","+"],["+","+","+","-"],["+","+","-","*"],["+","+","-","+"],["+","+","-","-"],["+","-","*","*"],["+","-","*","+"],["+","-","*","-"],["+","-","+","*"],["+","-","+","+"],["+","-","+","-"],["+","-","-","*"],["+","-","-","+"],["+","-","-","-"],["-","*","*","*"],["-","*","*","+"],["-","*","*","-"],["-","*","+","*"],["-","*","+","+"],["-","*","+","-"],["-","*","-","*"],["-","*","-","+"],["-","*","-","-"],["-","+","*","*"],["-","+","*","+"],["-","+","*","-"],["-","+","+","*"],["-","+","+","+"],["-","+","+","-"],["-","+","-","*"],["-","+","-","+"],["-","+","-","-"],["-","-","*","*"],["-","-","*","+"],["-","-","*","-"],["-","-","+","*"],["-","-","+","+"],["-","-","+","-"],["-","-","-","*"],["-","-","-","+"],["-","-","-","-"]], -[["*","*","*","*","*"],["*","*","*","*","+"],["*","*","*","*","-"],["*","*","*","+","*"],["*","*","*","+","+"],["*","*","*","+","-"],["*","*","*","-","*"],["*","*","*","-","+"],["*","*","*","-","-"],["*","*","+","*","*"],["*","*","+","*","+"],["*","*","+","*","-"],["*","*","+","+","*"],["*","*","+","+","+"],["*","*","+","+","-"],["*","*","+","-","*"],["*","*","+","-","+"],["*","*","+","-","-"],["*","*","-","*","*"],["*","*","-","*","+"],["*","*","-","*","-"],["*","*","-","+","*"],["*","*","-","+","+"],["*","*","-","+","-"],["*","*","-","-","*"],["*","*","-","-","+"],["*","*","-","-","-"],["*","+","*","*","*"],["*","+","*","*","+"],["*","+","*","*","-"],["*","+","*","+","*"],["*","+","*","+","+"],["*","+","*","+","-"],["*","+","*","-","*"],["*","+","*","-","+"],["*","+","*","-","-"],["*","+","+","*","*"],["*","+","+","*","+"],["*","+","+","*","-"],["*","+","+","+","*"],["*","+","+","+","+"],["*","+","+","+","-"],["*","+","+","-","*"],["*","+","+","-","+"],["*","+","+","-","-"],["*","+","-","*","*"],["*","+","-","*","+"],["*","+","-","*","-"],["*","+","-","+","*"],["*","+","-","+","+"],["*","+","-","+","-"],["*","+","-","-","*"],["*","+","-","-","+"],["*","+","-","-","-"],["*","-","*","*","*"],["*","-","*","*","+"],["*","-","*","*","-"],["*","-","*","+","*"],["*","-","*","+","+"],["*","-","*","+","-"],["*","-","*","-","*"],["*","-","*","-","+"],["*","-","*","-","-"],["*","-","+","*","*"],["*","-","+","*","+"],["*","-","+","*","-"],["*","-","+","+","*"],["*","-","+","+","+"],["*","-","+","+","-"],["*","-","+","-","*"],["*","-","+","-","+"],["*","-","+","-","-"],["*","-","-","*","*"],["*","-","-","*","+"],["*","-","-","*","-"],["*","-","-","+","*"],["*","-","-","+","+"],["*","-","-","+","-"],["*","-","-","-","*"],["*","-","-","-","+"],["*","-","-","-","-"],["+","*","*","*","*"],["+","*","*","*","+"],["+","*","*","*","-"],["+","*","*","+","*"],["+","*","*","+","+"],["+","*","*","+","-"],["+","*","*","-","*"],["+","*","*","-","+"],["+","*","*","-","-"],["+","*","+","*","*"],["+","*","+","*","+"],["+","*","+","*","-"],["+","*","+","+","*"],["+","*","+","+","+"],["+","*","+","+","-"],["+","*","+","-","*"],["+","*","+","-","+"],["+","*","+","-","-"],["+","*","-","*","*"],["+","*","-","*","+"],["+","*","-","*","-"],["+","*","-","+","*"],["+","*","-","+","+"],["+","*","-","+","-"],["+","*","-","-","*"],["+","*","-","-","+"],["+","*","-","-","-"],["+","+","*","*","*"],["+","+","*","*","+"],["+","+","*","*","-"],["+","+","*","+","*"],["+","+","*","+","+"],["+","+","*","+","-"],["+","+","*","-","*"],["+","+","*","-","+"],["+","+","*","-","-"],["+","+","+","*","*"],["+","+","+","*","+"],["+","+","+","*","-"],["+","+","+","+","*"],["+","+","+","+","+"],["+","+","+","+","-"],["+","+","+","-","*"],["+","+","+","-","+"],["+","+","+","-","-"],["+","+","-","*","*"],["+","+","-","*","+"],["+","+","-","*","-"],["+","+","-","+","*"],["+","+","-","+","+"],["+","+","-","+","-"],["+","+","-","-","*"],["+","+","-","-","+"],["+","+","-","-","-"],["+","-","*","*","*"],["+","-","*","*","+"],["+","-","*","*","-"],["+","-","*","+","*"],["+","-","*","+","+"],["+","-","*","+","-"],["+","-","*","-","*"],["+","-","*","-","+"],["+","-","*","-","-"],["+","-","+","*","*"],["+","-","+","*","+"],["+","-","+","*","-"],["+","-","+","+","*"],["+","-","+","+","+"],["+","-","+","+","-"],["+","-","+","-","*"],["+","-","+","-","+"],["+","-","+","-","-"],["+","-","-","*","*"],["+","-","-","*","+"],["+","-","-","*","-"],["+","-","-","+","*"],["+","-","-","+","+"],["+","-","-","+","-"],["+","-","-","-","*"],["+","-","-","-","+"],["+","-","-","-","-"],["-","*","*","*","*"],["-","*","*","*","+"],["-","*","*","*","-"],["-","*","*","+","*"],["-","*","*","+","+"],["-","*","*","+","-"],["-","*","*","-","*"],["-","*","*","-","+"],["-","*","*","-","-"],["-","*","+","*","*"],["-","*","+","*","+"],["-","*","+","*","-"],["-","*","+","+","*"],["-","*","+","+","+"],["-","*","+","+","-"],["-","*","+","-","*"],["-","*","+","-","+"],["-","*","+","-","-"],["-","*","-","*","*"],["-","*","-","*","+"],["-","*","-","*","-"],["-","*","-","+","*"],["-","*","-","+","+"],["-","*","-","+","-"],["-","*","-","-","*"],["-","*","-","-","+"],["-","*","-","-","-"],["-","+","*","*","*"],["-","+","*","*","+"],["-","+","*","*","-"],["-","+","*","+","*"],["-","+","*","+","+"],["-","+","*","+","-"],["-","+","*","-","*"],["-","+","*","-","+"],["-","+","*","-","-"],["-","+","+","*","*"],["-","+","+","*","+"],["-","+","+","*","-"],["-","+","+","+","*"],["-","+","+","+","+"],["-","+","+","+","-"],["-","+","+","-","*"],["-","+","+","-","+"],["-","+","+","-","-"],["-","+","-","*","*"],["-","+","-","*","+"],["-","+","-","*","-"],["-","+","-","+","*"],["-","+","-","+","+"],["-","+","-","+","-"],["-","+","-","-","*"],["-","+","-","-","+"],["-","+","-","-","-"],["-","-","*","*","*"],["-","-","*","*","+"],["-","-","*","*","-"],["-","-","*","+","*"],["-","-","*","+","+"],["-","-","*","+","-"],["-","-","*","-","*"],["-","-","*","-","+"],["-","-","*","-","-"],["-","-","+","*","*"],["-","-","+","*","+"],["-","-","+","*","-"],["-","-","+","+","*"],["-","-","+","+","+"],["-","-","+","+","-"],["-","-","+","-","*"],["-","-","+","-","+"],["-","-","+","-","-"],["-","-","-","*","*"],["-","-","-","*","+"],["-","-","-","*","-"],["-","-","-","+","*"],["-","-","-","+","+"],["-","-","-","+","-"],["-","-","-","-","*"],["-","-","-","-","+"],["-","-","-","-","-"]], -[["*","*","*","*","*","*"],["*","*","*","*","*","+"],["*","*","*","*","*","-"],["*","*","*","*","+","*"],["*","*","*","*","+","+"],["*","*","*","*","+","-"],["*","*","*","*","-","*"],["*","*","*","*","-","+"],["*","*","*","*","-","-"],["*","*","*","+","*","*"],["*","*","*","+","*","+"],["*","*","*","+","*","-"],["*","*","*","+","+","*"],["*","*","*","+","+","+"],["*","*","*","+","+","-"],["*","*","*","+","-","*"],["*","*","*","+","-","+"],["*","*","*","+","-","-"],["*","*","*","-","*","*"],["*","*","*","-","*","+"],["*","*","*","-","*","-"],["*","*","*","-","+","*"],["*","*","*","-","+","+"],["*","*","*","-","+","-"],["*","*","*","-","-","*"],["*","*","*","-","-","+"],["*","*","*","-","-","-"],["*","*","+","*","*","*"],["*","*","+","*","*","+"],["*","*","+","*","*","-"],["*","*","+","*","+","*"],["*","*","+","*","+","+"],["*","*","+","*","+","-"],["*","*","+","*","-","*"],["*","*","+","*","-","+"],["*","*","+","*","-","-"],["*","*","+","+","*","*"],["*","*","+","+","*","+"],["*","*","+","+","*","-"],["*","*","+","+","+","*"],["*","*","+","+","+","+"],["*","*","+","+","+","-"],["*","*","+","+","-","*"],["*","*","+","+","-","+"],["*","*","+","+","-","-"],["*","*","+","-","*","*"],["*","*","+","-","*","+"],["*","*","+","-","*","-"],["*","*","+","-","+","*"],["*","*","+","-","+","+"],["*","*","+","-","+","-"],["*","*","+","-","-","*"],["*","*","+","-","-","+"],["*","*","+","-","-","-"],["*","*","-","*","*","*"],["*","*","-","*","*","+"],["*","*","-","*","*","-"],["*","*","-","*","+","*"],["*","*","-","*","+","+"],["*","*","-","*","+","-"],["*","*","-","*","-","*"],["*","*","-","*","-","+"],["*","*","-","*","-","-"],["*","*","-","+","*","*"],["*","*","-","+","*","+"],["*","*","-","+","*","-"],["*","*","-","+","+","*"],["*","*","-","+","+","+"],["*","*","-","+","+","-"],["*","*","-","+","-","*"],["*","*","-","+","-","+"],["*","*","-","+","-","-"],["*","*","-","-","*","*"],["*","*","-","-","*","+"],["*","*","-","-","*","-"],["*","*","-","-","+","*"],["*","*","-","-","+","+"],["*","*","-","-","+","-"],["*","*","-","-","-","*"],["*","*","-","-","-","+"],["*","*","-","-","-","-"],["*","+","*","*","*","*"],["*","+","*","*","*","+"],["*","+","*","*","*","-"],["*","+","*","*","+","*"],["*","+","*","*","+","+"],["*","+","*","*","+","-"],["*","+","*","*","-","*"],["*","+","*","*","-","+"],["*","+","*","*","-","-"],["*","+","*","+","*","*"],["*","+","*","+","*","+"],["*","+","*","+","*","-"],["*","+","*","+","+","*"],["*","+","*","+","+","+"],["*","+","*","+","+","-"],["*","+","*","+","-","*"],["*","+","*","+","-","+"],["*","+","*","+","-","-"],["*","+","*","-","*","*"],["*","+","*","-","*","+"],["*","+","*","-","*","-"],["*","+","*","-","+","*"],["*","+","*","-","+","+"],["*","+","*","-","+","-"],["*","+","*","-","-","*"],["*","+","*","-","-","+"],["*","+","*","-","-","-"],["*","+","+","*","*","*"],["*","+","+","*","*","+"],["*","+","+","*","*","-"],["*","+","+","*","+","*"],["*","+","+","*","+","+"],["*","+","+","*","+","-"],["*","+","+","*","-","*"],["*","+","+","*","-","+"],["*","+","+","*","-","-"],["*","+","+","+","*","*"],["*","+","+","+","*","+"],["*","+","+","+","*","-"],["*","+","+","+","+","*"],["*","+","+","+","+","+"],["*","+","+","+","+","-"],["*","+","+","+","-","*"],["*","+","+","+","-","+"],["*","+","+","+","-","-"],["*","+","+","-","*","*"],["*","+","+","-","*","+"],["*","+","+","-","*","-"],["*","+","+","-","+","*"],["*","+","+","-","+","+"],["*","+","+","-","+","-"],["*","+","+","-","-","*"],["*","+","+","-","-","+"],["*","+","+","-","-","-"],["*","+","-","*","*","*"],["*","+","-","*","*","+"],["*","+","-","*","*","-"],["*","+","-","*","+","*"],["*","+","-","*","+","+"],["*","+","-","*","+","-"],["*","+","-","*","-","*"],["*","+","-","*","-","+"],["*","+","-","*","-","-"],["*","+","-","+","*","*"],["*","+","-","+","*","+"],["*","+","-","+","*","-"],["*","+","-","+","+","*"],["*","+","-","+","+","+"],["*","+","-","+","+","-"],["*","+","-","+","-","*"],["*","+","-","+","-","+"],["*","+","-","+","-","-"],["*","+","-","-","*","*"],["*","+","-","-","*","+"],["*","+","-","-","*","-"],["*","+","-","-","+","*"],["*","+","-","-","+","+"],["*","+","-","-","+","-"],["*","+","-","-","-","*"],["*","+","-","-","-","+"],["*","+","-","-","-","-"],["*","-","*","*","*","*"],["*","-","*","*","*","+"],["*","-","*","*","*","-"],["*","-","*","*","+","*"],["*","-","*","*","+","+"],["*","-","*","*","+","-"],["*","-","*","*","-","*"],["*","-","*","*","-","+"],["*","-","*","*","-","-"],["*","-","*","+","*","*"],["*","-","*","+","*","+"],["*","-","*","+","*","-"],["*","-","*","+","+","*"],["*","-","*","+","+","+"],["*","-","*","+","+","-"],["*","-","*","+","-","*"],["*","-","*","+","-","+"],["*","-","*","+","-","-"],["*","-","*","-","*","*"],["*","-","*","-","*","+"],["*","-","*","-","*","-"],["*","-","*","-","+","*"],["*","-","*","-","+","+"],["*","-","*","-","+","-"],["*","-","*","-","-","*"],["*","-","*","-","-","+"],["*","-","*","-","-","-"],["*","-","+","*","*","*"],["*","-","+","*","*","+"],["*","-","+","*","*","-"],["*","-","+","*","+","*"],["*","-","+","*","+","+"],["*","-","+","*","+","-"],["*","-","+","*","-","*"],["*","-","+","*","-","+"],["*","-","+","*","-","-"],["*","-","+","+","*","*"],["*","-","+","+","*","+"],["*","-","+","+","*","-"],["*","-","+","+","+","*"],["*","-","+","+","+","+"],["*","-","+","+","+","-"],["*","-","+","+","-","*"],["*","-","+","+","-","+"],["*","-","+","+","-","-"],["*","-","+","-","*","*"],["*","-","+","-","*","+"],["*","-","+","-","*","-"],["*","-","+","-","+","*"],["*","-","+","-","+","+"],["*","-","+","-","+","-"],["*","-","+","-","-","*"],["*","-","+","-","-","+"],["*","-","+","-","-","-"],["*","-","-","*","*","*"],["*","-","-","*","*","+"],["*","-","-","*","*","-"],["*","-","-","*","+","*"],["*","-","-","*","+","+"],["*","-","-","*","+","-"],["*","-","-","*","-","*"],["*","-","-","*","-","+"],["*","-","-","*","-","-"],["*","-","-","+","*","*"],["*","-","-","+","*","+"],["*","-","-","+","*","-"],["*","-","-","+","+","*"],["*","-","-","+","+","+"],["*","-","-","+","+","-"],["*","-","-","+","-","*"],["*","-","-","+","-","+"],["*","-","-","+","-","-"],["*","-","-","-","*","*"],["*","-","-","-","*","+"],["*","-","-","-","*","-"],["*","-","-","-","+","*"],["*","-","-","-","+","+"],["*","-","-","-","+","-"],["*","-","-","-","-","*"],["*","-","-","-","-","+"],["*","-","-","-","-","-"],["+","*","*","*","*","*"],["+","*","*","*","*","+"],["+","*","*","*","*","-"],["+","*","*","*","+","*"],["+","*","*","*","+","+"],["+","*","*","*","+","-"],["+","*","*","*","-","*"],["+","*","*","*","-","+"],["+","*","*","*","-","-"],["+","*","*","+","*","*"],["+","*","*","+","*","+"],["+","*","*","+","*","-"],["+","*","*","+","+","*"],["+","*","*","+","+","+"],["+","*","*","+","+","-"],["+","*","*","+","-","*"],["+","*","*","+","-","+"],["+","*","*","+","-","-"],["+","*","*","-","*","*"],["+","*","*","-","*","+"],["+","*","*","-","*","-"],["+","*","*","-","+","*"],["+","*","*","-","+","+"],["+","*","*","-","+","-"],["+","*","*","-","-","*"],["+","*","*","-","-","+"],["+","*","*","-","-","-"],["+","*","+","*","*","*"],["+","*","+","*","*","+"],["+","*","+","*","*","-"],["+","*","+","*","+","*"],["+","*","+","*","+","+"],["+","*","+","*","+","-"],["+","*","+","*","-","*"],["+","*","+","*","-","+"],["+","*","+","*","-","-"],["+","*","+","+","*","*"],["+","*","+","+","*","+"],["+","*","+","+","*","-"],["+","*","+","+","+","*"],["+","*","+","+","+","+"],["+","*","+","+","+","-"],["+","*","+","+","-","*"],["+","*","+","+","-","+"],["+","*","+","+","-","-"],["+","*","+","-","*","*"],["+","*","+","-","*","+"],["+","*","+","-","*","-"],["+","*","+","-","+","*"],["+","*","+","-","+","+"],["+","*","+","-","+","-"],["+","*","+","-","-","*"],["+","*","+","-","-","+"],["+","*","+","-","-","-"],["+","*","-","*","*","*"],["+","*","-","*","*","+"],["+","*","-","*","*","-"],["+","*","-","*","+","*"],["+","*","-","*","+","+"],["+","*","-","*","+","-"],["+","*","-","*","-","*"],["+","*","-","*","-","+"],["+","*","-","*","-","-"],["+","*","-","+","*","*"],["+","*","-","+","*","+"],["+","*","-","+","*","-"],["+","*","-","+","+","*"],["+","*","-","+","+","+"],["+","*","-","+","+","-"],["+","*","-","+","-","*"],["+","*","-","+","-","+"],["+","*","-","+","-","-"],["+","*","-","-","*","*"],["+","*","-","-","*","+"],["+","*","-","-","*","-"],["+","*","-","-","+","*"],["+","*","-","-","+","+"],["+","*","-","-","+","-"],["+","*","-","-","-","*"],["+","*","-","-","-","+"],["+","*","-","-","-","-"],["+","+","*","*","*","*"],["+","+","*","*","*","+"],["+","+","*","*","*","-"],["+","+","*","*","+","*"],["+","+","*","*","+","+"],["+","+","*","*","+","-"],["+","+","*","*","-","*"],["+","+","*","*","-","+"],["+","+","*","*","-","-"],["+","+","*","+","*","*"],["+","+","*","+","*","+"],["+","+","*","+","*","-"],["+","+","*","+","+","*"],["+","+","*","+","+","+"],["+","+","*","+","+","-"],["+","+","*","+","-","*"],["+","+","*","+","-","+"],["+","+","*","+","-","-"],["+","+","*","-","*","*"],["+","+","*","-","*","+"],["+","+","*","-","*","-"],["+","+","*","-","+","*"],["+","+","*","-","+","+"],["+","+","*","-","+","-"],["+","+","*","-","-","*"],["+","+","*","-","-","+"],["+","+","*","-","-","-"],["+","+","+","*","*","*"],["+","+","+","*","*","+"],["+","+","+","*","*","-"],["+","+","+","*","+","*"],["+","+","+","*","+","+"],["+","+","+","*","+","-"],["+","+","+","*","-","*"],["+","+","+","*","-","+"],["+","+","+","*","-","-"],["+","+","+","+","*","*"],["+","+","+","+","*","+"],["+","+","+","+","*","-"],["+","+","+","+","+","*"],["+","+","+","+","+","+"],["+","+","+","+","+","-"],["+","+","+","+","-","*"],["+","+","+","+","-","+"],["+","+","+","+","-","-"],["+","+","+","-","*","*"],["+","+","+","-","*","+"],["+","+","+","-","*","-"],["+","+","+","-","+","*"],["+","+","+","-","+","+"],["+","+","+","-","+","-"],["+","+","+","-","-","*"],["+","+","+","-","-","+"],["+","+","+","-","-","-"],["+","+","-","*","*","*"],["+","+","-","*","*","+"],["+","+","-","*","*","-"],["+","+","-","*","+","*"],["+","+","-","*","+","+"],["+","+","-","*","+","-"],["+","+","-","*","-","*"],["+","+","-","*","-","+"],["+","+","-","*","-","-"],["+","+","-","+","*","*"],["+","+","-","+","*","+"],["+","+","-","+","*","-"],["+","+","-","+","+","*"],["+","+","-","+","+","+"],["+","+","-","+","+","-"],["+","+","-","+","-","*"],["+","+","-","+","-","+"],["+","+","-","+","-","-"],["+","+","-","-","*","*"],["+","+","-","-","*","+"],["+","+","-","-","*","-"],["+","+","-","-","+","*"],["+","+","-","-","+","+"],["+","+","-","-","+","-"],["+","+","-","-","-","*"],["+","+","-","-","-","+"],["+","+","-","-","-","-"],["+","-","*","*","*","*"],["+","-","*","*","*","+"],["+","-","*","*","*","-"],["+","-","*","*","+","*"],["+","-","*","*","+","+"],["+","-","*","*","+","-"],["+","-","*","*","-","*"],["+","-","*","*","-","+"],["+","-","*","*","-","-"],["+","-","*","+","*","*"],["+","-","*","+","*","+"],["+","-","*","+","*","-"],["+","-","*","+","+","*"],["+","-","*","+","+","+"],["+","-","*","+","+","-"],["+","-","*","+","-","*"],["+","-","*","+","-","+"],["+","-","*","+","-","-"],["+","-","*","-","*","*"],["+","-","*","-","*","+"],["+","-","*","-","*","-"],["+","-","*","-","+","*"],["+","-","*","-","+","+"],["+","-","*","-","+","-"],["+","-","*","-","-","*"],["+","-","*","-","-","+"],["+","-","*","-","-","-"],["+","-","+","*","*","*"],["+","-","+","*","*","+"],["+","-","+","*","*","-"],["+","-","+","*","+","*"],["+","-","+","*","+","+"],["+","-","+","*","+","-"],["+","-","+","*","-","*"],["+","-","+","*","-","+"],["+","-","+","*","-","-"],["+","-","+","+","*","*"],["+","-","+","+","*","+"],["+","-","+","+","*","-"],["+","-","+","+","+","*"],["+","-","+","+","+","+"],["+","-","+","+","+","-"],["+","-","+","+","-","*"],["+","-","+","+","-","+"],["+","-","+","+","-","-"],["+","-","+","-","*","*"],["+","-","+","-","*","+"],["+","-","+","-","*","-"],["+","-","+","-","+","*"],["+","-","+","-","+","+"],["+","-","+","-","+","-"],["+","-","+","-","-","*"],["+","-","+","-","-","+"],["+","-","+","-","-","-"],["+","-","-","*","*","*"],["+","-","-","*","*","+"],["+","-","-","*","*","-"],["+","-","-","*","+","*"],["+","-","-","*","+","+"],["+","-","-","*","+","-"],["+","-","-","*","-","*"],["+","-","-","*","-","+"],["+","-","-","*","-","-"],["+","-","-","+","*","*"],["+","-","-","+","*","+"],["+","-","-","+","*","-"],["+","-","-","+","+","*"],["+","-","-","+","+","+"],["+","-","-","+","+","-"],["+","-","-","+","-","*"],["+","-","-","+","-","+"],["+","-","-","+","-","-"],["+","-","-","-","*","*"],["+","-","-","-","*","+"],["+","-","-","-","*","-"],["+","-","-","-","+","*"],["+","-","-","-","+","+"],["+","-","-","-","+","-"],["+","-","-","-","-","*"],["+","-","-","-","-","+"],["+","-","-","-","-","-"],["-","*","*","*","*","*"],["-","*","*","*","*","+"],["-","*","*","*","*","-"],["-","*","*","*","+","*"],["-","*","*","*","+","+"],["-","*","*","*","+","-"],["-","*","*","*","-","*"],["-","*","*","*","-","+"],["-","*","*","*","-","-"],["-","*","*","+","*","*"],["-","*","*","+","*","+"],["-","*","*","+","*","-"],["-","*","*","+","+","*"],["-","*","*","+","+","+"],["-","*","*","+","+","-"],["-","*","*","+","-","*"],["-","*","*","+","-","+"],["-","*","*","+","-","-"],["-","*","*","-","*","*"],["-","*","*","-","*","+"],["-","*","*","-","*","-"],["-","*","*","-","+","*"],["-","*","*","-","+","+"],["-","*","*","-","+","-"],["-","*","*","-","-","*"],["-","*","*","-","-","+"],["-","*","*","-","-","-"],["-","*","+","*","*","*"],["-","*","+","*","*","+"],["-","*","+","*","*","-"],["-","*","+","*","+","*"],["-","*","+","*","+","+"],["-","*","+","*","+","-"],["-","*","+","*","-","*"],["-","*","+","*","-","+"],["-","*","+","*","-","-"],["-","*","+","+","*","*"],["-","*","+","+","*","+"],["-","*","+","+","*","-"],["-","*","+","+","+","*"],["-","*","+","+","+","+"],["-","*","+","+","+","-"],["-","*","+","+","-","*"],["-","*","+","+","-","+"],["-","*","+","+","-","-"],["-","*","+","-","*","*"],["-","*","+","-","*","+"],["-","*","+","-","*","-"],["-","*","+","-","+","*"],["-","*","+","-","+","+"],["-","*","+","-","+","-"],["-","*","+","-","-","*"],["-","*","+","-","-","+"],["-","*","+","-","-","-"],["-","*","-","*","*","*"],["-","*","-","*","*","+"],["-","*","-","*","*","-"],["-","*","-","*","+","*"],["-","*","-","*","+","+"],["-","*","-","*","+","-"],["-","*","-","*","-","*"],["-","*","-","*","-","+"],["-","*","-","*","-","-"],["-","*","-","+","*","*"],["-","*","-","+","*","+"],["-","*","-","+","*","-"],["-","*","-","+","+","*"],["-","*","-","+","+","+"],["-","*","-","+","+","-"],["-","*","-","+","-","*"],["-","*","-","+","-","+"],["-","*","-","+","-","-"],["-","*","-","-","*","*"],["-","*","-","-","*","+"],["-","*","-","-","*","-"],["-","*","-","-","+","*"],["-","*","-","-","+","+"],["-","*","-","-","+","-"],["-","*","-","-","-","*"],["-","*","-","-","-","+"],["-","*","-","-","-","-"],["-","+","*","*","*","*"],["-","+","*","*","*","+"],["-","+","*","*","*","-"],["-","+","*","*","+","*"],["-","+","*","*","+","+"],["-","+","*","*","+","-"],["-","+","*","*","-","*"],["-","+","*","*","-","+"],["-","+","*","*","-","-"],["-","+","*","+","*","*"],["-","+","*","+","*","+"],["-","+","*","+","*","-"],["-","+","*","+","+","*"],["-","+","*","+","+","+"],["-","+","*","+","+","-"],["-","+","*","+","-","*"],["-","+","*","+","-","+"],["-","+","*","+","-","-"],["-","+","*","-","*","*"],["-","+","*","-","*","+"],["-","+","*","-","*","-"],["-","+","*","-","+","*"],["-","+","*","-","+","+"],["-","+","*","-","+","-"],["-","+","*","-","-","*"],["-","+","*","-","-","+"],["-","+","*","-","-","-"],["-","+","+","*","*","*"],["-","+","+","*","*","+"],["-","+","+","*","*","-"],["-","+","+","*","+","*"],["-","+","+","*","+","+"],["-","+","+","*","+","-"],["-","+","+","*","-","*"],["-","+","+","*","-","+"],["-","+","+","*","-","-"],["-","+","+","+","*","*"],["-","+","+","+","*","+"],["-","+","+","+","*","-"],["-","+","+","+","+","*"],["-","+","+","+","+","+"],["-","+","+","+","+","-"],["-","+","+","+","-","*"],["-","+","+","+","-","+"],["-","+","+","+","-","-"],["-","+","+","-","*","*"],["-","+","+","-","*","+"],["-","+","+","-","*","-"],["-","+","+","-","+","*"],["-","+","+","-","+","+"],["-","+","+","-","+","-"],["-","+","+","-","-","*"],["-","+","+","-","-","+"],["-","+","+","-","-","-"],["-","+","-","*","*","*"],["-","+","-","*","*","+"],["-","+","-","*","*","-"],["-","+","-","*","+","*"],["-","+","-","*","+","+"],["-","+","-","*","+","-"],["-","+","-","*","-","*"],["-","+","-","*","-","+"],["-","+","-","*","-","-"],["-","+","-","+","*","*"],["-","+","-","+","*","+"],["-","+","-","+","*","-"],["-","+","-","+","+","*"],["-","+","-","+","+","+"],["-","+","-","+","+","-"],["-","+","-","+","-","*"],["-","+","-","+","-","+"],["-","+","-","+","-","-"],["-","+","-","-","*","*"],["-","+","-","-","*","+"],["-","+","-","-","*","-"],["-","+","-","-","+","*"],["-","+","-","-","+","+"],["-","+","-","-","+","-"],["-","+","-","-","-","*"],["-","+","-","-","-","+"],["-","+","-","-","-","-"],["-","-","*","*","*","*"],["-","-","*","*","*","+"],["-","-","*","*","*","-"],["-","-","*","*","+","*"],["-","-","*","*","+","+"],["-","-","*","*","+","-"],["-","-","*","*","-","*"],["-","-","*","*","-","+"],["-","-","*","*","-","-"],["-","-","*","+","*","*"],["-","-","*","+","*","+"],["-","-","*","+","*","-"],["-","-","*","+","+","*"],["-","-","*","+","+","+"],["-","-","*","+","+","-"],["-","-","*","+","-","*"],["-","-","*","+","-","+"],["-","-","*","+","-","-"],["-","-","*","-","*","*"],["-","-","*","-","*","+"],["-","-","*","-","*","-"],["-","-","*","-","+","*"],["-","-","*","-","+","+"],["-","-","*","-","+","-"],["-","-","*","-","-","*"],["-","-","*","-","-","+"],["-","-","*","-","-","-"],["-","-","+","*","*","*"],["-","-","+","*","*","+"],["-","-","+","*","*","-"],["-","-","+","*","+","*"],["-","-","+","*","+","+"],["-","-","+","*","+","-"],["-","-","+","*","-","*"],["-","-","+","*","-","+"],["-","-","+","*","-","-"],["-","-","+","+","*","*"],["-","-","+","+","*","+"],["-","-","+","+","*","-"],["-","-","+","+","+","*"],["-","-","+","+","+","+"],["-","-","+","+","+","-"],["-","-","+","+","-","*"],["-","-","+","+","-","+"],["-","-","+","+","-","-"],["-","-","+","-","*","*"],["-","-","+","-","*","+"],["-","-","+","-","*","-"],["-","-","+","-","+","*"],["-","-","+","-","+","+"],["-","-","+","-","+","-"],["-","-","+","-","-","*"],["-","-","+","-","-","+"],["-","-","+","-","-","-"],["-","-","-","*","*","*"],["-","-","-","*","*","+"],["-","-","-","*","*","-"],["-","-","-","*","+","*"],["-","-","-","*","+","+"],["-","-","-","*","+","-"],["-","-","-","*","-","*"],["-","-","-","*","-","+"],["-","-","-","*","-","-"],["-","-","-","+","*","*"],["-","-","-","+","*","+"],["-","-","-","+","*","-"],["-","-","-","+","+","*"],["-","-","-","+","+","+"],["-","-","-","+","+","-"],["-","-","-","+","-","*"],["-","-","-","+","-","+"],["-","-","-","+","-","-"],["-","-","-","-","*","*"],["-","-","-","-","*","+"],["-","-","-","-","*","-"],["-","-","-","-","+","*"],["-","-","-","-","+","+"],["-","-","-","-","+","-"],["-","-","-","-","-","*"],["-","-","-","-","-","+"],["-","-","-","-","-","-"]]]] + [ + [ + [1,1] + ], + + [ + [1,1,1], + [1,2], + [2,1] + ], + + [ + [1,1,1,1], + [1,1,2], + [1,2,1], + [2,1,1], + [1,3], + [3,1], + [2,2] + ], + + [ + [1,1,1,1,1], + [1,1,1,2], + [1,1,2,1], + [1,2,1,1], + [2,1,1,1], + [1,1,3], + [1,3,1], + [3,1,1], + [1,2,2], + [2,1,2], + [2,2,1], + [1,4], + [4,1], + [2,3], + [3,2] + ], + + [ + [1,1,1,1,1,1], + [1,1,1,1,2], + [1,1,1,2,1], + [1,1,2,1,1], + [1,2,1,1,1], + [2,1,1,1,1], + [1,1,1,3], + [1,1,3,1], + [1,3,1,1], + [3,1,1,1], + [1,1,2,2], + [1,2,1,2], + [1,2,2,1], + [2,1,1,2], + [2,1,2,1], + [2,2,1,1], + [1,1,4], + [1,4,1], + [4,1,1], + [1,2,3], + [1,3,2], + [2,1,3], + [2,3,1], + [3,1,2], + [3,2,1], + [1,5], + [5,1], + [2,2,2], + [2,4], + [4,2], + [3,3] + ], + + [ + [1,1,1,1,1,1,1], + [1,1,1,1,1,2], + [1,1,1,1,2,1], + [1,1,1,2,1,1], + [1,1,2,1,1,1], + [1,2,1,1,1,1], + [2,1,1,1,1,1], + [1,1,1,1,3], + [1,1,1,3,1], + [1,1,3,1,1], + [1,3,1,1,1], + [3,1,1,1,1], + [1,1,1,2,2], + [1,1,2,1,2], + [1,1,2,2,1], + [1,2,1,1,2], + [1,2,1,2,1], + [1,2,2,1,1], + [2,1,1,1,2], + [2,1,1,2,1], + [2,1,2,1,1], + [2,2,1,1,1], + [1,1,1,4], + [1,1,4,1], + [1,4,1,1], + [4,1,1,1], + [1,1,2,3], + [1,1,3,2], + [1,2,1,3], + [1,2,3,1], + [1,3,1,2], + [1,3,2,1], + [2,1,1,3], + [2,1,3,1], + [2,3,1,1], + [3,1,1,2], + [3,1,2,1], + [3,2,1,1], + [1,1,5], + [1,5,1], + [5,1,1], + [1,2,2,2], + [2,1,2,2], + [2,2,1,2], + [2,2,2,1], + [1,2,4], + [1,4,2], + [2,1,4], + [2,4,1], + [4,1,2], + [4,2,1], + [1,3,3], + [3,1,3], + [3,3,1], + [1,6], + [6,1], + [2,2,3], + [2,3,2], + [3,2,2], + [2,5], + [5,2], + [3,4], + [4,3] + ] + ], + + [ + [ + ["*"],["+"],["-"] + ], + + [ + ["*","*"], + ["*","+"], + ["*","-"], + ["+","*"], + ["+","+"], + ["+","-"], + ["-","*"], + ["-","+"], + ["-","-"] + ], + + [ + ["*","*","*"], + ["*","*","+"], + ["*","*","-"], + ["*","+","*"], + ["*","+","+"], + ["*","+","-"], + ["*","-","*"], + ["*","-","+"], + ["*","-","-"], + ["+","*","*"], + ["+","*","+"], + ["+","*","-"], + ["+","+","*"], + ["+","+","+"], + ["+","+","-"], + ["+","-","*"], + ["+","-","+"], + ["+","-","-"], + ["-","*","*"], + ["-","*","+"], + ["-","*","-"], + ["-","+","*"], + ["-","+","+"], + ["-","+","-"], + ["-","-","*"], + ["-","-","+"], + ["-","-","-"] + ], + + [ + ["*","*","*","*"], + ["*","*","*","+"], + ["*","*","*","-"], + ["*","*","+","*"], + ["*","*","+","+"], + ["*","*","+","-"], + ["*","*","-","*"], + ["*","*","-","+"], + ["*","*","-","-"], + ["*","+","*","*"], + ["*","+","*","+"], + ["*","+","*","-"], + ["*","+","+","*"], + ["*","+","+","+"], + ["*","+","+","-"], + ["*","+","-","*"], + ["*","+","-","+"], + ["*","+","-","-"], + ["*","-","*","*"], + ["*","-","*","+"], + ["*","-","*","-"], + ["*","-","+","*"], + ["*","-","+","+"], + ["*","-","+","-"], + ["*","-","-","*"], + ["*","-","-","+"], + ["*","-","-","-"], + ["+","*","*","*"], + ["+","*","*","+"], + ["+","*","*","-"], + ["+","*","+","*"], + ["+","*","+","+"], + ["+","*","+","-"], + ["+","*","-","*"], + ["+","*","-","+"], + ["+","*","-","-"], + ["+","+","*","*"], + ["+","+","*","+"], + ["+","+","*","-"], + ["+","+","+","*"], + ["+","+","+","+"], + ["+","+","+","-"], + ["+","+","-","*"], + ["+","+","-","+"], + ["+","+","-","-"], + ["+","-","*","*"], + ["+","-","*","+"], + ["+","-","*","-"], + ["+","-","+","*"], + ["+","-","+","+"], + ["+","-","+","-"], + ["+","-","-","*"], + ["+","-","-","+"], + ["+","-","-","-"], + ["-","*","*","*"], + ["-","*","*","+"], + ["-","*","*","-"], + ["-","*","+","*"], + ["-","*","+","+"], + ["-","*","+","-"], + ["-","*","-","*"], + ["-","*","-","+"], + ["-","*","-","-"], + ["-","+","*","*"], + ["-","+","*","+"], + ["-","+","*","-"], + ["-","+","+","*"], + ["-","+","+","+"], + ["-","+","+","-"], + ["-","+","-","*"], + ["-","+","-","+"], + ["-","+","-","-"], + ["-","-","*","*"], + ["-","-","*","+"], + ["-","-","*","-"], + ["-","-","+","*"], + ["-","-","+","+"], + ["-","-","+","-"], + ["-","-","-","*"], + ["-","-","-","+"], + ["-","-","-","-"] + ], + + [ + ["*","*","*","*","*"], + ["*","*","*","*","+"], + ["*","*","*","*","-"], + ["*","*","*","+","*"], + ["*","*","*","+","+"], + ["*","*","*","+","-"], + ["*","*","*","-","*"], + ["*","*","*","-","+"], + ["*","*","*","-","-"], + ["*","*","+","*","*"], + ["*","*","+","*","+"], + ["*","*","+","*","-"], + ["*","*","+","+","*"], + ["*","*","+","+","+"], + ["*","*","+","+","-"], + ["*","*","+","-","*"], + ["*","*","+","-","+"], + ["*","*","+","-","-"], + ["*","*","-","*","*"], + ["*","*","-","*","+"], + ["*","*","-","*","-"], + ["*","*","-","+","*"], + ["*","*","-","+","+"], + ["*","*","-","+","-"], + ["*","*","-","-","*"], + ["*","*","-","-","+"], + ["*","*","-","-","-"], + ["*","+","*","*","*"], + ["*","+","*","*","+"], + ["*","+","*","*","-"], + ["*","+","*","+","*"], + ["*","+","*","+","+"], + ["*","+","*","+","-"], + ["*","+","*","-","*"], + ["*","+","*","-","+"], + ["*","+","*","-","-"], + ["*","+","+","*","*"], + ["*","+","+","*","+"], + ["*","+","+","*","-"], + ["*","+","+","+","*"], + ["*","+","+","+","+"], + ["*","+","+","+","-"], + ["*","+","+","-","*"], + ["*","+","+","-","+"], + ["*","+","+","-","-"], + ["*","+","-","*","*"], + ["*","+","-","*","+"], + ["*","+","-","*","-"], + ["*","+","-","+","*"], + ["*","+","-","+","+"], + ["*","+","-","+","-"], + ["*","+","-","-","*"], + ["*","+","-","-","+"], + ["*","+","-","-","-"], + ["*","-","*","*","*"], + ["*","-","*","*","+"], + ["*","-","*","*","-"], + ["*","-","*","+","*"], + ["*","-","*","+","+"], + ["*","-","*","+","-"], + ["*","-","*","-","*"], + ["*","-","*","-","+"], + ["*","-","*","-","-"], + ["*","-","+","*","*"], + ["*","-","+","*","+"], + ["*","-","+","*","-"], + ["*","-","+","+","*"], + ["*","-","+","+","+"], + ["*","-","+","+","-"], + ["*","-","+","-","*"], + ["*","-","+","-","+"], + ["*","-","+","-","-"], + ["*","-","-","*","*"], + ["*","-","-","*","+"], + ["*","-","-","*","-"], + ["*","-","-","+","*"], + ["*","-","-","+","+"], + ["*","-","-","+","-"], + ["*","-","-","-","*"], + ["*","-","-","-","+"], + ["*","-","-","-","-"], + ["+","*","*","*","*"], + ["+","*","*","*","+"], + ["+","*","*","*","-"], + ["+","*","*","+","*"], + ["+","*","*","+","+"], + ["+","*","*","+","-"], + ["+","*","*","-","*"], + ["+","*","*","-","+"], + ["+","*","*","-","-"], + ["+","*","+","*","*"], + ["+","*","+","*","+"], + ["+","*","+","*","-"], + ["+","*","+","+","*"], + ["+","*","+","+","+"], + ["+","*","+","+","-"], + ["+","*","+","-","*"], + ["+","*","+","-","+"], + ["+","*","+","-","-"], + ["+","*","-","*","*"], + ["+","*","-","*","+"], + ["+","*","-","*","-"], + ["+","*","-","+","*"], + ["+","*","-","+","+"], + ["+","*","-","+","-"], + ["+","*","-","-","*"], + ["+","*","-","-","+"], + ["+","*","-","-","-"], + ["+","+","*","*","*"], + ["+","+","*","*","+"], + ["+","+","*","*","-"], + ["+","+","*","+","*"], + ["+","+","*","+","+"], + ["+","+","*","+","-"], + ["+","+","*","-","*"], + ["+","+","*","-","+"], + ["+","+","*","-","-"], + ["+","+","+","*","*"], + ["+","+","+","*","+"], + ["+","+","+","*","-"], + ["+","+","+","+","*"], + ["+","+","+","+","+"], + ["+","+","+","+","-"], + ["+","+","+","-","*"], + ["+","+","+","-","+"], + ["+","+","+","-","-"], + ["+","+","-","*","*"], + ["+","+","-","*","+"], + ["+","+","-","*","-"], + ["+","+","-","+","*"], + ["+","+","-","+","+"], + ["+","+","-","+","-"], + ["+","+","-","-","*"], + ["+","+","-","-","+"], + ["+","+","-","-","-"], + ["+","-","*","*","*"], + ["+","-","*","*","+"], + ["+","-","*","*","-"], + ["+","-","*","+","*"], + ["+","-","*","+","+"], + ["+","-","*","+","-"], + ["+","-","*","-","*"], + ["+","-","*","-","+"], + ["+","-","*","-","-"], + ["+","-","+","*","*"], + ["+","-","+","*","+"], + ["+","-","+","*","-"], + ["+","-","+","+","*"], + ["+","-","+","+","+"], + ["+","-","+","+","-"], + ["+","-","+","-","*"], + ["+","-","+","-","+"], + ["+","-","+","-","-"], + ["+","-","-","*","*"], + ["+","-","-","*","+"], + ["+","-","-","*","-"], + ["+","-","-","+","*"], + ["+","-","-","+","+"], + ["+","-","-","+","-"], + ["+","-","-","-","*"], + ["+","-","-","-","+"], + ["+","-","-","-","-"], + ["-","*","*","*","*"], + ["-","*","*","*","+"], + ["-","*","*","*","-"], + ["-","*","*","+","*"], + ["-","*","*","+","+"], + ["-","*","*","+","-"], + ["-","*","*","-","*"], + ["-","*","*","-","+"], + ["-","*","*","-","-"], + ["-","*","+","*","*"], + ["-","*","+","*","+"], + ["-","*","+","*","-"], + ["-","*","+","+","*"], + ["-","*","+","+","+"], + ["-","*","+","+","-"], + ["-","*","+","-","*"], + ["-","*","+","-","+"], + ["-","*","+","-","-"], + ["-","*","-","*","*"], + ["-","*","-","*","+"], + ["-","*","-","*","-"], + ["-","*","-","+","*"], + ["-","*","-","+","+"], + ["-","*","-","+","-"], + ["-","*","-","-","*"], + ["-","*","-","-","+"], + ["-","*","-","-","-"], + ["-","+","*","*","*"], + ["-","+","*","*","+"], + ["-","+","*","*","-"], + ["-","+","*","+","*"], + ["-","+","*","+","+"], + ["-","+","*","+","-"], + ["-","+","*","-","*"], + ["-","+","*","-","+"], + ["-","+","*","-","-"], + ["-","+","+","*","*"], + ["-","+","+","*","+"], + ["-","+","+","*","-"], + ["-","+","+","+","*"], + ["-","+","+","+","+"], + ["-","+","+","+","-"], + ["-","+","+","-","*"], + ["-","+","+","-","+"], + ["-","+","+","-","-"], + ["-","+","-","*","*"], + ["-","+","-","*","+"], + ["-","+","-","*","-"], + ["-","+","-","+","*"], + ["-","+","-","+","+"], + ["-","+","-","+","-"], + ["-","+","-","-","*"], + ["-","+","-","-","+"], + ["-","+","-","-","-"], + ["-","-","*","*","*"], + ["-","-","*","*","+"], + ["-","-","*","*","-"], + ["-","-","*","+","*"], + ["-","-","*","+","+"], + ["-","-","*","+","-"], + ["-","-","*","-","*"], + ["-","-","*","-","+"], + ["-","-","*","-","-"], + ["-","-","+","*","*"], + ["-","-","+","*","+"], + ["-","-","+","*","-"], + ["-","-","+","+","*"], + ["-","-","+","+","+"], + ["-","-","+","+","-"], + ["-","-","+","-","*"], + ["-","-","+","-","+"], + ["-","-","+","-","-"], + ["-","-","-","*","*"], + ["-","-","-","*","+"], + ["-","-","-","*","-"], + ["-","-","-","+","*"], + ["-","-","-","+","+"], + ["-","-","-","+","-"], + ["-","-","-","-","*"], + ["-","-","-","-","+"], + ["-","-","-","-","-"] + ], + + [ + ["*","*","*","*","*","*"], + ["*","*","*","*","*","+"], + ["*","*","*","*","*","-"], + ["*","*","*","*","+","*"], + ["*","*","*","*","+","+"], + ["*","*","*","*","+","-"], + ["*","*","*","*","-","*"], + ["*","*","*","*","-","+"], + ["*","*","*","*","-","-"], + ["*","*","*","+","*","*"], + ["*","*","*","+","*","+"], + ["*","*","*","+","*","-"], + ["*","*","*","+","+","*"], + ["*","*","*","+","+","+"], + ["*","*","*","+","+","-"], + ["*","*","*","+","-","*"], + ["*","*","*","+","-","+"], + ["*","*","*","+","-","-"], + ["*","*","*","-","*","*"], + ["*","*","*","-","*","+"], + ["*","*","*","-","*","-"], + ["*","*","*","-","+","*"], + ["*","*","*","-","+","+"], + ["*","*","*","-","+","-"], + ["*","*","*","-","-","*"], + ["*","*","*","-","-","+"], + ["*","*","*","-","-","-"], + ["*","*","+","*","*","*"], + ["*","*","+","*","*","+"], + ["*","*","+","*","*","-"], + ["*","*","+","*","+","*"], + ["*","*","+","*","+","+"], + ["*","*","+","*","+","-"], + ["*","*","+","*","-","*"], + ["*","*","+","*","-","+"], + ["*","*","+","*","-","-"], + ["*","*","+","+","*","*"], + ["*","*","+","+","*","+"], + ["*","*","+","+","*","-"], + ["*","*","+","+","+","*"], + ["*","*","+","+","+","+"], + ["*","*","+","+","+","-"], + ["*","*","+","+","-","*"], + ["*","*","+","+","-","+"], + ["*","*","+","+","-","-"], + ["*","*","+","-","*","*"], + ["*","*","+","-","*","+"], + ["*","*","+","-","*","-"], + ["*","*","+","-","+","*"], + ["*","*","+","-","+","+"], + ["*","*","+","-","+","-"], + ["*","*","+","-","-","*"], + ["*","*","+","-","-","+"], + ["*","*","+","-","-","-"], + ["*","*","-","*","*","*"], + ["*","*","-","*","*","+"], + ["*","*","-","*","*","-"], + ["*","*","-","*","+","*"], + ["*","*","-","*","+","+"], + ["*","*","-","*","+","-"], + ["*","*","-","*","-","*"], + ["*","*","-","*","-","+"], + ["*","*","-","*","-","-"], + ["*","*","-","+","*","*"], + ["*","*","-","+","*","+"], + ["*","*","-","+","*","-"], + ["*","*","-","+","+","*"], + ["*","*","-","+","+","+"], + ["*","*","-","+","+","-"], + ["*","*","-","+","-","*"], + ["*","*","-","+","-","+"], + ["*","*","-","+","-","-"], + ["*","*","-","-","*","*"], + ["*","*","-","-","*","+"], + ["*","*","-","-","*","-"], + ["*","*","-","-","+","*"], + ["*","*","-","-","+","+"], + ["*","*","-","-","+","-"], + ["*","*","-","-","-","*"], + ["*","*","-","-","-","+"], + ["*","*","-","-","-","-"], + ["*","+","*","*","*","*"], + ["*","+","*","*","*","+"], + ["*","+","*","*","*","-"], + ["*","+","*","*","+","*"], + ["*","+","*","*","+","+"], + ["*","+","*","*","+","-"], + ["*","+","*","*","-","*"], + ["*","+","*","*","-","+"], + ["*","+","*","*","-","-"], + ["*","+","*","+","*","*"], + ["*","+","*","+","*","+"], + ["*","+","*","+","*","-"], + ["*","+","*","+","+","*"], + ["*","+","*","+","+","+"], + ["*","+","*","+","+","-"], + ["*","+","*","+","-","*"], + ["*","+","*","+","-","+"], + ["*","+","*","+","-","-"], + ["*","+","*","-","*","*"], + ["*","+","*","-","*","+"], + ["*","+","*","-","*","-"], + ["*","+","*","-","+","*"], + ["*","+","*","-","+","+"], + ["*","+","*","-","+","-"], + ["*","+","*","-","-","*"], + ["*","+","*","-","-","+"], + ["*","+","*","-","-","-"], + ["*","+","+","*","*","*"], + ["*","+","+","*","*","+"], + ["*","+","+","*","*","-"], + ["*","+","+","*","+","*"], + ["*","+","+","*","+","+"], + ["*","+","+","*","+","-"], + ["*","+","+","*","-","*"], + ["*","+","+","*","-","+"], + ["*","+","+","*","-","-"], + ["*","+","+","+","*","*"], + ["*","+","+","+","*","+"], + ["*","+","+","+","*","-"], + ["*","+","+","+","+","*"], + ["*","+","+","+","+","+"], + ["*","+","+","+","+","-"], + ["*","+","+","+","-","*"], + ["*","+","+","+","-","+"], + ["*","+","+","+","-","-"], + ["*","+","+","-","*","*"], + ["*","+","+","-","*","+"], + ["*","+","+","-","*","-"], + ["*","+","+","-","+","*"], + ["*","+","+","-","+","+"], + ["*","+","+","-","+","-"], + ["*","+","+","-","-","*"], + ["*","+","+","-","-","+"], + ["*","+","+","-","-","-"], + ["*","+","-","*","*","*"], + ["*","+","-","*","*","+"], + ["*","+","-","*","*","-"], + ["*","+","-","*","+","*"], + ["*","+","-","*","+","+"], + ["*","+","-","*","+","-"], + ["*","+","-","*","-","*"], + ["*","+","-","*","-","+"], + ["*","+","-","*","-","-"], + ["*","+","-","+","*","*"], + ["*","+","-","+","*","+"], + ["*","+","-","+","*","-"], + ["*","+","-","+","+","*"], + ["*","+","-","+","+","+"], + ["*","+","-","+","+","-"], + ["*","+","-","+","-","*"], + ["*","+","-","+","-","+"], + ["*","+","-","+","-","-"], + ["*","+","-","-","*","*"], + ["*","+","-","-","*","+"], + ["*","+","-","-","*","-"], + ["*","+","-","-","+","*"], + ["*","+","-","-","+","+"], + ["*","+","-","-","+","-"], + ["*","+","-","-","-","*"], + ["*","+","-","-","-","+"], + ["*","+","-","-","-","-"], + ["*","-","*","*","*","*"], + ["*","-","*","*","*","+"], + ["*","-","*","*","*","-"], + ["*","-","*","*","+","*"], + ["*","-","*","*","+","+"], + ["*","-","*","*","+","-"], + ["*","-","*","*","-","*"], + ["*","-","*","*","-","+"], + ["*","-","*","*","-","-"], + ["*","-","*","+","*","*"], + ["*","-","*","+","*","+"], + ["*","-","*","+","*","-"], + ["*","-","*","+","+","*"], + ["*","-","*","+","+","+"], + ["*","-","*","+","+","-"], + ["*","-","*","+","-","*"], + ["*","-","*","+","-","+"], + ["*","-","*","+","-","-"], + ["*","-","*","-","*","*"], + ["*","-","*","-","*","+"], + ["*","-","*","-","*","-"], + ["*","-","*","-","+","*"], + ["*","-","*","-","+","+"], + ["*","-","*","-","+","-"], + ["*","-","*","-","-","*"], + ["*","-","*","-","-","+"], + ["*","-","*","-","-","-"], + ["*","-","+","*","*","*"], + ["*","-","+","*","*","+"], + ["*","-","+","*","*","-"], + ["*","-","+","*","+","*"], + ["*","-","+","*","+","+"], + ["*","-","+","*","+","-"], + ["*","-","+","*","-","*"], + ["*","-","+","*","-","+"], + ["*","-","+","*","-","-"], + ["*","-","+","+","*","*"], + ["*","-","+","+","*","+"], + ["*","-","+","+","*","-"], + ["*","-","+","+","+","*"], + ["*","-","+","+","+","+"], + ["*","-","+","+","+","-"], + ["*","-","+","+","-","*"], + ["*","-","+","+","-","+"], + ["*","-","+","+","-","-"], + ["*","-","+","-","*","*"], + ["*","-","+","-","*","+"], + ["*","-","+","-","*","-"], + ["*","-","+","-","+","*"], + ["*","-","+","-","+","+"], + ["*","-","+","-","+","-"], + ["*","-","+","-","-","*"], + ["*","-","+","-","-","+"], + ["*","-","+","-","-","-"], + ["*","-","-","*","*","*"], + ["*","-","-","*","*","+"], + ["*","-","-","*","*","-"], + ["*","-","-","*","+","*"], + ["*","-","-","*","+","+"], + ["*","-","-","*","+","-"], + ["*","-","-","*","-","*"], + ["*","-","-","*","-","+"], + ["*","-","-","*","-","-"], + ["*","-","-","+","*","*"], + ["*","-","-","+","*","+"], + ["*","-","-","+","*","-"], + ["*","-","-","+","+","*"], + ["*","-","-","+","+","+"], + ["*","-","-","+","+","-"], + ["*","-","-","+","-","*"], + ["*","-","-","+","-","+"], + ["*","-","-","+","-","-"], + ["*","-","-","-","*","*"], + ["*","-","-","-","*","+"], + ["*","-","-","-","*","-"], + ["*","-","-","-","+","*"], + ["*","-","-","-","+","+"], + ["*","-","-","-","+","-"], + ["*","-","-","-","-","*"], + ["*","-","-","-","-","+"], + ["*","-","-","-","-","-"], + ["+","*","*","*","*","*"], + ["+","*","*","*","*","+"], + ["+","*","*","*","*","-"], + ["+","*","*","*","+","*"], + ["+","*","*","*","+","+"], + ["+","*","*","*","+","-"], + ["+","*","*","*","-","*"], + ["+","*","*","*","-","+"], + ["+","*","*","*","-","-"], + ["+","*","*","+","*","*"], + ["+","*","*","+","*","+"], + ["+","*","*","+","*","-"], + ["+","*","*","+","+","*"], + ["+","*","*","+","+","+"], + ["+","*","*","+","+","-"], + ["+","*","*","+","-","*"], + ["+","*","*","+","-","+"], + ["+","*","*","+","-","-"], + ["+","*","*","-","*","*"], + ["+","*","*","-","*","+"], + ["+","*","*","-","*","-"], + ["+","*","*","-","+","*"], + ["+","*","*","-","+","+"], + ["+","*","*","-","+","-"], + ["+","*","*","-","-","*"], + ["+","*","*","-","-","+"], + ["+","*","*","-","-","-"], + ["+","*","+","*","*","*"], + ["+","*","+","*","*","+"], + ["+","*","+","*","*","-"], + ["+","*","+","*","+","*"], + ["+","*","+","*","+","+"], + ["+","*","+","*","+","-"], + ["+","*","+","*","-","*"], + ["+","*","+","*","-","+"], + ["+","*","+","*","-","-"], + ["+","*","+","+","*","*"], + ["+","*","+","+","*","+"], + ["+","*","+","+","*","-"], + ["+","*","+","+","+","*"], + ["+","*","+","+","+","+"], + ["+","*","+","+","+","-"], + ["+","*","+","+","-","*"], + ["+","*","+","+","-","+"], + ["+","*","+","+","-","-"], + ["+","*","+","-","*","*"], + ["+","*","+","-","*","+"], + ["+","*","+","-","*","-"], + ["+","*","+","-","+","*"], + ["+","*","+","-","+","+"], + ["+","*","+","-","+","-"], + ["+","*","+","-","-","*"], + ["+","*","+","-","-","+"], + ["+","*","+","-","-","-"], + ["+","*","-","*","*","*"], + ["+","*","-","*","*","+"], + ["+","*","-","*","*","-"], + ["+","*","-","*","+","*"], + ["+","*","-","*","+","+"], + ["+","*","-","*","+","-"], + ["+","*","-","*","-","*"], + ["+","*","-","*","-","+"], + ["+","*","-","*","-","-"], + ["+","*","-","+","*","*"], + ["+","*","-","+","*","+"], + ["+","*","-","+","*","-"], + ["+","*","-","+","+","*"], + ["+","*","-","+","+","+"], + ["+","*","-","+","+","-"], + ["+","*","-","+","-","*"], + ["+","*","-","+","-","+"], + ["+","*","-","+","-","-"], + ["+","*","-","-","*","*"], + ["+","*","-","-","*","+"], + ["+","*","-","-","*","-"], + ["+","*","-","-","+","*"], + ["+","*","-","-","+","+"], + ["+","*","-","-","+","-"], + ["+","*","-","-","-","*"], + ["+","*","-","-","-","+"], + ["+","*","-","-","-","-"], + ["+","+","*","*","*","*"], + ["+","+","*","*","*","+"], + ["+","+","*","*","*","-"], + ["+","+","*","*","+","*"], + ["+","+","*","*","+","+"], + ["+","+","*","*","+","-"], + ["+","+","*","*","-","*"], + ["+","+","*","*","-","+"], + ["+","+","*","*","-","-"], + ["+","+","*","+","*","*"], + ["+","+","*","+","*","+"], + ["+","+","*","+","*","-"], + ["+","+","*","+","+","*"], + ["+","+","*","+","+","+"], + ["+","+","*","+","+","-"], + ["+","+","*","+","-","*"], + ["+","+","*","+","-","+"], + ["+","+","*","+","-","-"], + ["+","+","*","-","*","*"], + ["+","+","*","-","*","+"], + ["+","+","*","-","*","-"], + ["+","+","*","-","+","*"], + ["+","+","*","-","+","+"], + ["+","+","*","-","+","-"], + ["+","+","*","-","-","*"], + ["+","+","*","-","-","+"], + ["+","+","*","-","-","-"], + ["+","+","+","*","*","*"], + ["+","+","+","*","*","+"], + ["+","+","+","*","*","-"], + ["+","+","+","*","+","*"], + ["+","+","+","*","+","+"], + ["+","+","+","*","+","-"], + ["+","+","+","*","-","*"], + ["+","+","+","*","-","+"], + ["+","+","+","*","-","-"], + ["+","+","+","+","*","*"], + ["+","+","+","+","*","+"], + ["+","+","+","+","*","-"], + ["+","+","+","+","+","*"], + ["+","+","+","+","+","+"], + ["+","+","+","+","+","-"], + ["+","+","+","+","-","*"], + ["+","+","+","+","-","+"], + ["+","+","+","+","-","-"], + ["+","+","+","-","*","*"], + ["+","+","+","-","*","+"], + ["+","+","+","-","*","-"], + ["+","+","+","-","+","*"], + ["+","+","+","-","+","+"], + ["+","+","+","-","+","-"], + ["+","+","+","-","-","*"], + ["+","+","+","-","-","+"], + ["+","+","+","-","-","-"], + ["+","+","-","*","*","*"], + ["+","+","-","*","*","+"], + ["+","+","-","*","*","-"], + ["+","+","-","*","+","*"], + ["+","+","-","*","+","+"], + ["+","+","-","*","+","-"], + ["+","+","-","*","-","*"], + ["+","+","-","*","-","+"], + ["+","+","-","*","-","-"], + ["+","+","-","+","*","*"], + ["+","+","-","+","*","+"], + ["+","+","-","+","*","-"], + ["+","+","-","+","+","*"], + ["+","+","-","+","+","+"], + ["+","+","-","+","+","-"], + ["+","+","-","+","-","*"], + ["+","+","-","+","-","+"], + ["+","+","-","+","-","-"], + ["+","+","-","-","*","*"], + ["+","+","-","-","*","+"], + ["+","+","-","-","*","-"], + ["+","+","-","-","+","*"], + ["+","+","-","-","+","+"], + ["+","+","-","-","+","-"], + ["+","+","-","-","-","*"], + ["+","+","-","-","-","+"], + ["+","+","-","-","-","-"], + ["+","-","*","*","*","*"], + ["+","-","*","*","*","+"], + ["+","-","*","*","*","-"], + ["+","-","*","*","+","*"], + ["+","-","*","*","+","+"], + ["+","-","*","*","+","-"], + ["+","-","*","*","-","*"], + ["+","-","*","*","-","+"], + ["+","-","*","*","-","-"], + ["+","-","*","+","*","*"], + ["+","-","*","+","*","+"], + ["+","-","*","+","*","-"], + ["+","-","*","+","+","*"], + ["+","-","*","+","+","+"], + ["+","-","*","+","+","-"], + ["+","-","*","+","-","*"], + ["+","-","*","+","-","+"], + ["+","-","*","+","-","-"], + ["+","-","*","-","*","*"], + ["+","-","*","-","*","+"], + ["+","-","*","-","*","-"], + ["+","-","*","-","+","*"], + ["+","-","*","-","+","+"], + ["+","-","*","-","+","-"], + ["+","-","*","-","-","*"], + ["+","-","*","-","-","+"], + ["+","-","*","-","-","-"], + ["+","-","+","*","*","*"], + ["+","-","+","*","*","+"], + ["+","-","+","*","*","-"], + ["+","-","+","*","+","*"], + ["+","-","+","*","+","+"], + ["+","-","+","*","+","-"], + ["+","-","+","*","-","*"], + ["+","-","+","*","-","+"], + ["+","-","+","*","-","-"], + ["+","-","+","+","*","*"], + ["+","-","+","+","*","+"], + ["+","-","+","+","*","-"], + ["+","-","+","+","+","*"], + ["+","-","+","+","+","+"], + ["+","-","+","+","+","-"], + ["+","-","+","+","-","*"], + ["+","-","+","+","-","+"], + ["+","-","+","+","-","-"], + ["+","-","+","-","*","*"], + ["+","-","+","-","*","+"], + ["+","-","+","-","*","-"], + ["+","-","+","-","+","*"], + ["+","-","+","-","+","+"], + ["+","-","+","-","+","-"], + ["+","-","+","-","-","*"], + ["+","-","+","-","-","+"], + ["+","-","+","-","-","-"], + ["+","-","-","*","*","*"], + ["+","-","-","*","*","+"], + ["+","-","-","*","*","-"], + ["+","-","-","*","+","*"], + ["+","-","-","*","+","+"], + ["+","-","-","*","+","-"], + ["+","-","-","*","-","*"], + ["+","-","-","*","-","+"], + ["+","-","-","*","-","-"], + ["+","-","-","+","*","*"], + ["+","-","-","+","*","+"], + ["+","-","-","+","*","-"], + ["+","-","-","+","+","*"], + ["+","-","-","+","+","+"], + ["+","-","-","+","+","-"], + ["+","-","-","+","-","*"], + ["+","-","-","+","-","+"], + ["+","-","-","+","-","-"], + ["+","-","-","-","*","*"], + ["+","-","-","-","*","+"], + ["+","-","-","-","*","-"], + ["+","-","-","-","+","*"], + ["+","-","-","-","+","+"], + ["+","-","-","-","+","-"], + ["+","-","-","-","-","*"], + ["+","-","-","-","-","+"], + ["+","-","-","-","-","-"], + ["-","*","*","*","*","*"], + ["-","*","*","*","*","+"], + ["-","*","*","*","*","-"], + ["-","*","*","*","+","*"], + ["-","*","*","*","+","+"], + ["-","*","*","*","+","-"], + ["-","*","*","*","-","*"], + ["-","*","*","*","-","+"], + ["-","*","*","*","-","-"], + ["-","*","*","+","*","*"], + ["-","*","*","+","*",