diff options
| author | Marshall Lochbaum <mwlochbaum@gmail.com> | 2021-04-27 17:17:16 -0400 |
|---|---|---|
| committer | Marshall Lochbaum <mwlochbaum@gmail.com> | 2021-04-27 17:17:16 -0400 |
| commit | 3a22f8cb04d2556f18fcfaa0d7af0981537017b2 (patch) | |
| tree | 4bd302afc7d48af4f7aef5d3916cfc3c51cda11b | |
| parent | 714431ccb919fd7d6d96360189cf2e2c015637aa (diff) | |
More specialized comparison function for Grade
| -rw-r--r-- | docs/bqn.js | 6 | ||||
| -rw-r--r-- | src/r.bqn | 53 |
2 files changed, 34 insertions, 25 deletions
diff --git a/docs/bqn.js b/docs/bqn.js index 2deb2598..68708fc3 100644 --- a/docs/bqn.js +++ b/docs/bqn.js @@ -244,9 +244,9 @@ let provide = [ ]; let [runtime,setPrims] = run( - [0,74,22,0,0,11,14,15,1,22,0,1,11,14,15,2,22,0,2,11,14,15,3,22,0,3,11,14,15,4,22,0,4,11,14,15,5,22,0,5,11,14,15,6,0,21,15,7,8,22,0,6,11,14,15,8,22,0,7,11,14,15,9,22,0,8,11,14,15,10,22,0,9,11,14,15,11,22,0,10,11,14,15,12,22,0,11,11,14,15,13,22,0,12,11,14,15,14,22,0,13,11,14,0,0,0,12,0,23,19,22,0,14,11,14,0,23,0,12,21,0,11,0,11,8,3,2,21,0,4,0,0,0,12,0,24,19,8,22,0,15,11,14,0,23,0,12,21,0,11,0,11,8,0,8,0,13,21,0,11,0,23,8,19,3,2,21,0,4,0,0,0,12,0,24,19,8,22,0,16,11,14,15,15,0,15,3,2,21,0,4,21,0,14,8,22,0,17,11,14,15,16,0,21,15,17,8,22,0,18,11,14,15,18,22,0,19,11,14,21,0,14,0,7,0,24,19,21,0,13,21,0,19,8,22,0,20,11,14,21,0,8,0,13,7,22,0,21,11,14,21,0,21,0,7,0,24,19,0,21,21,0,19,8,22,0,22,11,14,0,13,0,7,0,24,19,22,0,23,11,14,0,7,0,8,21,0,21,19,0,7,21,0,6,19,0,21,0,11,8,22,0,24,11,14,0,7,0,8,0,13,19,0,7,21,0,6,19,0,21,0,7,21,0,9,21,0,24,21,0,9,0,7,8,8,8,22,0,25,11,14,0,7,21,0,5,3,2,21,0,4,0,13,21,0,11,0,23,8,8,22,0,26,11,14,0,24,0,14,0,16,0,23,19,3,2,21,0,4,0,12,21,0,22,0,23,19,8,22,0,27,11,14,15,19,22,0,28,11,14,31,0,28,22,0,29,11,14,15,20,22,0,30,11,14,15,21,22,0,31,11,14,15,22,22,0,32,11,14,0,14,21,0,12,21,0,32,8,22,0,33,11,14,21,0,5,0,20,15,23,15,24,3,2,21,0,4,21,0,5,21,0,9,0,12,8,0,12,0,24,19,8,8,22,0,34,11,14,31,0,34,22,0,35,11,14,15,25,22,0,36,11,14,15,26,22,0,37,11,14,15,27,22,0,38,11,14,21,0,38,0,34,7,22,0,39,11,14,15,28,22,0,40,11,14,15,29,22,0,41,11,14,0,35,0,23,0,36,0,23,0,37,0,24,0,38,0,24,0,39,0,24,0,40,0,24,0,41,0,26,0,42,0,27,0,43,0,23,0,44,0,24,0,45,0,23,0,46,0,24,0,47,0,23,0,48,0,24,3,28,21,0,41,21,0,7,0,23,7,0,5,0,76,19,8,15,30,9,22,0,42,11,14,15,31,22,0,43,11,14,15,32,22,0,44,11,14,0,13,0,7,21,0,21,19,22,0,45,11,14,0,24,0,15,0,16,0,23,19,21,0,12,0,13,0,8,0,25,19,0,7,0,24,19,15,33,3,2,21,0,4,21,0,5,21,0,9,21,0,14,8,8,8,3,2,21,0,4,21,0,5,21,0,9,0,14,8,21,0,29,0,8,7,0,24,19,21,0,22,0,23,19,8,22,0,46,11,14,15,34,22,0,47,11,14,15,35,22,0,48,11,14,21,0,45,21,0,46,21,0,8,21,0,46,7,0,7,9,3,2,21,0,4,21,0,6,21,0,9,21,0,14,8,8,15,36,3,3,21,0,4,21,0,14,21,0,10,0,6,8,8,22,0,49,11,14,15,37,22,0,50,11,14,15,38,22,0,51,11,14,15,39,22,0,52,11,14,21,0,52,21,0,49,7,0,21,0,23,21,0,50,21,0,49,8,8,22,0,53,11,14,31,0,52,21,0,8,21,0,49,7,7,0,21,0,24,31,0,50,21,0,8,21,0,49,7,8,8,22,0,54,11,14,15,40,22,0,55,11,14,15,41,22,0,56,11,14,21,0,35,21,0,11,21,0,56,8,22,0,57,11,14,21,0,20,21,0,5,0,20,15,42,8,3,2,21,0,4,0,12,21,0,22,0,23,19,8,22,0,58,11,14,15,43,21,0,13,21,0,5,0,20,15,44,8,8,22,0,59,11,14,15,45,22,0,60,11,14,15,46,22,0,61,11,14,15,47,22,0,62,11,14,15,48,22,0,63,11,14,0,91,0,92,3,2,0,93,0,94,3,2,3,2,0,18,15,49,7,16,22,0,64,22,0,65,4,2,11,14,15,50,22,0,66,11,14,21,0,20,21,0,12,15,51,8,22,0,67,11,14,31,0,67,15,52,3,2,21,0,4,21,0,6,21,0,9,0,15,21,0,9,0,18,21,0,14,7,8,8,21,0,29,0,6,7,0,23,19,21,0,22,0,23,19,8,22,0,68,11,14,31,0,66,21,0,68,3,2,21,0,4,21,0,6,21,0,9,21,0,14,8,8,22,0,69,11,14,15,53,22,0,70,11,14,15,54,22,0,71,11,14,21,0,5,0,15,0,1,0,16,21,0,11,0,23,8,3,2,21,0,4,21,0,27,21,0,22,0,23,19,8,9,3,2,21,0,4,21,0,14,8,22,0,72,11,14,15,55,22,0,73,11,14,15,56,22,0,74,11,14,15,57,22,0,75,11,14,0,23,0,12,21,0,11,21,0,7,21,0,75,7,8,3,2,21,0,4,0,0,0,12,0,30,19,8,22,0,76,11,14,15,58,22,0,77,11,14,21,0,43,0,12,7,21,0,29,0,8,7,0,24,19,22,0,78,11,14,21,0,14,21,0,10,0,12,8,0,23,3,2,21,0,5,21,0,9,21,0,14,8,0,12,3,2,0,12,21,0,10,0,12,8,0,23,3,2,0,14,21,0,10,21,0,78,8,0,23,3,2,15,59,3,5,21,0,29,15,60,7,16,22,0,79,11,14,21,0,5,21,0,14,9,0,12,21,0,10,0,12,8,0,14,21,0,10,21,0,78,8,3,3,21,0,29,15,61,7,16,22,0,80,11,14,0,23,15,62,3,2,21,0,4,21,0,14,8,22,0,81,11,14,21,0,79,0,21,21,0,81,8,22,0,82,11,14,21,0,79,0,7,0,24,19,0,21,3,0,0,14,3,2,21,0,4,21,0,14,8,8,22,0,83,11,14,15,63,22,0,84,11,14,21,0,82,21,0,9,0,5,8,21,0,6,21,0,5,19,22,0,85,11,14,0,15,21,0,9,0,1,0,20,21,0,5,8,21,0,29,21,0,85,0,20,21,0,5,8,7,3,2,21,0,4,21,0,27,21,0,22,0,23,19,8,8,22,0,86,11,14,15,64,22,0,87,11,14,21,0,14,21,0,13,21,0,30,21,0,87,15,65,8,8,22,0,88,11,14,15,66,22,0,89,11,14,15,67,22,0,90,11,14,21,0,14,0,5,0,108,19,21,0,6,15,68,31,0,87,21,0,88,21,0,90,21,0,89,3,2,21,0,4,0,18,0,12,0,12,0,24,19,7,21,0,29,0,8,7,0,24,19,8,31,0,90,3,3,21,0,4,0,12,21,0,24,0,25,19,8,8,19,22,0,91,11,14,21,0,5,21,0,5,21,0,5,21,0,29,15,69,7,9,15,70,15,71,15,72,3,6,21,0,4,21,0,6,8,22,0,92,11,14,15,73,22,0,93,11,14,15,74,22,0,94,11,14,21,0,94,0,119,21,0,26,21,0,12,0,12,8,0,7,0,24,19,15,75,3,3,7,22,0,95,11,14,31,0,94,0,120,0,12,21,0,11,0,23,8,0,7,0,24,19,15,76,3,3,7,22,0,96,11,14,15,77,22,0,97,11,14,15,78,22,0,98,11,14,15,79,22,0,99,11,14,15,80,22,0,100,11,14,15,81,22,0,101,11,14,15,82,22,0,102,11,14,15,83,22,0,103,11,14,15,84,22,0,104,11,14,21,0,5,0,20,21,0,27,0,12,0,23,19,0,7,0,24,19,21,0,104,15,85,15,86,3,2,21,0,4,21,0,6,21,0,9,0,12,8,21,0,22,0,23,19,8,8,8,22,0,105,11,14,0,4,21,0,11,21,0,84,0,24,7,8,22,0,106,11,14,15,87,22,0,107,11,14,21,0,107,21,0,5,0,19,0,6,7,0,28,19,21,0,8,21,0,35,7,21,0,8,21,0,35,21,0,11,21,0,56,8,21,0,9,21,0,53,21,0,9,21,0,106,8,8,7,19,7,22,0,108,11,14,0,32,0,17,16,21,0,37,0,136,8,22,0,109,11,14,15,88,22,0,110,11,14,0,15,0,21,21,0,17,8,22,0,111,11,14,15,89,22,0,112,11,14,15,90,22,0,113,11,14,15,91,21,0,11,21,0,20,8,22,0,114,11,14,15,92,22,0,115,11,14,21,0,44,0,9,7,22,0,116,11,14,21,0,44,0,10,7,22,0,117,11,14,21,0,8,21,0,116,21,0,12,21,0,117,8,7,0,21,0,25,21,0,116,16,21,0,12,21,0,117,8,8,22,0,118,11,14,21,0,44,15,93,0,21,21,0,26,8,7,22,0,119,11,14,21,0,44,15,94,0,21,21,0,24,8,7,22,0,120,11,14,21,0,44,15,95,0,21,0,7,21,0,9,21,0,120,21,0,9,0,7,8,8,8,7,22,0,121,11,14,21,0,44,0,8,7,0,21,21,0,35,21,0,11,21,0,53,8,8,22,0,122,11,14,21,0,44,0,8,0,7,0,6,19,7,0,21,21,0,35,21,0,11,21,0,54,8,8,22,0,123,11,14,21,0,44,0,8,0,21,21,0,23,0,7,21,0,22,19,21,0,11,0,23,8,8,7,22,0,124,11,14,21,0,44,21,0,21,0,7,0,24,19,7,0,21,31,0,19,8,22,0,125,11,14,21,0,44,0,13,0,7,0,24,19,7,0,21,31,0,88,8,22,0,126,11,14,21,0,44,0,12,0,7,0,24,19,7,0,21,21,0,27,8,22,0,127,11,14,21,0,44,0,12,7,0,21,0,12,8,22,0,128,11,14,21,0,44,21,0,21,7,0,21,21,0,7,0,23,7,0,5,0,148,19,8,22,0,129,11,14,21,0,44,0,13,7,0,21,21,0,7,0,23,7,0,5,0,149,19,8,22,0,130,11,14,21,0,44,0,6,7,22,0,131,11,14,21,0,44,0,7,7,22,0,132,11,14,21,0,132,21,0,131,0,24,19,22,0,133,11,14,21,0,6,21,0,128,21,0,128,21,0,127,21,0,82,21,0,83,3,4,19,21,0,29,21,0,131,7,9,21,0,13,15,96,8,22,0,134,11,14,15,97,22,0,135,11,14,15,98,22,0,136,11,14,15,99,22,0,137,11,14,15,100,22,0,138,11,14,15,101,22,0,139,11,14,21,0,85,0,20,21,0,111,21,0,10,21,0,30,8,15,102,3,2,21,0,4,21,0,128,21,0,125,0,24,19,21,0,10,21,0,123,8,8,8,22,0,140,11,14,15,103,22,0,141,11,14,31,0,102,0,21,21,0,101,8,22,0,142,11,14,0,23,21,0,104,31,0,61,8,0,21,21,0,60,8,22,0,143,11,14,31,0,105,0,21,21,0,56,8,22,0,144,11,14,21,0,85,0,21,21,0,5,8,0,20,21,0,98,0,21,31,0,98,21,0,11,21,0,100,8,8,8,22,0,145,11,14,21,0,85,0,21,21,0,5,8,0,20,21,0,99,0,21,31,0,99,21,0,11,31,0,100,8,8,8,22,0,146,11,14,15,104,22,0,147,11,14,31,0,95,0,21,31,0,62,8,22,0,148,11,14,31,0,96,0,21,31,0,63,8,22,0,149,11,14,31,0,115,0,21,31,0,113,8,22,0,150,11,14,21,0,55,0,24,7,0,21,31,0,108,8,22,0,151,11,14,21,0,8,31,0,55,0,23,7,7,0,21,31,0,107,21,0,5,7,8,22,0,152,11,14,21,0,138,22,0,153,11,14,21,0,20,21,0,10,15,105,8,22,0,154,11,14,21,0,53,21,0,9,21,0,53,8,21,0,35,21,0,132,21,0,5,19,21,0,8,21,0,151,7,19,0,1,0,23,19,22,0,155,11,14,15,106,0,1,0,23,19,22,0,156,11,14,15,107,22,0,157,11,14,21,0,5,0,20,15,108,8,22,0,158,11,14,15,109,22,0,159,11,14,15,110,22,0,160,11,14,15,111,22,0,161,11,14,15,112,22,0,162,11,14,15,113,22,0,163,11,14,0,24,21,0,5,15,114,21,0,9,0,23,0,16,21,0,11,21,0,7,0,24,7,21,0,132,21,0,127,19,8,31,0,38,0,49,7,9,3,2,21,0,4,0,16,21,0,11,0,23,8,21,0,128,0,33,19,8,8,9,3,2,21,0,4,0,0,21,0,130,0,30,19,8,22,0,164,11,14,15,115,21,0,10,15,116,8,22,0,165,11,14,15,117,22,0,166,11,14,15,118,21,0,5,0,16,21,0,11,0,24,8,15,119,9,21,0,7,21,0,7,0,23,7,0,5,0,167,19,7,0,16,21,0,11,0,25,8,21,0,165,0,16,21,0,11,0,24,8,19,31,0,166,0,16,21,0,11,0,25,8,15,120,21,0,12,15,121,8,0,16,21,0,11,0,24,8,19,0,16,21,0,11,0,25,8,15,122,21,0,12,15,123,8,21,0,35,21,0,11,0,24,0,30,3,2,8,19,3,6,21,0,4,21,0,6,8,0,16,21,0,11,0,23,8,19,9,22,0,167,11,14,15,124,31,0,167,21,0,7,0,23,7,0,5,0,168,19,3,3,21,0,144,0,30,0,24,0,25,3,3,17,21,0,4,0,0,8,22,0,168,11,14,31,0,140,0,21,21,0,91,8,22,0,169,11,14,0,5,21,0,11,0,169,8,22,0,170,11,14,0,5,21,0,11,0,170,8,22,0,171,11,14,21,0,7,0,23,7,0,5,0,171,19,22,0,172,11,14,15,125,22,0,173,11,14,15,126,22,0,174,11,14,15,127,22,0,175,11,14,21,0,5,0,20,0,24,31,0,104,31,0,71,8,21,0,11,21,0,20,8,0,21,31,0,70,8,8,22,0,176,11,14,0,35,21,0,8,21,0,132,7,0,21,21,0,131,8,0,36,21,0,132,0,37,21,0,8,21,0,116,7,0,21,21,0,124,21,0,173,21,0,5,8,8,0,38,21,0,116,0,39,21,0,44,0,2,7,0,50,21,0,8,21,0,117,7,0,21,21,0,8,21,0,124,7,8,0,44,21,0,8,21,0,116,7,0,21,21,0,122,21,0,173,21,0,5,8,8,0,43,21,0,6,21,0,132,0,24,19,21,0,116,21,0,8,21,0,132,7,19,0,21,21,0,123,21,0,173,21,0,5,8,8,0,40,21,0,133,0,51,0,23,21,0,9,21,0,170,8,0,21,15,128,8,0,52,21,0,5,0,53,21,0,82,21,0,9,21,0,171,8,21,0,6,21,0,5,19,0,21,21,0,5,8,0,34,15,129,0,21,0,23,21,0,9,21,0,170,8,8,0,54,15,130,0,21,15,131,8,0,55,0,23,21,0,9,21,0,170,8,0,21,21,0,148,21,0,173,0,16,21,0,11,0,28,8,8,8,0,56,0,23,21,0,9,21,0,170,8,0,21,21,0,149,21,0,173,0,16,21,0,11,0,23,8,8,8,0,57,0,23,21,0,9,21,0,170,8,0,21,21,0,142,21,0,173,21,0,83,8,8,0,58,21,0,143,21,0,11,21,0,132,8,0,21,21,0,143,8,0,59,31,0,160,0,21,31,0,59,8,0,60,0,23,21,0,9,21,0,170,8,0,21,15,132,8,0,61,31,0,175,0,21,31,0,174,8,3,42,21,0,41,21,0,172,8,22,0,177,11,14,0,35,21,0,8,21,0,132,7,0,21,0,25,21,0,12,21,0,116,8,8,0,36,21,0,131,0,21,0,23,21,0,9,21,0,170,8,8,0,37,21,0,8,21,0,116,7,0,21,21,0,118,8,0,38,21,0,124,0,21,0,23,21,0,9,21,0,170,8,8,0,39,21,0,118,0,21,0,23,21,0,9,21,0,170,8,8,0,50,0,2,21,0,116,9,0,21,0,23,21,0,9,21,0,170,8,8,0,44,21,0,8,21,0,116,7,0,21,21,0,118,8,0,43,21,0,6,21,0,132,0,24,19,21,0,116,21,0,8,21,0,132,7,19,0,21,21,0,133,21,0,9,21,0,118,8,21,0,133,9,8,0,40,21,0,7,0,24,7,21,0,132,21,0,131,19,0,21,0,23,21,0,9,21,0,170,8,8,3,18,21,0,41,21,0,172,8,22,0,178,11,14,15,133,22,0,179,11,14,0,62,21,0,178,0,63,15,134,0,64,15,135,0,65,15,136,0,66,15,137,21,0,9,15,138,8,3,10,21,0,41,21,0,7,21,0,172,7,8,22,0,180,11,14,31,0,141,22,0,181,11,14,31,0,77,22,0,182,11,14,15,139,0,67,31,0,165,0,68,15,140,0,69,15,141,0,70,21,0,7,0,23,21,0,9,21,0,170,8,7,15,142,15,143,3,2,21,0,4,21,0,130,21,0,11,0,23,8,8,3,2,21,0,4,21,0,5,21,0,9,21,0,15,8,8,0,71,15,144,0,72,15,145,15,146,21,0,5,3,2,21,0,4,21,0,6,8,21,0,6,21,0,9,21,0,164,8,19,0,73,15,147,3,14,31,0,41,21,0,7,21,0,172,7,8,7,22,0,183,11,14,31,0,139,22,0,184,11,14,31,0,163,22,0,185,11,14,21,0,69,0,21,31,0,72,8,22,0,186,11,14,15,148,22,0,187,11,14,31,0,137,22,0,188,11,14,21,0,110,0,21,21,0,17,8,22,0,189,11,14,31,0,85,0,21,21,0,5,8,0,20,21,0,18,21,0,9,21,0,126,8,8,22,0,190,11,14,31,0,159,0,21,31,0,58,8,22,0,191,11,14,31,0,156,0,21,21,0,155,8,22,0,192,11,14,31,0,154,0,21,21,0,144,21,0,11,21,0,152,8,8,22,0,193,11,14,21,0,131,21,0,132,21,0,124,21,0,116,31,0,117,31,0,118,21,0,120,21,0,121,21,0,119,21,0,133,21,0,122,21,0,123,21,0,125,21,0,126,21,0,127,21,0,128,21,0,130,21,0,129,21,0,82,21,0,83,21,0,6,21,0,5,31,0,189,21,0,169,31,0,190,21,0,148,21,0,149,21,0,142,31,0,146,21,0,145,21,0,143,31,0,191,21,0,144,21,0,53,21,0,54,21,0,176,21,0,186,21,0,151,31,0,192,21,0,152,31,0,193,21,0,150,0,5,21,0,7,21,0,8,21,0,103,21,0,84,21,0,179,31,0,185,21,0,29,31,0,184,0,19,21,0,9,21,0,10,21,0,11,21,0,12,21,0,182,0,21,31,0,187,21,0,153,31,0,188,21,0,181,0,22,3,63,15,149,16,25,0,23,21,0,1,3,2,25,21,0,1,25,21,0,1,22,1,1,22,1,2,4,2,12,25,21,0,1,15,150,21,0,5,0,16,21,0,1,21,0,4,21,0,2,17,17,7,21,0,2,17,25,21,0,1,25,21,0,2,25,21,0,1,25,21,0,1,14,21,0,4,25,21,0,1,21,1,6,21,0,2,17,21,0,4,21,0,1,17,25,21,0,1,21,0,5,21,0,2,17,21,0,4,16,25,21,0,1,21,0,5,16,21,0,4,21,0,2,21,0,5,16,17,25,21,0,1,21,0,5,21,0,1,21,1,6,21,0,2,17,21,0,4,16,17,25,21,0,1,21,0,5,16,21,0,4,21,0,1,21,1,6,21,0,2,17,17,25,21,0,1,15,151,21,1,5,21,0,4,3,2,0,16,21,0,1,21,0,5,21,0,2,17,17,7,21,0,2,17,25,21,0,1,3,1,0,1,21,0,1,17,25,21,0,2,21,0,1,3,2,25,21,0,1,3,1,25,21,0,1,3,1,0,15,3,0,17,0,1,21,0,1,17,25,21,0,1,0,12,16,0,12,0,24,17,0,5,0,75,17,14,21,0,1,22,0,5,11,21,1,27,16,22,0,6,11,14,21,0,4,22,0,7,11,14,21,0,1,21,1,6,0,21,15,152,15,153,3,2,21,1,4,21,0,6,21,1,22,0,23,17,8,8,21,0,2,17,22,0,8,11,14,21,0,6,0,17,16,0,18,21,1,7,21,0,1,7,0,16,0,7,21,1,11,0,24,0,7,21,0,6,17,8,19,15,154,9,7,16,14,21,0,8,25,21,0,2,21,1,27,16,22,0,3,11,14,21,0,1,21,1,27,16,0,6,21,0,3,17,0,17,16,0,18,21,0,2,21,1,12,0,16,8,21,1,8,21,0,1,7,0,16,21,0,3,21,1,12,0,7,8,19,3,2,21,1,4,0,13,21,1,11,31,0,3,8,8,7,16,25,21,0,2,0,17,16,0,18,21,0,1,21,1,12,0,16,8,7,16,25,21,0,2,0,7,21,0,1,21,1,27,16,17,0,17,16,0,18,21,1,7,21,0,1,7,0,16,0,6,21,1,11,21,0,2,8,19,7,16,25,21,0,1,21,1,33,0,24,17,22,0,3,11,21,1,29,0,8,7,0,24,17,22,0,4,11,14,21,0,4,0,17,16,0,15,31,0,3,17,0,18,0,6,21,1,11,0,8,21,1,11,31,0,4,8,8,21,1,8,0,16,7,21,0,1,0,15,16,19,7,21,0,2,17,25,21,0,2,0,18,21,0,1,21,1,12,0,16,8,7,16,25,21,1,22,0,18,0,12,0,7,0,24,19,7,21,0,1,19,0,19,0,8,7,9,21,1,29,0,6,7,9,25,21,1,7,21,1,0,0,18,21,1,36,21,0,1,7,21,1,8,0,16,7,21,0,2,19,7,16,7,0,16,15,155,19,25,15,156,0,12,21,0,1,21,1,36,21,1,0,7,16,19,25,0,25,0,9,21,0,1,21,1,27,16,17,0,17,16,0,18,0,8,21,1,11,0,25,8,7,16,22,0,3,11,14,21,0,1,21,1,35,21,0,3,17,21,0,1,21,1,35,31,0,3,0,18,0,6,21,1,11,0,24,8,7,16,17,3,2,25,21,0,2,21,1,40,16,22,0,3,22,0,4,4,2,11,14,21,0,1,3,1,21,1,30,31,0,4,17,21,1,37,31,0,3,8,25,0,23,21,0,1,16,25,15,157,22,0,2,11,14,15,158,22,0,3,11,14,21,0,3,21,0,1,7,21,1,8,31,0,3,21,1,8,21,0,1,7,7,7,3,2,21,1,4,0,12,21,1,10,21,1,23,8,8,31,0,2,21,0,1,7,3,2,21,1,4,0,12,21,1,10,0,12,8,8,25,15,159,21,0,1,7,22,0,2,11,14,21,0,1,21,0,2,0,20,15,160,15,161,3,2,21,1,4,21,1,14,21,1,10,21,1,23,8,8,0,21,0,18,21,0,2,7,8,8,21,0,2,0,20,21,1,43,21,0,2,7,8,3,3,21,1,4,21,1,14,21,1,10,0,6,8,8,25,21,0,1,21,1,46,21,0,2,17,25,21,0,1,0,18,21,1,22,21,1,11,0,23,8,7,21,1,29,0,8,7,0,24,19,21,1,10,0,7,8,21,0,2,17,22,0,3,11,14,21,0,1,21,0,3,0,23,3,2,15,162,3,2,21,1,4,0,23,0,12,31,0,3,17,8,21,0,2,17,25,21,0,4,22,0,5,11,14,0,23,21,1,6,21,0,2,17,22,0,6,11,14,21,0,1,22,0,7,11,14,15,163,22,0,8,11,14,31,0,8,21,0,7,0,12,0,24,17,21,1,13,21,1,7,21,0,5,7,15,164,0,21,21,1,5,8,21,0,2,19,8,16,25,21,0,1,0,14,21,1,10,21,1,47,8,21,0,2,17,22,0,3,11,14,31,0,3,21,1,29,21,1,48,21,0,1,0,15,16,21,1,12,0,16,8,21,1,12,21,1,49,21,1,11,21,0,2,0,15,16,21,1,12,0,16,8,8,8,7,7,16,22,0,4,11,14,0,23,21,1,8,31,0,4,7,16,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,79,17,14,21,0,1,21,1,27,16,22,0,6,11,14,21,0,1,21,1,33,0,24,17,21,1,29,0,8,7,0,24,17,22,0,7,11,14,21,0,1,0,15,16,22,0,8,11,14,0,23,22,0,9,11,22,0,10,11,14,21,0,8,0,23,0,18,21,1,15,7,21,1,29,0,8,7,0,24,19,3,2,21,1,4,21,0,6,21,1,22,0,29,17,0,8,0,24,0,12,21,0,7,17,17,8,16,21,1,5,21,1,13,21,0,1,21,1,12,15,165,8,8,16,0,7,0,24,17,22,0,11,11,14,21,0,1,0,18,21,0,10,21,1,12,0,7,8,0,7,21,1,11,21,0,9,8,3,2,0,16,21,0,5,17,7,0,4,21,1,11,0,3,8,9,15,166,21,0,4,7,3,2,21,1,4,31,0,11,8,16,0,1,0,23,17,25,21,0,1,22,0,2,11,14,21,1,22,21,1,11,0,23,8,21,1,13,15,167,8,25,21,0,2,0,12,16,21,1,8,0,7,7,0,24,17,22,0,5,11,14,21,0,5,0,13,0,23,17,0,5,0,80,17,14,21,0,1,0,12,16,0,13,21,0,5,17,0,5,0,81,17,14,21,0,1,21,1,20,16,22,0,1,12,14,21,0,2,21,1,33,0,24,17,22,0,6,11,21,1,29,0,8,7,0,24,17,22,0,7,11,14,21,0,7,21,1,48,21,0,2,0,15,16,21,1,12,0,16,8,21,1,10,21,0,4,8,7,16,22,0,8,11,14,21,0,2,21,1,27,16,0,24,0,24,21,1,12,0,7,21,1,9,0,17,8,8,0,18,0,8,21,1,11,21,0,7,8,21,1,9,0,6,21,1,11,31,0,7,8,21,1,12,21,1,7,0,23,7,0,13,31,0,8,19,8,8,7,9,21,1,29,0,8,7,0,24,19,3,2,21,1,4,21,1,22,21,1,11,0,23,8,8,16,0,5,0,82,17,14,21,0,1,0,12,16,21,1,8,0,7,7,31,0,5,17,22,0,9,11,14,21,0,1,21,1,33,21,0,9,17,22,0,10,11,14,21,0,10,21,1,47,21,0,6,17,22,0,11,11,14,31,0,11,21,1,29,21,1,48,21,0,1,0,15,16,21,1,12,0,16,8,21,1,12,21,0,4,21,1,11,21,0,2,0,15,16,21,1,12,0,16,8,8,8,7,7,16,22,0,12,11,14,21,1,7,0,23,7,0,13,31,0,12,21,1,11,0,8,21,1,11,31,0,6,21,1,29,0,8,7,0,24,17,8,8,19,22,0,13,11,14,31,0,9,0,17,16,0,18,21,0,1,0,14,16,21,1,12,0,16,8,7,16,21,1,5,21,1,29,0,8,7,0,24,19,0,17,9,21,1,12,0,15,8,16,0,18,0,8,21,1,11,31,0,10,21,1,29,0,8,7,0,24,17,8,7,16,0,18,15,168,21,1,11,21,0,2,21,1,27,16,8,7,16,0,1,0,23,17,25,21,0,1,22,0,2,11,14,21,1,29,0,8,7,0,7,0,24,19,0,19,0,8,7,21,1,29,0,6,7,9,3,2,0,16,21,0,1,17,22,0,3,11,14,15,169,0,1,0,23,19,25,21,0,1,0,12,16,0,12,0,24,17,0,5,0,85,17,14,21,0,1,21,1,27,16,22,0,3,11,14,21,0,1,21,0,3,21,1,22,0,23,17,21,1,13,15,170,8,16,0,1,0,23,17,25,21,0,1,21,1,27,16,22,0,3,11,14,21,0,1,21,1,33,0,24,17,22,0,4,11,21,1,29,0,8,7,0,24,17,22,0,5,11,14,31,0,3,0,17,16,0,18,21,1,7,21,0,1,0,15,16,7,0,16,0,8,21,1,11,21,0,5,8,21,1,12,0,6,8,19,7,31,0,5,0,17,16,0,15,31,0,4,17,17,25,21,0,1,21,1,14,16,21,1,171,16,14,21,0,1,0,12,16,21,1,22,0,23,17,25,21,0,1,0,12,16,21,1,8,0,7,7,0,24,17,22,0,3,11,14,21,0,1,0,14,16,22,0,4,11,14,21,0,4,0,16,21,0,3,17,22,0,5,11,14,31,0,3,0,17,16,0,18,31,0,4,21,1,12,0,16,8,7,16,22,0,6,11,14,21,0,6,21,1,29,0,8,7,0,24,17,0,17,16,0,15,31,0,6,17,0,18,21,1,7,21,0,1,0,15,16,7,0,16,0,8,21,1,11,21,0,5,8,21,1,12,0,6,8,19,7,31,0,5,0,17,16,17,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,87,17,14,21,0,1,21,1,27,16,22,0,3,11,14,21,0,1,21,1,35,21,0,3,0,17,16,0,18,0,7,21,1,11,0,24,0,7,31,0,3,17,8,7,16,17,25,21,0,2,21,1,15,16,0,5,0,88,17,14,21,0,1,21,1,27,16,22,0,3,11,14,0,23,0,12,21,0,3,17,0,6,21,0,3,17,0,9,21,0,2,17,21,1,24,16,0,8,21,0,3,17,0,7,22,0,2,13,14,21,0,1,21,1,35,21,0,3,0,17,16,0,18,21,1,5,0,13,21,0,2,0,7,21,0,3,17,19,0,8,31,0,3,19,0,7,21,1,5,19,0,6,21,0,2,19,7,16,17,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,89,17,14,21,0,1,21,1,27,16,0,6,0,24,17,0,17,16,0,18,21,0,1,21,1,12,21,1,35,21,1,11,0,17,8,8,7,16,0,1,21,1,11,0,16,21,1,11,0,23,8,8,16,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,90,17,14,21,0,1,21,1,27,16,22,0,3,11,14,21,0,3,0,6,0,24,17,0,17,16,0,18,21,0,1,21,1,12,21,1,35,21,1,11,15,171,8,8,7,16,0,1,21,1,11,0,16,21,1,11,21,0,3,8,8,16,25,21,0,1,22,0,3,22,0,4,4,2,11,14,15,172,22,0,5,11,14,21,1,5,21,1,9,21,1,15,8,0,5,31,0,3,19,21,1,6,0,6,21,0,5,0,13,21,1,11,0,23,8,7,9,31,0,5,21,1,23,7,3,2,21,1,4,0,13,21,1,11,0,23,8,8,19,25,21,0,1,0,12,16,0,12,0,24,17,0,5,0,95,17,14,21,0,2,21,1,64,21,0,1,21,1,27,16,17,21,1,8,0,16,7,21,0,1,17,25,21,0,2,0,12,16,0,12,0,24,17,0,5,0,96,17,14,21,0,1,0,14,16,22,0,3,11,21,1,27,21,1,10,0,12,8,21,0,2,17,0,5,0,97,17,14,0,23,22,0,4,11,14,21,0,2,21,1,27,16,0,17,16,0,18,31,0,3,21,1,12,0,16,8,15,173,21,0,2,21,1,12,0,16,8,19,7,16,14,21,0,1,21,1,17,16,0,16,21,0,4,17,25,21,0,2,0,18,21,0,1,21,1,12,21,1,68,8,7,16,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,98,17,14,21,0,1,21,1,27,16,21,1,22,0,23,17,0,5,0,99,17,14,21,0,1,21,1,35,0,23,21,1,22,16,17,25,21,0,2,21,1,14,16,0,5,0,100,17,14,21,0,1,21,1,35,21,1,11,0,18,21,1,65,21,1,11,21,0,1,21,1,27,16,8,7,8,21,0,2,17,25,21,0,1,21,1,1,16,22,0,3,11,14,21,0,3,0,16,0,23,17,0,23,21,1,12,0,13,8,21,0,3,21,1,9,21,1,27,8,21,1,8,0,7,7,0,24,19,0,17,9,21,1,29,0,8,21,1,11,0,6,21,1,11,0,24,8,21,1,8,0,16,7,31,0,3,19,21,0,0,9,8,7,0,24,19,3,2,21,1,4,0,13,21,1,11,0,25,8,8,16,25,21,0,1,15,174,21,1,6,21,1,73,9,21,1,13,15,175,8,3,2,21,1,4,21,1,6,21,1,9,0,0,8,0,13,0,30,19,8,21,0,2,17,25,21,0,1,25,21,0,1,21,0,5,21,1,10,21,0,4,8,21,0,2,17,22,0,6,11,14,21,1,60,21,1,29,21,1,5,21,1,14,9,21,1,13,0,15,21,1,12,0,16,8,8,7,21,0,1,19,0,23,0,14,21,1,5,21,1,29,0,8,7,0,24,19,0,17,9,21,1,12,0,15,8,9,3,2,21,1,4,21,1,14,8,9,22,0,7,11,14,15,176,22,0,8,11,14,21,1,1,0,23,0,16,21,1,11,0,25,8,0,12,21,1,7,21,0,8,7,19,3,2,21,1,4,0,16,21,1,11,0,23,8,0,12,0,32,19,8,9,22,0,9,11,14,21,0,5,21,1,93,21,0,9,17,22,0,10,11,14,0,23,21,0,8,0,28,8,22,0,11,11,14,31,0,11,31,0,10,16,0,23,21,1,75,3,2,21,1,1,21,1,35,0,24,0,30,3,2,19,3,2,21,1,4,31,0,9,8,16,22,0,12,22,0,13,4,2,11,14,21,1,5,21,1,9,21,1,76,8,0,7,0,24,19,21,1,13,15,177,8,22,0,14,11,14,21,1,5,0,20,15,178,8,22,0,15,11,14,31,0,13,31,0,14,21,0,6,17,21,1,7,21,0,1,7,21,1,12,31,0,15,8,21,1,7,21,0,5,7,21,1,168,9,15,179,9,3,2,21,1,4,21,1,76,8,16,25,21,0,1,21,1,43,21,1,79,7,21,0,2,17,0,15,16,21,1,29,0,8,7,0,24,17,25,21,0,2,0,16,0,24,17,21,0,1,3,2,21,1,4,21,0,2,0,16,0,23,17,8,25,0,23,21,0,1,3,2,21,1,4,21,0,2,8,25,21,0,1,0,15,16,0,18,21,1,81,7,16,21,1,29,21,1,25,7,0,23,17,0,6,0,24,17,25,21,0,1,21,1,20,21,1,10,21,0,4,21,1,74,21,1,43,21,0,4,7,0,21,0,18,21,0,4,7,8,8,8,21,0,2,17,25,0,1,21,1,12,21,1,5,0,20,21,1,7,3,0,7,0,15,21,1,83,21,1,10,21,0,2,8,19,8,8,21,1,86,21,1,5,0,20,21,1,6,8,21,0,1,19,3,2,21,1,4,0,15,21,1,9,21,1,27,8,21,1,22,0,23,19,8,25,21,0,1,0,15,16,0,16,0,23,17,21,1,83,16,22,0,3,11,14,21,0,1,0,15,16,0,18,21,1,83,0,23,21,1,78,3,2,21,1,4,21,1,27,21,1,10,0,12,8,8,21,0,3,19,0,5,0,102,19,7,16,14,21,0,3,21,1,29,0,8,7,0,24,17,0,17,16,0,15,31,0,3,17,0,18,21,1,8,0,16,7,7,21,0,1,0,18,21,1,17,7,16,17,25,0,28,22,0,3,11,22,0,4,11,14,3,0,22,0,5,11,14,21,0,1,22,0,6,11,14,21,0,1,0,18,21,1,27,7,16,21,1,56,16,0,18,15,180,7,16,25,21,0,1,0,15,16,22,0,3,11,21,1,27,16,22,0,4,11,14,21,0,3,0,18,21,1,83,7,16,22,0,5,11,14,21,0,5,0,16,0,23,17,21,1,27,16,22,0,6,11,14,21,0,1,0,12,16,22,0,7,11,14,21,0,5,0,18,21,1,27,0,12,21,0,6,19,7,16,21,1,29,0,8,7,0,24,17,0,5,0,103,17,14,21,0,7,21,1,21,21,0,6,17,0,5,0,104,17,14,15,181,22,0,8,11,14,21,0,1,21,1,83,16,22,0,9,11,14,0,24,22,0,10,11,14,0,23,21,1,22,16,22,0,11,11,22,0,12,11,14,21,0,7,0,17,16,21,1,84,15,182,7,21,0,9,21,1,60,16,21,0,8,0,8,7,0,24,17,21,1,60,16,17,14,21,1,84,15,183,31,0,3,0,18,0,15,7,16,7,7,22,0,13,11,14,21,0,11,21,0,13,15,184,3,2,21,1,4,21,0,6,21,1,22,21,0,7,17,8,21,0,12,17,25,21,0,2,21,1,27,16,22,0,3,11,14,21,0,1,21,1,27,16,22,0,4,11,14,21,0,3,21,1,21,21,0,4,17,0,5,0,107,17,14,31,0,4,0,17,16,0,18,21,0,1,21,1,12,0,16,8,21,1,12,0,8,21,1,11,21,0,2,21,1,12,0,16,8,8,21,1,5,3,2,21,1,4,21,1,6,0,13,31,0,3,19,8,8,7,16,25,21,0,1,21,0,2,9,25,21,0,1,22,0,3,22,0,4,22,0,5,4,3,11,14,31,0,5,31,0,4,31,0,3,19,25,21,0,1,22,0,3,22,0,4,4,2,11,14,31,0,4,31,0,3,7,25,21,0,1,22,0,3,22,0,4,22,0,5,4,3,11,14,31,0,5,31,0,4,31,0,3,8,25,21,1,7,21,1,75,7,22,0,0,11,14,15,185,22,0,1,11,14,0,0,21,1,21,0,30,19,21,1,13,21,0,1,21,1,76,7,8,22,0,2,11,14,15,186,22,0,3,11,14,15,187,22,0,4,11,14,15,188,22,0,5,11,14,0,109,21,1,5,0,110,0,23,21,0,3,0,24,8,21,0,4,9,0,111,0,24,21,0,3,0,23,8,21,0,4,9,0,112,0,24,21,0,3,0,24,8,31,0,4,9,0,113,0,24,21,0,3,0,24,8,31,0,5,9,0,114,0,24,31,0,3,0,24,8,3,12,21,1,40,16,22,0,6,22,0,7,4,2,11,14,15,189,3,1,21,1,30,31,0,7,21,1,57,21,1,11,0,18,21,1,27,7,8,21,0,6,17,17,21,1,37,31,0,6,21,1,89,16,8,22,0,8,11,14,15,190,22,0,9,11,14,15,191,21,1,12,21,1,5,0,16,0,24,19,31,0,9,21,1,6,19,21,0,2,9,21,1,7,21,1,7,21,1,75,7,7,15,192,21,1,92,0,16,21,1,11,0,23,8,19,21,1,5,0,16,0,24,19,31,0,2,9,3,4,21,1,4,21,1,5,0,16,0,23,19,21,1,9,0,30,21,1,5,0,25,3,2,21,1,4,0,13,21,1,11,0,25,8,8,3,2,21,1,4,0,13,21,1,11,0,23,8,8,8,8,8,25,21,0,1,22,0,2,22,0,3,22,0,4,4,3,11,14,0,116,21,1,30,31,0,2,17,21,1,30,0,115,17,22,0,5,11,14,0,117,22,0,6,11,14,0,118,22,0,7,11,14,15,193,25,21,0,1,21,1,26,16,22,0,5,11,21,1,22,21,1,11,21,0,2,8,21,1,13,21,0,4,8,16,14,31,0,5,0,17,16,0,18,21,0,1,0,6,21,0,2,17,21,1,12,0,6,8,7,0,18,0,23,21,1,12,21,1,22,8,21,1,13,0,27,8,7,9,0,18,0,13,21,1,11,21,0,2,8,21,1,13,0,27,8,7,3,2,21,1,4,21,0,1,21,1,22,0,23,17,8,16,25,21,0,1,14,0,6,21,1,25,0,23,19,0,17,9,0,7,21,1,25,0,23,19,0,17,9,0,18,0,6,7,21,1,5,21,1,9,21,1,22,8,19,3,2,21,1,4,21,1,22,21,1,11,0,23,8,8,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,121,17,14,21,0,2,0,12,21,1,10,0,7,8,21,0,1,17,22,0,3,11,14,21,0,3,0,13,0,23,17,0,5,0,122,17,14,21,0,3,21,1,21,0,24,17,0,5,0,123,17,14,21,0,1,21,1,33,0,24,17,22,0,4,11,14,21,0,4,21,1,27,16,0,17,16,0,18,21,1,7,21,0,2,21,1,83,16,7,0,16,31,0,3,0,7,0,24,17,21,1,12,0,6,8,19,0,12,21,0,4,21,1,12,0,16,8,19,7,16,21,1,29,0,8,7,0,24,17,0,5,0,124,17,14,31,0,4,21,1,29,0,8,7,0,24,17,25,21,0,1,21,1,97,21,0,2,17,22,0,3,11,14,21,0,2,0,24,21,1,27,3,2,21,1,4,21,1,5,0,12,21,1,10,0,13,8,21,0,1,19,8,16,0,8,21,0,3,17,22,0,4,11,14,21,0,1,21,1,27,16,0,8,31,0,3,17,0,17,16,0,18,21,0,2,21,1,17,16,21,1,12,0,16,8,21,1,7,21,0,1,0,15,16,7,0,16,21,0,4,21,1,12,0,7,8,19,3,2,21,1,4,0,13,21,1,11,31,0,4,8,8,7,16,0,15,21,0,1,21,1,83,16,17,25,21,0,1,21,1,97,21,0,2,17,22,0,3,11,14,21,0,1,21,1,27,16,0,8,21,0,3,17,22,0,4,11,14,21,0,2,0,24,21,1,27,3,2,21,1,4,21,1,5,0,12,21,1,10,0,13,8,21,0,1,19,8,16,0,8,31,0,3,17,22,0,5,11,14,21,0,5,0,7,21,0,4,17,22,0,6,11,14,31,0,4,0,17,16,0,18,21,1,7,21,0,1,0,15,16,7,0,16,31,0,5,21,1,12,0,6,8,19,21,1,7,21,0,2,21,1,17,16,7,0,16,21,0,6,21,1,12,0,7,8,19,3,2,21,1,4,0,13,21,1,11,31,0,6,8,8,7,16,0,15,21,0,1,21,1,83,16,17,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,121,17,14,21,0,1,21,1,33,0,24,17,21,1,5,21,1,29,0,8,7,0,24,19,0,17,9,21,1,12,0,15,8,16,0,18,21,0,1,0,1,16,7,16,25,15,194,22,0,3,11,14,15,195,22,0,4,11,14,21,0,1,21,0,3,31,0,4,3,2,21,1,4,21,1,14,8,16,25,21,0,2,0,12,16,21,1,21,0,24,17,0,5,0,127,17,14,21,0,2,21,1,17,16,22,0,2,12,21,1,27,16,22,0,3,11,14,21,0,1,21,0,3,21,1,22,0,23,17,21,1,13,21,1,5,0,20,15,196,8,8,21,0,2,17,25,21,0,1,0,28,21,1,138,21,0,4,8,21,0,2,17,25,21,0,1,22,0,3,11,14,21,1,20,21,1,12,15,197,15,198,3,2,21,1,4,21,1,6,21,1,9,21,1,82,21,1,22,21,0,2,19,8,8,8,25,21,0,2,21,1,14,21,1,13,0,15,0,16,0,23,19,8,16,22,0,2,12,14,21,0,2,21,1,16,16,0,5,0,86,17,14,21,0,2,22,0,3,11,22,0,4,11,14,21,0,1,21,1,35,21,0,1,21,1,27,16,0,8,21,0,3,17,0,17,16,0,19,21,1,8,15,199,21,1,13,15,200,8,7,7,16,17,25,21,0,1,21,1,27,21,1,10,0,12,8,21,0,2,17,0,5,0,134,17,14,21,0,1,21,1,57,21,0,2,17,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,135,17,14,21,0,1,21,1,53,16,22,0,5,11,14,21,0,1,21,1,27,16,0,17,16,0,18,0,24,21,1,5,21,0,1,0,12,21,1,22,0,24,19,21,1,13,21,1,103,21,1,22,7,8,16,21,1,35,21,0,5,17,21,1,12,0,16,8,21,1,10,21,1,83,8,0,24,21,1,12,0,7,8,19,3,2,21,1,4,21,1,22,21,1,11,0,23,8,8,7,16,21,0,4,21,0,5,17,21,1,35,31,0,5,21,1,106,16,17,0,1,0,23,17,25,21,0,2,0,12,16,21,1,21,0,24,17,0,5,0,137,17,14,21,0,2,21,1,17,16,22,0,3,11,14,21,0,3,0,18,21,1,16,0,7,0,24,19,7,16,22,0,4,11,21,1,29,0,6,7,0,23,17,22,0,5,11,14,21,0,5,21,1,21,0,24,17,0,5,0,138,17,14,21,0,1,21,1,17,16,22,0,6,11,21,1,27,16,22,0,7,11,14,21,0,3,21,1,5,21,1,29,0,8,7,0,24,19,15,201,3,2,21,1,4,31,0,5,8,16,22,0,8,11,14,21,0,6,21,0,7,0,12,21,0,8,17,0,7,0,24,17,21,1,13,21,1,5,0,20,15,202,8,8,16,0,15,21,0,3,17,25,21,0,1,0,18,21,1,15,7,16,21,1,29,0,8,7,0,24,17,0,5,0,142,17,14,21,0,1,0,18,0,13,21,1,11,0,28,8,7,16,21,1,29,0,8,7,0,24,17,0,5,0,143,17,14,0,3,22,0,5,11,14,21,0,1,21,1,6,0,21,0,23,8,21,1,13,21,1,5,15,203,21,1,27,21,1,12,21,1,8,0,7,7,8,19,8,21,0,2,17,22,0,1,12,14,21,0,1,0,4,21,0,1,21,0,5,16,22,0,6,11,17,22,0,7,11,14,0,23,22,0,8,11,14,31,0,6,0,18,0,17,21,1,9,0,18,15,204,7,8,21,0,4,9,7,16,25,21,0,1,0,12,16,0,12,0,24,17,0,5,0,144,17,14,21,1,112,21,1,5,7,22,0,3,11,14,21,0,1,21,0,3,0,1,0,23,21,1,9,0,17,8,19,0,18,15,205,7,21,1,29,0,18,0,18,21,1,30,7,7,7,3,0,21,1,22,16,21,1,22,16,19,0,1,0,18,0,23,7,3,0,21,1,12,21,1,111,8,0,1,21,1,5,19,9,19,3,2,21,1,4,21,1,82,21,1,22,0,24,19,8,16,25,21,0,2,0,12,16,22,0,3,11,14,21,0,1,0,12,16,0,13,21,0,3,17,0,5,0,145,17,14,21,0,1,21,1,83,16,22,0,4,11,21,1,31,21,0,3,17,21,1,84,0,7,7,21,0,2,21,1,83,16,17,22,0,5,11,14,21,0,5,0,23,0,16,21,1,11,0,23,8,0,12,0,24,19,3,2,21,1,4,21,0,3,0,12,0,24,17,8,16,22,0,6,11,14,31,0,5,0,18,0,12,21,1,11,0,23,8,7,21,1,29,0,8,7,0,24,19,0,24,3,2,21,1,4,21,0,6,8,16,0,5,0,146,17,14,21,0,1,21,1,12,21,1,5,0,20,21,1,6,21,1,9,21,0,1,21,1,111,16,15,206,15,207,3,2,21,1,4,21,0,1,0,12,16,0,12,21,0,3,17,8,16,8,8,8,22,0,7,11,14,21,0,2,21,1,111,16,21,1,112,21,0,7,7,31,0,6,17,0,1,3,0,31,0,7,16,17,25,21,0,1,21,1,14,16,0,5,0,147,17,14,21,0,1,21,1,114,21,1,147,3,2,21,1,4,21,0,2,21,1,82,16,0,13,0,25,17,8,21,0,2,17,25,21,0,2,21,1,116,21,0,1,17,21,1,24,16,0,8,21,0,2,17,0,7,21,0,1,17,25,21,0,2,21,0,1,3,2,0,16,21,0,1,21,1,23,21,0,2,17,17,25,21,0,2,21,0,1,3,2,0,16,21,0,1,21,1,22,21,0,2,17,17,25,21,0,1,0,21,21,0,1,0,1,0,23,21,0,2,16,19,8,25,21,0,1,21,1,128,16,21,1,129,0,24,17,0,5,0,150,17,14,21,0,1,21,1,111,16,22,0,1,12,14,21,0,1,21,1,127,16,0,30,21,1,12,21,1,130,8,21,1,122,21,1,130,21,1,11,0,24,8,19,16,0,5,0,151,17,14,21,0,1,0,18,21,1,15,7,16,21,1,29,21,1,122,7,0,24,17,0,5,0,152,17,14,21,0,1,25,21,0,1,21,1,9,21,1,135,8,21,1,5,21,1,9,21,1,125,8,21,1,84,0,16,7,21,1,127,21,1,12,21,1,8,21,1,119,21,1,131,0,24,19,21,1,132,21,1,6,19,7,8,19,0,24,0,23,3,2,0,21,0,25,3,1,8,19,25,21,0,1,21,1,136,21,0,5,7,21,0,2,17,22,0,6,11,21,1,126,0,23,17,22,0,7,11,14,21,0,4,22,0,8,11,14,15,208,22,0,9,11,14,21,0,1,21,0,9,31,0,6,7,21,0,2,17,25,21,0,1,21,1,136,21,0,5,7,21,1,84,21,1,132,21,1,12,21,1,120,8,21,1,132,21,1,121,0,23,19,3,2,21,1,4,21,1,5,21,1,130,0,23,19,8,7,21,1,128,21,1,10,21,1,18,8,19,21,0,2,17,22,0,6,11,14,15,209,22,0,7,11,14,21,1,5,21,1,125,9,21,0,7,21,1,5,0,18,21,1,125,7,9,3,3,21,1,4,21,1,128,21,1,12,21,1,129,8,21,1,131,0,24,19,21,1,124,0,23,21,1,12,21,1,126,8,19,8,22,0,7,12,14,21,0,1,21,0,7,21,0,6,0,16,21,1,11,21,1,127,21,1,8,21,1,132,7,0,24,19,8,16,17,21,1,84,21,0,4,7,21,0,2,31,0,7,31,0,6,0,16,0,23,17,17,17,21,1,126,16,25,21,0,1,21,1,128,16,21,1,130,0,24,17,0,5,0,153,17,14,21,0,4,22,0,5,11,14,15,210,22,0,6,11,14,21,0,1,31,0,6,15,211,3,2,21,1,4,0,24,0,21,21,1,127,21,1,125,0,23,19,8,8,21,0,2,17,25,21,0,1,21,1,83,21,1,10,21,1,18,8,21,0,2,17,22,0,3,11,14,21,0,3,0,18,21,1,127,7,16,22,0,4,11,21,1,29,21,1,121,7,0,24,17,22,0,5,11,14,21,0,4,21,1,132,21,0,5,17,21,1,129,0,24,17,21,1,29,21,1,122,7,0,24,17,0,5,0,155,17,14,21,0,3,21,1,84,21,1,35,21,1,11,0,24,21,1,132,21,0,5,17,0,17,16,21,1,12,21,1,131,8,8,7,21,0,5,21,1,133,21,0,4,17,17,22,0,6,11,14,21,0,6,21,1,29,21,1,78,7,16,0,5,0,156,17,14,31,0,3,21,1,84,0,24,21,1,5,0,16,0,23,19,3,2,21,1,4,21,1,6,8,7,31,0,4,21,1,128,31,0,5,17,17,21,1,29,21,1,131,7,0,23,17,22,0,7,11,14,21,0,1,21,1,111,21,1,10,21,1,30,8,21,0,2,17,21,1,111,31,0,6,0,16,0,23,17,21,1,30,31,0,7,3,1,17,17,25,21,0,4,22,0,6,11,14,0,23,15,212,0,21,21,1,7,15,213,7,8,21,0,2,17,22,0,7,11,14,21,0,1,21,0,5,21,0,2,17,22,0,8,11,14,15,214,22,0,9,11,14,21,0,1,31,0,9,15,215,3,2,21,1,4,21,0,8,21,1,16,16,8,16,25,21,0,2,21,1,128,16,21,1,128,0,24,17,0,5,0,158,17,14,21,0,2,0,18,21,1,128,7,16,22,0,3,11,21,1,29,21,1,131,7,0,23,17,22,0,4,11,14,21,0,1,21,1,128,16,21,1,130,21,0,4,17,0,5,0,159,17,14,21,0,1,21,1,83,16,21,1,31,21,0,4,17,21,1,132,21,0,2,0,18,21,1,83,7,16,21,1,91,16,17,22,0,5,11,14,21,0,5,21,0,3,21,1,128,0,24,17,21,1,144,21,0,3,17,21,1,12,21,1,130,8,21,1,122,21,1,130,21,1,11,0,23,8,19,16,21,1,29,21,1,122,7,0,24,17,0,5,0,146,17,14,0,23,3,1,21,1,30,31,0,5,17,21,1,35,21,0,3,0,19,21,1,131,7,16,21,1,145,0,23,17,17,21,1,120,31,0,3,17,22,0,6,11,14,21,0,2,0,18,21,1,111,7,16,22,0,2,12,0,18,21,1,127,7,16,21,1,8,21,1,132,7,21,0,6,17,22,0,7,11,14,21,1,7,21,0,1,7,21,1,110,21,0,1,21,1,33,31,0,4,17,21,1,12,21,1,30,8,19,22,0,8,11,14,21,0,7,21,1,29,21,1,124,7,0,24,17,3,1,21,0,8,16,21,1,12,21,1,35,8,22,0,9,11,14,21,0,2,0,16,21,1,11,0,23,8,21,1,10,21,1,112,21,0,9,7,8,21,1,84,21,1,112,21,1,5,7,7,21,1,124,31,0,7,21,1,143,16,21,1,145,0,24,17,0,19,21,1,124,7,16,21,1,143,16,19,21,1,29,0,18,0,18,21,1,131,7,7,7,9,0,18,31,0,9,7,9,3,2,21,1,4,21,1,5,21,1,9,21,1,127,8,21,1,127,0,24,19,8,31,0,6,17,0,1,21,0,2,0,18,0,23,7,16,31,0,8,16,17,25,21,0,2,21,1,128,16,22,0,3,11,14,21,0,1,21,1,128,16,21,1,130,21,0,3,17,0,5,0,160,17,14,21,0,1,21,0,3,21,1,153,21,1,142,21,1,11,21,0,2,21,1,83,16,21,1,120,21,0,1,21,1,83,16,21,1,148,21,1,11,21,1,132,8,21,0,3,17,21,1,131,0,24,17,17,8,8,16,31,0,3,21,1,153,21,1,82,8,21,0,2,17,0,1,0,23,17,25,21,0,2,21,1,128,16,21,1,8,21,1,132,7,0,24,17,22,0,3,11,14,21,0,3,21,1,130,0,23,17,0,5,0,161,17,14,21,0,1,21,1,128,16,21,1,130,31,0,3,17,0,5,0,162,17,14,21,0,1,21,1,151,21,1,11,21,0,2,8,21,1,111,21,1,9,21,1,155,8,21,1,111,21,1,83,19,21,1,12,21,1,84,21,1,18,7,8,9,21,1,10,21,1,151,8,21,0,2,17,25,21,0,2,21,1,128,16,21,1,129,0,24,17,0,5,0,163,17,14,21,0,1,21,1,83,16,21,1,127,21,1,10,21,1,130,8,21,0,2,17,0,5,0,164,17,14,21,0,2,21,1,111,16,0,18,21,1,16,7,16,21,1,29,21,1,122,7,0,24,17,0,5,0,165,17,25,21,0,1,21,1,83,16,21,1,150,21,0,2,17,0,18,21,1,29,21,1,120,7,7,16,21,1,142,16,0,18,21,1,7,21,0,1,7,21,1,69,21,1,35,21,1,11,21,0,2,8,19,7,16,25,21,0,1,21,1,157,21,0,2,17,14,21,0,2,21,1,111,16,22,0,2,12,14,21,0,2,21,1,152,16,21,1,133,16,21,1,29,21,1,131,7,0,23,17,21,1,132,21,0,1,21,1,128,16,17,22,0,3,11,14,21,0,3,21,1,125,21,0,2,17,21,1,29,21,1,122,7,0,24,17,0,5,0,166,17,14,21,0,1,21,1,158,31,0,3,21,1,142,16,21,1,5,21,1,144,21,1,8,21,1,152,21,1,9,21,1,133,8,7,19,21,0,2,17,21,1,30,21,0,2,17,17,25,21,0,1,21,1,157,21,0,2,17,14,21,0,2,21,1,111,16,22,0,2,12,14,21,0,1,21,1,128,16,22,0,3,11,14,21,0,2,21,0,3,21,1,12,21,1,125,8,21,1,122,21,1,152,19,16,21,1,29,21,1,122,7,0,24,17,21,1,170,16,14,21,0,1,21,1,158,31,0,3,21,1,142,16,21,1,5,21,1,144,21,1,8,21,1,152,21,1,9,21,1,133,8,7,19,21,0,2,17,21,1,30,21,0,2,17,21,1,106,16,17,25,21,0,1,21,1,168,16,25,21,0,5,14,21,0,1,21,0,4,21,0,2,17,25,21,0,1,21,1,168,16,21,1,5,15,216,3,2,21,1,4,0,23,21,1,5,21,1,1,21,1,9,0,24,0,16,21,1,11,21,1,7,0,25,7,21,1,132,21,1,127,19,8,21,1,83,21,1,7,21,1,162,7,19,3,2,21,1,4,0,16,21,1,11,0,23,8,21,1,128,0,32,19,8,8,9,3,2,21,1,4,21,1,83,21,1,11,21,1,7,21,1,172,7,8,21,1,122,21,1,83,19,8,8,21,0,1,17,25,21,0,1,21,1,1,16,25,21,0,1,21,1,168,16,25,21,0,2,21,1,12,21,0,1,8,0,21,21,0,2,21,0,1,9,8,25,21,0,1,22,0,3,22,0,4,22,0,5,22,0,6,4,4,11,14,21,1,164,21,1,133,9,22,0,7,11,14,31,0,6,15,217,15,218,21,1,7,21,1,172,7,3,2,21,1,4,21,1,5,21,1,9,21,0,7,8,8,3,2,21,1,4,21,1,6,21,1,9,31,0,7,8,8,31,0,4,17,25,21,0,1,21,1,1,16,25,21,0,1,21,1,177,16,25,21,0,1,21,1,180,16,25,21,0,2,21,0,1,16,25,21,0,1,21,1,183,16,25,21,0,2,21,1,29,21,0,1,7,16,25,21,1,5,21,1,82,21,1,9,21,1,171,8,21,0,1,19,21,1,6,21,1,5,19,25,21,0,1,21,0,4,21,0,2,17,22,0,6,11,14,21,0,6,21,0,5,21,0,2,17,21,1,82,21,0,1,17,21,1,171,16,14,31,0,6,25,21,0,1,21,1,82,16,21,1,128,0,25,17,21,1,170,16,14,21,0,1,0,18,21,1,128,7,16,21,1,128,0,24,17,21,1,29,21,1,122,7,0,24,17,21,1,171,16,14,21,0,1,21,1,169,16,22,0,3,11,14,21,0,3,0,18,21,1,16,7,16,21,1,29,21,1,122,7,0,24,17,21,1,171,16,14,21,0,1,21,1,84,21,1,145,7,0,28,17,21,1,169,16,21,1,126,21,0,3,17,21,1,29,21,1,122,7,0,24,17,21,1,171,16,14,21,0,3,0,3,16,22,0,4,11,14,0,24,21,1,130,21,0,4,17,21,1,29,21,1,122,7,0,24,17,21,1,171,16,14,31,0,4,21,1,133,16,21,1,144,16,22,0,5,11,14,21,0,5,21,1,84,0,28,7,16,21,1,169,21,0,1,21,1,84,21,1,127,7,16,21,1,144,16,17,21,1,35,31,0,5,21,1,169,31,0,3,17,21,1,53,16,17,25,21,0,2,21,1,128,16,21,1,128,0,24,17,21,1,170,16,14,21,0,2,0,18,21,1,16,7,16,21,1,29,21,1,122,7,0,24,17,21,1,170,16,14,21,0,2,21,1,150,16,22,0,3,11,14,21,0,1,21,1,84,21,1,127,7,21,1,10,21,1,82,8,21,0,3,17,21,1,171,16,14,21,0,1,21,1,169,21,1,10,21,1,35,21,1,11,21,1,53,8,8,31,0,3,17,25,21,0,1,21,1,14,16,21,1,171,16,14,21,0,1,21,1,128,16,21,1,128,0,23,17,21,1,171,16,14,21,0,1,21,1,111,16,0,16,0,23,17,25,21,0,2,21,1,128,21,1,10,21,1,132,8,21,0,1,17,22,0,3,11,14,21,0,3,0,24,21,1,12,21,1,130,8,21,1,122,21,1,130,21,1,11,0,23,8,19,16,21,1,171,16,14,21,0,2,0,24,21,1,127,3,2,21,1,4,21,0,3,8,16,22,0,4,11,14,21,0,1,21,1,127,16,21,1,130,21,0,4,17,21,1,171,16,14,21,0,1,21,1,176,21,1,148,21,1,11,21,0,4,8,3,2,21,1,4,31,0,3,8,16,21,1,82,21,0,2,17,21,1,171,16,14,21,0,1,21,1,149,31,0,4,17,25,21,0,1,21,1,127,16,21,1,128,0,25,17,21,1,171,16,14,21,0,1,21,1,176,16,21,1,82,21,0,2,17,21,1,171,16,14,21,0,1,21,1,176,0,24,17,25,21,0,1,21,1,127,16,21,1,128,0,24,17,21,1,171,16,14,21,0,1,21,1,176,16,25,21,0,1,21,1,128,16,21,1,128,0,24,17,21,1,170,16,14,21,0,1,0,18,21,1,16,7,16,21,1,29,21,1,122,7,0,24,17,21,1,170,16,14,21,0,1,21,1,149,21,1,11,0,24,8,21,1,130,21,1,149,21,1,11,0,28,8,19,21,1,29,21,1,122,7,0,24,19,16,21,1,171,16,14,21,0,1,0,3,16,25,21,0,1,21,1,20,21,1,10,21,0,4,21,1,74,0,18,21,0,4,7,8,8,21,0,2,17,25,21,1,5,21,1,9,21,1,82,8,21,1,125,0,23,19,21,1,171,9,21,1,6,21,1,84,21,1,161,21,0,1,7,7,19,25,21,1,5,21,1,9,21,1,82,8,21,1,125,0,23,19,21,1,171,9,21,1,6,0,23,21,1,9,21,1,170,8,0,21,21,1,179,21,1,161,21,0,1,7,7,8,19,25,21,1,5,21,1,9,21,1,128,8,21,1,125,0,23,19,21,1,171,9,21,1,6,21,1,103,21,1,161,21,0,1,7,21,1,5,21,1,11,21,1,14,21,1,9,21,1,171,8,8,9,7,19,25,21,1,84,21,1,161,21,0,1,7,7,25,21,1,5,21,1,9,21,1,128,8,21,1,125,0,23,19,21,1,171,9,21,1,6,21,1,5,21,0,1,21,1,145,19,0,21,21,1,127,21,1,125,0,24,19,21,1,13,21,1,149,21,1,11,0,24,8,21,0,1,21,1,149,21,1,11,0,28,8,19,21,1,169,21,1,176,19,8,8,19,25,21,0,1,21,1,7,15,219,7,3,2,21,1,4,21,1,128,21,1,11,21,1,7,21,1,162,7,8,8,25,21,1,161,21,0,2,7,22,0,3,11,14,21,0,3,21,1,11,21,0,1,8,0,21,31,0,3,8,21,1,161,21,0,1,7,9,25,21,0,1,21,1,182,21,1,161,21,0,2,7,8,25,21,0,1,21,1,181,21,0,2,8,21,1,173,21,0,1,21,1,132,16,21,1,181,21,0,2,8,8,25,21,0,1,21,1,132,16,21,1,181,21,0,2,8,25,21,1,161,21,0,1,7,0,21,21,1,161,21,0,2,7,8,25,21,1,161,21,0,1,7,21,1,11,21,0,2,8,25,21,0,1,0,21,21,1,172,8,25,21,1,161,21,0,2,7,21,1,161,21,0,1,7,9,0,21,21,0,1,21,1,7,0,23,21,1,9,21,1,170,8,7,15,220,3,2,21,1,4,21,1,5,21,1,9,21,1,164,8,8,21,0,2,17,8,25,21,0,1,15,221,21,0,5,21,1,186,21,0,1,21,0,4,21,0,2,17,17,7,21,0,2,17,25,21,1,125,21,1,151,21,0,1,19,21,1,186,9,22,1,2,12,14,21,0,1,21,1,3,3,2,25,21,0,1,25,21,0,1,25,21,0,1,14,21,1,7,21,2,42,16,25,0,24,0,7,21,1,6,17,22,1,6,12,14,21,0,1,0,16,21,1,6,17,25,21,1,8,21,1,7,21,0,1,17,22,1,8,12,25,21,0,1,21,2,2,16,25,21,0,1,21,2,2,16,25,21,0,2,0,14,16,22,0,5,11,14,21,0,2,0,12,16,0,17,16,21,2,29,0,8,21,2,11,21,0,1,0,14,16,21,2,12,0,16,8,0,12,21,0,5,21,2,12,0,16,8,19,8,7,0,24,17,0,5,0,77,17,14,21,0,5,21,2,29,0,8,7,0,24,17,0,17,16,0,18,21,0,1,0,15,16,21,2,12,0,16,8,21,0,4,21,0,2,0,15,16,21,2,12,0,16,8,19,7,16,0,15,31,0,5,17,25,21,0,2,0,14,16,22,0,5,11,14,21,0,2,0,12,16,22,0,6,11,14,21,0,1,0,14,16,22,0,7,11,14,21,0,6,0,17,16,21,2,29,0,8,21,2,11,21,0,7,21,2,12,0,16,8,0,12,31,0,5,21,2,12,0,16,8,19,8,7,0,24,17,0,5,0,78,17,14,21,0,6,0,7,21,0,1,0,12,16,17,0,17,16,21,2,29,0,8,21,2,11,0,6,21,2,11,31,0,6,8,21,2,8,0,16,7,21,0,7,19,8,7,0,24,17,22,0,8,11,14,21,0,2,0,15,16,22,0,9,11,14,21,0,1,0,15,16,22,0,10,11,14,21,0,8,0,17,21,2,10,0,18,21,2,7,31,0,10,7,0,16,0,6,21,2,11,0,8,21,2,11,31,0,8,8,8,19,21,0,4,21,0,9,21,2,12,0,16,8,19,7,8,31,0,9,21,2,27,16,17,0,15,16,0,15,31,0,7,17,25,21,0,1,21,2,44,21,0,4,7,21,0,2,17,25,21,0,1,0,18,15,222,21,0,2,7,7,16,25,21,0,2,0,18,15,223,21,0,1,7,7,16,25,21,2,18,0,16,21,2,21,19,21,2,18,21,2,45,19,22,0,3,11,14,21,0,1,21,2,27,21,2,10,21,0,3,8,21,0,2,17,22,0,4,22,0,5,4,2,11,14,21,0,1,15,224,21,2,10,15,225,8,21,0,2,17,22,0,6,11,14,21,0,4,31,0,6,3,2,25,21,0,2,22,0,3,11,14,21,0,1,22,0,4,11,14,15,226,21,1,6,3,2,21,2,4,0,12,21,2,11,21,1,7,8,8,22,0,5,11,14,0,23,21,0,5,16,25,21,0,1,0,12,21,2,11,0,23,8,21,2,13,21,0,2,8,9,25,21,1,6,0,8,0,25,17,0,13,21,0,1,21,2,29,21,2,24,7,16,22,1,10,12,0,7,21,0,1,21,2,29,21,2,25,7,16,22,1,9,12,17,17,25,21,0,1,14,21,2,8,0,23,7,21,2,23,21,1,7,21,2,48,21,1,8,21,2,12,0,16,8,21,2,10,21,0,4,8,7,16,19,22,0,5,11,14,21,2,5,21,1,6,3,2,21,2,4,0,13,21,2,11,21,1,6,8,8,22,0,6,11,14,0,23,0,12,21,1,6,17,0,6,21,1,6,17,0,2,0,25,17,21,2,25,16,22,0,7,11,0,17,16,0,18,21,2,5,0,6,0,24,19,0,7,31,0,7,19,0,10,0,25,19,7,16,21,2,29,15,227,7,21,1,6,0,17,16,17,25,15,228,22,0,3,11,14,0,28,21,0,3,0,24,0,6,21,0,1,17,17,0,6,0,24,17,25,21,0,2,21,2,51,21,0,1,21,2,12,21,1,13,8,7,16,25,21,0,2,0,12,16,21,2,8,0,7,7,0,24,17,22,0,3,11,14,21,0,3,0,13,0,23,17,0,5,0,83,17,14,21,0,1,0,12,16,0,13,21,0,3,17,0,5,0,84,17,14,21,0,2,21,2,27,16,22,0,4,11,14,21,0,2,21,2,33,0,24,17,22,0,5,11,21,2,29,0,8,7,0,24,17,22,0,6,11,14,21,0,1,0,12,16,21,2,8,0,7,7,31,0,3,17,22,0,7,11,14,21,0,1,0,14,16,21,2,31,21,0,7,17,22,0,8,11,21,2,29,0,8,7,0,24,17,22,0,9,11,14,21,0,1,21,2,20,16,15,229,15,230,3,2,21,2,4,0,23,21,2,33,21,2,11,31,0,7,8,21,2,78,31,0,5,19,3,2,21,2,4,21,0,4,21,2,22,0,23,17,8,8,21,0,2,17,0,15,31,0,8,17,25,21,0,1,0,18,21,2,16,7,16,21,2,29,0,8,7,0,24,17,0,5,0,86,17,14,0,24,0,7,21,1,3,17,22,0,3,11,14,21,2,5,0,7,21,0,3,19,21,2,8,0,16,7,21,1,3,0,17,16,0,18,0,7,21,2,11,21,0,3,8,7,16,0,19,21,2,5,21,2,8,0,16,7,21,0,1,19,0,12,0,23,19,0,8,0,7,19,0,6,21,2,5,19,7,16,19,22,0,4,11,14,21,0,1,0,19,0,6,7,16,21,2,12,0,16,8,22,0,5,11,14,0,23,21,0,4,16,22,0,6,11,21,0,5,16,22,0,7,11,14,31,0,3,21,0,5,16,0,17,16,0,18,15,231,7,16,25,21,0,1,0,7,21,1,3,17,0,17,16,0,18,0,6,21,2,11,21,0,1,8,7,16,25,21,0,1,0,5,21,1,4,19,21,2,6,21,2,5,19,25,21,1,4,0,8,21,0,1,17,0,6,21,0,2,21,2,64,21,0,1,17,17,22,1,4,12,25,21,0,1,0,1,21,0,2,19,25,21,0,2,0,20,21,0,1,21,2,134,21,0,2,17,8,25,21,0,4,22,0,6,11,14,21,0,1,22,0,7,22,0,8,22,0,9,4,3,11,14,21,0,5,21,2,14,21,2,23,31,0,8,19,21,2,13,15,232,21,2,9,21,1,7,8,8,16,31,0,7,21,0,2,17,22,0,10,11,14,31,0,10,31,0,9,21,2,13,15,233,8,16,25,0,23,22,0,3,11,14,21,0,1,15,234,16,22,0,4,11,14,21,0,2,21,2,18,21,2,10,21,2,18,8,21,2,7,21,2,75,7,0,15,21,2,10,21,2,18,8,3,2,21,2,4,21,2,80,8,15,235,3,3,21,2,4,31,0,4,21,2,24,0,25,17,8,21,0,1,17,25,21,0,2,22,0,3,22,0,4,4,2,11,14,15,236,21,2,11,21,0,2,8,22,0,5,11,14,15,237,22,0,6,11,14,15,238,21,2,11,0,23,8,22,0,7,11,14,21,0,1,21,2,7,21,0,4,7,0,16,0,23,19,31,0,7,3,2,21,2,4,21,1,12,21,2,9,21,2,14,8,8,16,25,21,1,6,21,0,1,16,25,21,0,1,0,12,21,2,11,21,1,4,8,0,7,0,24,19,21,2,13,15,239,8,16,14,21,1,5,0,16,0,24,0,6,21,1,3,17,22,1,3,12,17,25,21,0,2,22,0,5,11,14,21,0,4,22,0,6,11,14,21,0,1,0,18,15,240,7,16,25,21,0,2,22,0,3,11,14,21,1,9,0,16,21,0,1,17,22,0,4,11,14,21,1,5,0,18,0,16,21,2,11,21,0,1,8,7,16,22,0,5,11,14,21,0,4,0,17,16,0,18,21,2,7,21,0,5,7,0,16,0,8,21,2,11,21,0,3,8,19,7,16,22,0,6,11,14,31,0,3,0,17,16,0,18,21,2,6,7,21,0,6,17,0,18,21,2,5,7,21,1,10,0,17,16,17,0,15,16,21,2,84,0,12,7,31,0,5,17,21,2,29,0,8,7,0,24,17,0,5,0,105,17,14,21,0,6,21,2,56,16,22,0,7,11,14,21,0,7,21,2,27,16,0,17,16,0,18,21,0,6,21,1,8,0,6,7,0,23,17,21,2,35,21,0,7,17,21,2,12,0,16,8,21,2,12,0,7,8,7,16,22,0,8,11,14,31,0,8,0,18,21,2,5,7,21,1,12,17,21,2,84,0,6,7,21,0,7,0,18,31,0,6,21,2,12,0,16,8,21,2,12,0,8,8,7,21,1,12,17,17,22,1,12,12,14,31,0,7,0,18,0,6,21,2,11,21,0,4,21,2,12,0,8,8,8,7,21,1,11,17,22,1,11,12,14,31,0,4,0,8,22,1,10,13,25,21,0,4,0,16,21,0,1,17,0,16,21,0,2,17,25,21,2,35,21,2,11,21,1,7,0,7,21,1,6,17,0,17,16,0,18,0,6,21,2,11,21,1,7,8,7,16,8,22,0,3,11,14,21,1,5,0,16,0,23,17,21,0,3,16,22,0,4,11,14,21,1,5,0,18,31,0,3,21,2,84,0,12,7,21,0,4,19,21,2,29,0,8,7,9,7,16,21,2,29,0,8,7,0,24,17,0,5,0,106,17,14,21,0,4,21,2,29,0,8,7,16,22,0,5,11,0,17,16,0,15,31,0,4,17,22,0,6,11,14,21,0,6,0,18,21,2,6,7,21,0,1,17,21,1,13,31,0,6,0,18,0,6,21,2,11,0,8,21,2,11,31,0,5,8,8,7,21,0,2,17,17,25,21,2,7,21,2,75,7,21,0,1,3,2,21,2,4,21,0,4,0,7,0,24,19,21,2,10,0,8,0,21,21,2,5,8,8,8,25,21,0,1,15,241,21,0,1,21,0,4,21,0,5,3,3,7,3,2,21,2,4,21,2,5,21,0,2,9,8,25,21,1,0,0,21,21,0,1,8,25,21,0,1,0,21,21,1,0,8,25,21,1,1,21,0,2,7,22,0,3,11,14,21,0,1,21,0,3,15,242,15,243,3,3,21,2,4,21,2,7,0,30,7,0,7,0,0,19,8,16,25,21,0,1,21,1,8,16,22,0,3,11,14,21,0,1,31,0,3,21,0,2,17,25,21,0,1,21,2,1,16,25,21,0,1,21,2,32,0,24,17,0,18,21,2,93,21,2,11,21,2,7,21,0,2,7,8,7,16,25,21,0,2,0,12,16,21,2,21,0,24,17,0,5,21,1,6,17,14,21,0,2,21,2,17,16,22,0,2,12,14,21,0,2,0,18,21,2,15,7,16,21,2,29,0,8,7,0,24,17,0,5,21,1,7,17,14,21,0,2,21,2,27,16,22,0,3,11,14,21,0,1,21,2,83,16,21,2,27,21,2,12,21,2,23,8,21,2,13,15,244,8,21,0,3,17,22,0,4,11,14,15,245,22,0,5,11,14,0,23,21,2,22,16,22,0,6,11,14,0,24,22,0,7,11,14,15,246,22,0,8,11,14,0,23,22,0,9,11,14,21,0,3,0,17,16,0,18,21,0,2,21,2,12,0,16,8,15,247,21,1,4,15,248,7,31,0,8,21,2,6,19,3,2,21,2,4,21,1,3,8,21,0,4,21,2,12,0,16,8,19,7,16,22,0,10,11,14,21,0,1,21,2,20,16,21,2,5,0,20,0,15,21,2,11,21,0,4,8,15,249,3,2,21,2,4,21,0,6,0,12,16,21,2,22,0,23,17,8,8,16,25,21,0,1,21,2,16,16,0,5,0,125,17,14,21,0,1,0,17,16,25,21,0,1,0,12,16,0,12,0,24,17,0,5,0,126,17,14,21,0,1,0,18,21,1,3,7,16,21,2,29,0,18,21,2,30,21,2,11,21,2,18,8,7,7,3,0,21,2,22,16,17,0,1,21,0,1,0,18,0,23,7,16,17,25,21,0,1,0,12,16,0,13,21,1,3,17,0,5,0,128,17,14,21,0,2,0,18,21,2,16,7,16,21,2,29,0,8,7,16,0,5,0,129,17,14,21,0,1,21,2,83,16,22,0,3,11,14,21,1,3,0,17,16,0,18,21,0,2,21,2,12,0,16,8,0,7,21,0,3,21,2,12,0,16,8,19,0,6,0,24,19,7,16,22,0,4,11,14,21,0,4,0,18,0,13,21,2,11,0,23,8,7,16,21,2,29,0,8,7,16,0,5,0,130,17,14,21,0,3,21,2,35,21,1,3,0,7,21,2,11,21,2,27,8,21,0,3,17,0,17,16,0,18,0,6,21,2,11,21,1,3,8,7,16,17,22,0,5,11,21,2,29,0,8,7,0,24,17,22,0,6,11,14,0,24,0,7,21,1,3,17,15,250,16,21,2,30,21,0,6,3,1,17,0,19,0,8,7,16,21,2,60,16,22,0,7,11,14,21,0,2,21,2,5,21,2,84,15,251,7,31,0,7,19,21,2,29,0,18,0,6,7,7,9,21,2,10,0,18,0,6,7,8,31,0,4,17,0,24,21,2,12,0,12,8,0,7,0,24,19,21,2,13,21,2,8,0,17,0,15,31,0,5,19,21,2,12,0,18,0,6,7,8,7,8,31,0,6,17,0,18,21,0,1,0,15,16,21,2,12,0,16,8,7,16,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,131,17,14,21,0,1,21,1,3,21,0,2,17,25,21,0,2,0,12,16,21,2,21,0,24,17,0,5,0,132,17,14,21,0,1,21,2,83,16,21,2,27,21,2,10,0,13,8,21,0,2,17,0,5,0,133,17,14,21,0,2,21,2,27,16,22,0,3,11,14,21,0,2,0,15,16,21,2,12,0,16,8,22,0,4,11,14,21,0,1,21,0,3,21,2,22,0,23,17,21,2,13,15,252,8,0,23,17,25,21,0,2,0,12,21,1,4,17,25,21,1,3,0,6,22,1,4,13,14,21,0,1,0,6,0,24,17,25,21,0,1,21,2,84,21,2,5,0,24,3,2,21,2,4,21,2,6,8,7,21,1,4,17,21,2,29,0,8,7,0,24,17,22,0,3,11,14,21,0,3,21,2,22,0,23,17,0,5,0,139,17,14,21,1,4,21,2,27,16,0,17,16,0,18,0,8,21,2,11,21,1,4,21,2,12,0,16,8,8,7,16,21,2,29,0,6,7,0,23,17,22,0,4,11,14,21,1,3,0,16,31,0,4,17,21,2,109,16,22,0,5,11,14,0,33,21,2,22,21,0,5,17,0,5,0,140,17,14,0,12,21,2,11,21,2,24,8,0,5,0,141,19,21,2,6,21,2,5,19,22,0,6,11,14,21,0,3,0,9,21,1,7,17,31,0,6,21,2,24,21,2,25,3,3,21,2,4,21,0,5,21,2,24,0,25,17,8,16,22,0,7,11,14,21,1,3,21,2,84,21,2,5,21,0,7,3,2,21,2,4,21,2,6,8,7,21,1,4,17,22,1,3,12,14,31,0,7,0,8,31,0,3,17,31,0,5,0,12,0,30,17,21,2,13,21,2,22,21,2,11,21,1,7,8,21,2,13,15,253,8,8,16,25,21,1,8,0,17,16,0,18,21,2,6,7,21,2,11,0,1,21,2,9,21,2,22,8,8,15,254,3,2,21,2,4,21,1,7,21,2,22,0,23,17,8,21,0,1,17,25,21,2,5,21,1,5,21,0,1,0,16,21,0,2,17,19,22,1,5,12,14,21,0,1,21,2,31,21,0,2,17,25,21,0,1,14,21,1,7,0,16,21,1,8,17,21,2,5,0,24,0,6,21,1,8,17,22,1,8,12,17,25,21,0,1,21,2,111,16,21,1,3,16,0,18,21,0,1,21,2,83,16,21,2,101,16,21,2,111,16,21,2,12,21,2,35,8,7,16,25,21,1,4,21,2,32,21,1,3,17,22,0,3,11,21,2,29,0,8,7,0,24,17,22,0,4,11,14,21,0,4,0,17,16,21,2,111,31,0,3,17,21,2,12,0,18,0,6,21,2,11,0,8,21,2,11,31,0,4,8,8,21,2,8,0,16,7,21,0,1,19,7,8,25,0,18,21,0,1,21,2,12,0,16,8,7,25,21,1,9,21,1,7,21,2,131,21,0,4,17,7,22,0,5,11,14,21,0,1,21,2,84,21,0,5,7,21,2,6,21,2,9,0,18,21,0,1,21,2,12,21,0,5,8,7,8,21,2,5,21,2,9,0,18,21,2,5,31,0,5,21,0,2,19,7,8,21,1,8,3,4,21,2,4,21,2,82,21,2,10,21,2,18,8,21,2,129,21,0,4,21,2,121,0,23,17,19,21,2,123,0,23,21,2,129,21,0,4,17,21,2,122,21,1,7,17,19,21,2,110,0,25,19,21,2,29,21,2,131,21,2,11,0,25,21,2,12,21,2,124,8,8,7,9,8,21,0,2,17,25,21,0,1,21,2,83,16,21,2,35,21,0,2,0,17,16,17,22,0,3,11,14,21,0,1,21,2,33,21,0,2,17,22,0,4,11,21,2,29,21,2,124,7,0,24,17,22,0,5,11,14,21,0,5,0,17,16,21,2,111,31,0,4,17,22,0,6,11,14,21,0,1,15,255,0,20,21,2,7,21,0,3,21,2,29,21,2,124,7,0,24,17,0,17,16,0,18,21,2,5,21,2,124,31,0,5,19,21,2,131,21,0,6,19,21,2,8,21,2,35,7,21,0,1,21,2,111,16,19,7,16,21,2,111,31,0,3,17,7,8,16,25,21,0,1,21,2,83,16,21,2,32,0,24,17,22,0,3,11,14,15,256,22,0,4,11,14,21,1,5,21,2,7,21,0,1,7,21,2,111,31,0,4,19,21,2,42,21,2,12,21,2,110,8,3,2,21,2,4,21,2,5,21,2,9,21,2,39,21,2,9,21,2,133,8,8,8,31,0,3,17,25,21,0,1,21,2,103,21,2,125,7,16,21,2,29,21,1,5,7,21,0,2,17,25,15,257,21,2,7,21,0,2,7,7,25,21,2,6,21,0,1,9,25,0,23,22,0,3,11,22,0,4,11,14,21,1,8,21,2,44,15,258,7,16,14,21,0,1,3,1,22,0,5,11,14,15,259,21,2,11,21,1,7,8,22,0,6,11,14,21,0,3,21,0,6,21,1,6,17,22,0,7,11,14,21,0,4,21,2,132,16,21,0,5,31,0,6,21,2,11,21,2,168,8,3,2,21,2,4,21,2,125,21,2,11,0,23,8,8,21,1,6,17,22,0,8,11,14,21,1,8,21,2,44,21,2,7,31,0,7,31,0,8,3,2,7,0,16,0,23,21,2,12,21,2,125,8,19,0,16,21,2,119,19,7,16,25,21,1,8,0,17,16,21,2,29,21,2,5,21,2,9,21,1,6,21,1,7,16,8,7,21,0,1,17,25,21,0,1,21,2,173,21,0,2,8,21,2,162,21,0,1,8,25,21,2,5,21,2,161,21,1,5,7,21,0,2,19,15,260,21,2,161,21,0,1,7,8,25,21,2,5,15,261,21,1,5,7,21,0,1,19,21,2,161,21,0,2,7,9,25,21,0,2,21,2,162,21,0,1,8,25,21,2,5,15,262,21,0,2,7,21,0,1,19,25,21,0,1,25,21,0,1,21,2,2,21,0,4,17,25,21,0,4,21,2,2,21,0,1,17,25,21,1,5,0,17,16,0,18,0,7,21,3,11,21,0,1,21,3,27,16,0,6,0,28,17,8,21,3,8,0,16,7,21,0,1,19,7,16,25,21,0,1,21,3,43,0,12,7,21,0,2,17,0,19,0,8,7,16,21,3,29,0,6,7,0,23,17,22,0,3,11,14,21,0,2,21,3,35,21,3,11,0,17,8,21,0,3,17,21,3,29,0,8,7,0,24,17,22,0,4,11,14,31,0,3,21,3,23,21,3,11,21,1,5,8,21,3,13,21,3,7,21,0,2,21,0,1,3,2,7,0,18,0,16,7,21,3,22,19,21,3,9,15,263,8,8,16,14,21,0,4,25,21,1,4,0,6,21,3,11,21,0,1,8,21,3,10,21,2,5,8,21,1,3,17,0,12,21,3,11,0,23,8,21,3,13,21,0,1,0,6,0,24,17,21,3,9,21,1,5,8,8,16,25,21,0,2,22,0,3,11,0,7,16,22,0,4,11,14,0,23,22,0,5,11,22,0,6,11,22,0,7,11,14,0,30,22,0,8,11,14,21,0,1,0,24,0,12,21,2,7,17,0,7,0,24,17,21,3,13,0,18,0,8,21,3,11,21,2,7,8,7,8,16,21,3,12,0,16,8,21,3,10,21,1,5,8,22,0,9,11,14,21,0,9,0,23,0,24,0,25,3,4,22,0,10,11,14,0,6,15,264,3,2,0,16,21,0,3,0,13,0,31,17,17,22,0,11,11,14,15,265,22,0,12,11,14,15,266,15,267,31,0,12,3,3,21,3,4,15,268,8,22,0,13,11,14,21,0,1,0,18,21,0,1,21,3,12,15,269,8,7,16,25,21,0,1,0,24,21,3,12,21,3,23,8,21,3,13,15,270,8,21,0,2,17,25,21,0,1,14,21,1,9,0,17,16,0,18,21,1,4,0,8,21,2,2,17,7,16,25,21,1,6,21,3,48,21,0,1,0,15,16,21,3,12,0,16,8,21,3,12,21,3,79,0,7,0,24,19,21,3,11,21,0,2,0,15,16,21,3,12,0,16,8,8,8,7,16,22,0,3,11,14,21,0,1,15,271,15,272,3,2,21,3,4,0,15,21,3,9,21,3,27,8,21,3,22,0,31,19,21,3,10,0,8,8,8,21,0,2,17,25,21,1,6,21,1,7,0,12,21,0,1,17,21,3,13,15,273,8,16,25,21,0,1,3,1,3,0,21,3,30,3,2,21,3,4,21,3,6,21,3,14,9,8,21,1,6,17,22,1,6,12,25,21,0,1,21,2,8,21,1,6,8,25,21,0,1,15,274,0,15,21,3,9,0,18,21,0,0,7,8,21,3,29,21,3,25,7,0,23,19,0,6,0,24,19,3,2,21,3,4,21,3,14,8,16,25,15,275,22,0,3,11,14,21,3,18,21,0,3,15,276,3,2,21,3,4,21,3,5,21,3,9,21,3,29,21,3,80,7,8,8,3,2,21,3,4,21,3,5,0,16,0,23,19,21,3,14,9,8,22,0,4,11,14,21,0,2,21,0,1,3,2,21,0,4,0,23,17,22,0,5,11,14,21,1,3,0,17,16,0,18,15,277,7,16,22,0,6,11,14,31,0,6,0,18,0,16,21,3,11,0,24,8,7,21,3,18,0,18,0,16,21,3,11,0,23,8,7,19,21,3,7,21,3,75,7,3,2,21,3,4,31,0,3,0,12,21,0,5,17,8,16,25,21,0,1,21,3,20,16,22,0,1,12,14,21,0,1,0,14,16,22,0,3,11,14,21,0,1,0,15,16,22,0,4,11,21,3,27,16,22,0,5,11,14,21,1,3,0,3,21,0,5,17,22,0,6,11,14,21,1,3,0,4,21,0,6,17,22,0,7,11,14,31,0,7,21,3,12,0,16,8,21,3,8,0,16,7,21,1,4,19,22,0,8,11,14,0,23,22,0,9,11,14,15,278,21,0,8,9,22,0,10,11,14,31,0,8,21,3,12,21,3,79,8,0,5,0,101,19,22,0,11,11,14,31,0,5,0,17,16,0,18,31,0,6,21,3,12,0,16,8,21,3,12,31,0,4,21,3,12,0,16,8,21,0,10,21,3,5,15,279,31,0,10,19,3,3,21,3,4,21,3,24,21,3,11,0,25,8,8,8,7,16,0,15,31,0,3,17,25,21,0,1,21,3,27,16,0,17,16,0,18,21,0,1,21,3,12,0,16,8,21,3,12,21,3,6,0,12,21,0,1,21,0,5,16,19,21,3,13,21,0,4,8,8,7,16,25,21,0,1,0,15,21,3,9,21,3,7,21,2,12,7,0,16,21,0,2,19,21,1,6,21,0,0,21,3,11,21,0,2,0,6,0,24,17,8,8,8,0,15,0,14,19,21,1,5,3,2,21,3,4,21,2,12,21,3,27,16,21,3,21,21,0,2,17,8,16,25,21,0,1,22,2,4,12,21,3,8,0,16,7,21,2,6,17,22,2,5,12,14,0,28,22,2,3,12,25,21,1,5,22,0,3,11,14,21,0,1,21,1,6,22,1,5,13,14,31,0,3,25,21,0,4,21,0,1,21,0,2,17,25,21,0,1,22,0,3,11,14,15,280,25,21,0,1,22,0,3,11,14,15,281,25,21,0,1,21,3,30,21,0,1,21,3,27,16,0,7,21,0,2,17,0,17,21,3,9,0,18,0,24,7,8,16,17,25,21,0,1,0,18,0,6,7,21,0,2,0,18,21,0,4,21,3,12,0,8,8,7,16,17,25,21,0,1,0,24,21,3,12,0,12,8,0,7,0,24,19,21,3,13,21,1,5,21,0,2,7,21,3,11,0,17,8,8,21,1,7,17,21,1,5,21,0,2,0,8,21,1,7,17,7,22,1,6,13,14,0,24,22,1,7,12,14,21,0,1,21,3,27,16,25,21,0,2,0,8,22,1,7,13,14,21,0,2,25,21,0,1,14,0,24,22,1,9,12,25,21,1,3,0,7,21,1,4,21,3,27,16,17,0,17,16,0,18,0,6,21,3,11,21,1,3,8,21,3,8,0,16,7,21,1,4,19,7,16,22,0,3,11,21,3,30,22,1,10,13,14,31,0,3,21,3,29,0,8,7,21,1,7,17,0,12,21,3,11,0,24,8,0,7,0,24,19,21,3,13,15,282,8,16,14,21,0,1,0,15,16,21,3,12,0,16,8,22,0,4,11,14,21,1,9,21,3,5,21,3,13,15,283,8,21,0,1,17,14,21,1,6,0,15,21,1,10,17,0,18,21,0,4,7,16,25,21,0,1,0,17,16,0,18,0,7,21,3,11,21,0,1,8,21,3,8,0,16,7,21,1,3,19,7,16,25,21,0,1,0,17,16,0,18,0,8,21,3,11,21,0,2,8,7,16,25,21,0,1,0,24,0,7,21,1,3,17,21,3,22,21,0,2,17,21,3,13,21,3,103,21,0,0,21,3,11,21,0,2,0,6,0,24,17,8,7,8,16,21,2,3,21,0,2,21,1,4,16,17,25,21,2,7,0,7,21,0,1,17,0,17,16,0,18,21,2,6,0,1,16,7,16,21,3,30,22,2,6,13,14,21,2,7,25,0,28,22,0,3,11,14,0,24,0,7,21,2,7,17,22,0,4,11,14,21,0,1,0,18,15,284,7,16,25,21,1,6,0,18,21,0,1,21,3,125,16,7,16,25,21,0,2,21,3,127,16,21,3,125,0,23,17,0,5,0,154,17,14,21,0,2,21,3,127,16,0,17,16,21,3,125,0,23,17,21,3,124,21,0,2,17,25,21,3,6,21,0,1,21,0,4,19,25,21,0,1,21,3,15,16,0,5,0,157,17,14,21,0,1,21,3,120,21,1,4,17,22,1,4,12,14,21,0,1,21,3,121,21,1,3,17,22,1,3,12,25,21,0,1,0,17,16,21,3,30,21,1,5,17,0,19,21,0,2,7,16,25,21,0,1,21,0,5,16,21,0,4,21,0,2,17,25,21,0,1,21,3,178,16,25,21,0,1,21,3,178,16,25,21,0,1,21,4,29,21,2,3,7,16,22,0,3,22,0,4,4,2,11,14,31,0,3,22,2,4,12,14,31,0,4,0,8,22,1,4,13,25,21,0,1,21,1,8,0,7,0,24,17,21,4,13,21,1,9,0,7,0,24,19,21,4,13,15,285,8,8,0,24,0,7,21,0,1,17,17,25,21,0,2,0,6,21,1,3,17,22,1,4,12,14,21,0,1,0,6,21,1,3,17,22,1,7,12,21,2,6,16,22,1,6,12,0,6,21,1,3,17,21,2,6,16,22,1,5,12,14,21,1,7,0,13,21,3,6,17,22,1,8,12,14,21,1,6,21,1,11,16,14,21,1,7,21,1,13,21,1,4,17,25,21,0,2,0,6,0,24,17,22,1,4,12,0,12,21,1,6,17,0,8,0,25,17,0,6,22,1,8,13,14,21,0,2,25,21,0,1,0,6,0,24,17,22,1,7,12,0,12,21,1,5,17,0,6,22,1,8,13,14,21,0,1,25,21,0,1,21,1,10,21,4,4,21,1,8,8,21,0,2,17,25,21,0,1,0,16,21,1,7,21,1,13,21,1,4,17,17,25,0,25,0,9,21,0,2,17,21,4,24,16,22,0,3,11,0,6,21,0,1,17,22,0,4,11,21,3,2,16,22,0,5,11,14,21,0,1,31,0,4,3,2,0,16,21,0,5,17,21,2,3,21,0,3,0,8,0,25,17,0,7,21,0,2,17,0,8,31,0,5,17,0,6,31,0,3,17,17,25,21,0,1,14,21,2,4,21,2,9,3,2,0,18,0,17,0,18,0,8,21,4,11,21,2,6,8,7,9,7,16,22,0,3,22,0,4,4,2,11,14,31,0,4,0,18,15,286,7,16,25,21,0,2,21,4,54,16,21,4,60,16,22,0,3,11,14,21,0,1,21,4,53,21,0,2,21,4,35,21,0,3,17,17,0,18,0,24,21,4,12,0,7,8,21,4,25,0,23,19,21,4,8,0,16,7,31,0,3,19,7,16,22,0,4,11,14,0,7,21,4,11,0,24,8,0,8,21,4,11,21,2,4,21,4,12,0,7,8,8,0,7,21,4,6,19,3,2,0,16,21,3,2,17,22,0,5,11,14,21,2,9,0,17,16,0,18,0,8,21,4,11,21,2,6,8,21,4,10,21,1,3,8,31,0,5,21,4,6,19,21,4,11,31,0,4,21,4,12,0,16,8,8,7,16,25,0,24,0,6,21,0,1,17,21,2,4,16,22,2,6,12,21,2,5,16,22,2,7,12,14,21,2,6,25,21,0,1,14,0,24,0,6,22,2,3,13,14,0,23,25,21,0,0,0,23,3,2,25,21,0,2,22,0,3,11,14,21,0,1,0,18,0,15,7,16,22,0,4,11,0,16,0,23,17,21,4,27,16,22,0,5,11,14,0,28,22,0,6,11,14,15,287,21,4,12,21,1,4,8,22,0,7,11,14,15,288,25,21,0,1,21,1,5,16,22,0,3,22,0,4,4,2,11,14,31,0,3,22,1,5,12,14,31,0,4,25,0,24,0,7,21,0,1,0,6,22,1,9,13,17,25,0,24,0,7,21,0,1,17,0,17,16,0,18,0,6,21,4,11,21,0,1,0,7,21,1,9,17,8,21,1,11,21,0,2,19,7,16,14,21,0,2,25,0,23,21,4,7,21,1,3,21,0,1,7,7,16,21,2,3,16,25,0,23,21,4,7,21,0,2,21,1,3,21,0,1,8,7,16,21,2,3,16,25,21,0,1,0,17,16,21,2,5,21,0,1,7,22,2,6,13,25,21,4,7,21,0,2,0,1,16,7,21,1,4,3,2,21,4,4,0,13,21,4,11,0,23,8,8,22,1,4,12,25,21,0,1,14,21,3,6,0,16,21,1,4,0,12,21,1,3,17,0,8,21,3,7,17,0,7,0,24,17,0,6,22,1,3,13,17,25,21,0,1,14,0,25,22,2,8,12,14,21,2,4,22,2,7,12,14,21,0,1,22,2,4,12,25,21,1,3,0,18,21,0,1,21,5,12,21,2,3,8,7,16,21,4,3,16,25,21,1,4,0,18,0,16,21,5,11,21,0,1,8,7,16,25,0,24,0,6,22,1,6,13,14,21,1,6,21,1,7,21,5,11,21,5,7,21,0,0,7,8,21,5,7,21,1,3,7,3,2,21,5,4,0,13,21,5,11,21,1,5,8,8,16,22,0,3,11,14,0,23,31,0,3,16,25] - ,provide.concat([0,1,2,Infinity,-Infinity,-1,32,3,8,5,4,'∾','+','-','×','÷','⋆','¬','⌊','⌈','∨','∧','≠','=','>','≥','˙','√','<','⊢','⊣','≍','↑','↓','↕','⌽','⍉','/','⊔','˜','¨','⌜','˘','`','∘','○','⌾','⍟','⊘','⊸','⟜',str("+-×÷⋆√⌊⌈|¬∧∨<>≠=≤≥≡≢⊣⊢⥊∾≍↑↓↕«»⌽⍉/⍋⍒⊏⊑⊐⊒∊⍷⊔!˙˜˘¨⌜⁼´˝`∘○⊸⟜⌾⊘◶⎉⚇⍟⎊%"),str("´: 𝕩 must be a list"),str("´: Identity not found"),str("Mapping: Equal-rank argument shapes don\'t agree"),str("Mapping: Argument shape prefixes don\'t agree"),str("⍋𝕩: 𝕩 must have rank at least 1"),str("⍋ or ⍒: Rank of 𝕨 must be at least 1"),str("⍋ or ⍒: Rank of 𝕩 must be at least cell rank of 𝕨"),str("⍋ or ⍒: 𝕨 must be sorted"),str("p⊐𝕩 or 𝕨∊p: p must have rank at least 1"),str("p⊐n or n∊p: Rank of n must be at least cell rank of p"),str("/: Replication argument must have rank 1"),str("/: Amounts to replicate must be natural numbers"),str("⌽𝕩: 𝕩 must have rank at least 1"),str("𝕨⌽𝕩: 𝕨 must consist of integers"),str("↑𝕩: 𝕩 must have rank at least 1"),str("↓𝕩: 𝕩 must have rank at least 1"),str("𝕨⊑𝕩: Indices in 𝕨 must consist of integers"),str("𝕨⊑𝕩: Index out of range"),str("𝕨⊏𝕩: Indices in 𝕨 must be integers"),str("𝕨⊏𝕩: Indices out of range"),str("𝕨⊑𝕩: 𝕩 must be a list when 𝕨 is a number"),str("𝕨⊑𝕩: Indices in compound 𝕨 must be lists"),str("𝕨⊑𝕩: Index length in 𝕨 must match rank of 𝕩"),str("⊏𝕩: 𝕩 must have rank at least 1"),str("⊏𝕩: 𝕩 cannot have length 0"),str("𝕨⊏𝕩: 𝕨 must be an array"),str("⌾: Incompatible result elements in structural Under"),str(">𝕩: Elements of 𝕩 must have matching shapes"),str("∾𝕩: Elements of 𝕩 must all have the same rank"),str("∾𝕩: 𝕩 element rank must be at least argument rank"),str("∾𝕩: 𝕩 element shapes must be compatible"),str("∾𝕩: 𝕩 element trailing shapes must match"),str("∾𝕩: empty 𝕩 fill rank must be at least argument rank"),str("∾𝕩: 𝕩 must be an array"),str("⊢⊣˜∘○⊸⟜⊘◶"),str("=≠≢"),str("<"),str("≍"),str("↕/»«⊔"),str("⥊↑↓⌽⍉⊏⊑"),str("𝕨"),str("𝕩: 𝕨 must "),str("have rank at most 1"),str("consist of integers"),str("↑"),str("↓"),str("« or »: 𝕩 must have rank at least 1"),str("« or »: 𝕨 must not have higher rank than 𝕩"),str("« or »: Rank of 𝕨 must be at least rank of 𝕩 minus 1"),str("« or »: 𝕨 must share 𝕩\'s major cell shape"),str("↕𝕩: 𝕩 must consist of natural numbers"),str("↕𝕩: 𝕩 must be a number or list"),str("𝕨↕𝕩: 𝕨 must have rank at most 1"),str("𝕨↕𝕩: Length of 𝕨 must be at most rank of 𝕩"),str("𝕨↕𝕩: 𝕨 must consist of natural numbers"),str("𝕨↕𝕩: Window length 𝕨 must be at most axis length plus one"),str("First-axis primitive: 𝕩 must have rank at least 1"),str("Multi-axis primitive: 𝕨 must have rank at most 1"),str("Multi-axis primitive: Length of 𝕨 must be at most rank of 𝕩"),str("𝕨/𝕩: Lengths of components of 𝕨 must match 𝕩"),str("∊𝕩 or ⊐𝕩: 𝕩 must have rank at least 1"),str("∘⌊⌽↑"),str("𝕨⥊𝕩: 𝕨 must have rank at most 1"),str("𝕨⥊𝕩: 𝕨 must consist of natural numbers"),str("𝕨⥊𝕩: Can\'t compute axis length when rest of shape is empty"),str("𝕨⥊𝕩: 𝕨 must consist of natural numbers or ∘ ⌊ ⌽ ↑"),str("𝕨⥊𝕩: Shape must be exact when reshaping with ∘"),str("⊔: Grouping argument must consist of integers"),str("⊔: Grouping argument values cannot be less than ¯1"),str("⊔𝕩: 𝕩 must be a list"),str("𝕨⊔𝕩: Rank of simple 𝕨 must be at most rank of 𝕩"),str("𝕨⊔𝕩: Lengths of 𝕨 must equal to 𝕩, or one more only in a rank-1 component"),str("𝕨⊔𝕩: 𝕩 must be an array"),str("≥: No monadic form"),str("≤: No monadic form"),str("⎉ or ⚇: 𝔽 result must have rank at most 1"),str("⎉ or ⚇: 𝔽 result must have 1 to 3 elements"),str("⎉ or ⚇: 𝔽 result must consist of integers"),str("˝: 𝕩 must have rank at least 1"),str("˝: Identity does not exist"),str("𝕨∾𝕩: Rank of 𝕨 and 𝕩 must differ by at most 1"),str("𝕨∾𝕩: Cell shapes of 𝕨 and 𝕩 must match"),str("⍟: Repetition numbers in 𝕨𝔾𝕩 must be integers"),str("𝕨⊔𝕩: Compound 𝕨 must be a list"),str("𝕨⊔𝕩: Total rank of 𝕨 must be at most rank of 𝕩"),str("⍷𝕩: Rank of 𝕨 cannot exceed rank of 𝕩"),str("⊒: Rank of 𝕨 must be at least 1"),str("⊒: Rank of 𝕩 must be at least cell rank of 𝕨"),str("𝕨⍉𝕩: 𝕨 must have rank at most 1"),str("𝕨⍉𝕩: Length of 𝕨 must not exceed rank of 𝕩"),str("𝕨⍉𝕩: 𝕨 must consist of natural numbers"),str("𝕨⍉𝕩: Skipped result axis"),str("Cannot currently invert blocks"),str("Cannot invert modifier"),str("⁼: Inverse failed"),str("⁼: Inverse does not exist"),str("⁼: Inverse not found")]) - ,[[0,1,0,194],[0,0,4252,3],[0,0,4260,3],[0,0,4264,3],[2,0,4277,6],[0,0,4304,3],[0,0,4308,3],[0,0,4312,3],[1,0,4316,5],[1,0,4324,5],[2,0,4342,6],[2,0,4357,6],[2,0,4376,6],[2,0,4398,6],[2,0,4420,6],[0,0,4452,3],[0,0,4464,3],[0,0,4473,3],[0,0,4479,3],[1,0,4496,9],[0,0,4616,4],[0,0,4692,3],[0,0,4712,3],[0,0,4752,5],[0,0,4827,3],[1,1,4844,2],[2,1,4875,3],[1,1,4909,2],[0,0,4926,4],[2,1,4993,5],[0,0,5030,3],[1,1,5037,4],[1,1,5110,3],[0,0,5188,3],[0,0,5199,4],[1,0,5269,9],[0,0,5342,5],[2,0,5426,12],[1,1,5637,3],[1,0,5661,14],[1,1,6111,4],[0,0,6163,4],[0,0,6217,6],[0,0,6307,3],[0,0,6332,7],[0,0,6461,4],[0,0,6522,4],[0,0,6635,3],[0,0,6703,4],[0,0,6780,6],[0,0,6857,3],[0,0,6899,5],[0,0,7002,3],[0,0,7020,3],[0,0,7070,3],[0,0,7115,4],[2,1,7216,3],[0,0,7259,3],[2,0,7263,16],[0,0,7574,3],[0,0,7601,3],[0,0,7627,3],[0,0,7642,3],[1,0,7671,5],[2,1,7709,3],[0,0,7778,4],[0,0,7883,7],[0,0,7930,14],[0,0,8164,5],[0,0,8261,3],[0,0,8269,6],[0,0,8296,5],[0,0,8317,6],[0,1,8344,10],[1,1,8662,8],[1,0,8715,6],[1,1,8823,2],[0,0,8881,5],[0,0,9043,5],[0,0,9180,7],[0,0,9349,3],[0,0,9408,5],[0,0,9442,4],[1,0,9509,5],[2,1,9526,4],[0,0,9569,5],[0,0,9657,3],[1,0,9690,6],[0,0,9829,9],[1,0,9996,9],[0,0,10153,4],[0,0,10269,8],[0,0,10497,3],[0,0,10542,3],[0,0,10569,3],[0,0,10591,3],[0,0,10613,3],[0,0,10632,3],[1,1,10729,2],[2,0,10798,10],[2,0,10857,8],[1,0,11050,7],[0,0,11117,8],[2,0,11357,10],[0,0,11432,10],[0,0,11862,4],[0,0,11970,4],[0,0,12081,3],[0,0,12157,3],[0,0,12212,4],[0,0,12345,4],[1,1,12467,2],[2,0,12475,6],[1,1,12490,2],[0,0,12605,3],[0,0,12613,3],[0,0,12621,3],[0,0,12642,8],[0,0,12724,3],[0,0,12732,3],[0,0,12740,3],[0,0,12748,3],[0,0,12756,3],[0,0,12764,3],[0,0,12776,3],[2,0,12801,7],[0,0,12842,6],[0,0,13066,4],[0,0,13172,3],[0,0,13215,5],[0,0,13359,3],[0,0,13406,3],[0,0,13432,3],[1,0,13523,5],[0,0,13551,3],[0,0,13587,3],[0,0,13635,3],[0,0,13689,3],[0,0,13701,3],[1,1,13781,2],[0,0,13811,4],[0,0,13848,3],[0,0,13863,3],[0,0,13892,3],[0,0,13907,3],[0,0,13925,3],[0,0,13940,3],[0,0,13950,3],[2,0,14007,6],[0,0,14035,3],[1,1,14063,2],[1,1,14067,2],[0,0,14071,3],[0,0,14083,3],[0,0,14106,3],[0,0,14121,3],[0,0,14129,3],[1,0,14137,6],[1,0,14254,11],[1,0,14475,5],[0,0,14490,3],[0,0,14504,3],[0,0,14518,7],[0,0,14595,6],[0,0,14643,3],[0,0,14663,3],[1,0,14708,8],[0,0,14844,4],[0,0,14871,3],[0,0,14890,10],[0,0,15095,8],[0,0,15262,3],[1,1,15288,2],[0,0,15305,3],[0,0,15332,3],[0,0,15342,3],[2,0,15359,11],[0,0,15436,5],[0,0,15514,8],[0,0,15597,3],[0,0,15605,3],[1,0,15649,7],[0,0,15675,9],[1,0,15961,5],[0,0,15977,7],[1,0,16144,5],[2,0,16181,6],[0,0,16212,3],[0,0,16222,3],[0,0,16232,4],[0,0,16273,4],[0,0,16296,3],[0,0,16304,3],[0,0,16332,11],[0,0,16574,3],[0,0,16594,3],[0,0,16658,8],[0,0,16970,3],[0,0,16998,5],[0,0,17093,3],[0,0,17103,3],[0,0,17122,8],[0,0,17387,3],[0,0,17434,3],[0,0,17466,3],[0,0,17496,3],[0,0,17534,5],[0,0,17608,3],[1,0,17621,6],[0,0,17774,7],[0,0,17916,5],[0,0,17996,3],[0,0,18019,3],[0,0,18030,3],[0,0,18038,9],[0,0,18182,3],[0,0,18211,3],[0,0,18229,3],[0,0,18254,3],[0,0,18276,3],[0,0,18287,3],[1,1,18301,2],[1,0,18305,5],[1,0,18316,5],[0,0,18327,3],[0,0,18366,5],[0,0,18479,3],[0,0,18531,14],[0,0,18701,3],[0,0,18724,3],[0,0,18748,4],[0,0,18840,3],[0,0,18860,3],[0,0,18892,3],[0,0,18903,3],[0,0,18946,7],[0,0,19093,12],[2,0,19291,6],[0,0,19339,3],[0,0,19410,3],[0,0,19439,4],[1,0,19462,5],[0,0,19473,4],[0,0,19484,4],[0,0,19495,3],[1,0,19528,5],[0,0,19554,3],[0,0,19624,3],[0,0,19638,3],[0,0,19649,5],[0,0,19785,3],[0,0,19815,3],[0,0,19835,3],[0,0,19889,3],[0,0,19923,5],[0,0,19953,3],[0,0,19968,3],[1,0,20011,5],[0,0,20022,3],[0,0,20065,3],[2,0,20086,6],[1,1,20101,2],[1,1,20109,2],[0,0,20117,5],[0,0,20156,3],[0,0,20195,3],[0,0,20278,3],[0,0,20312,3],[0,0,20341,3],[0,0,20359,3],[0,0,20376,6],[0,0,20456,5],[0,0,20507,6],[0,0,20662,3],[0,0,20691,3],[0,0,20707,3],[0,0,20715,8],[0,0,20774,5],[0,0,20803,3],[0,0,20818,3],[1,1,20860,2],[2,1,20879,3],[0,0,20901,3],[0,0,20919,3],[0,0,20951,3],[0,0,20988,3],[0,0,21015,3],[0,0,21037,3],[0,0,21054,4]] + [0,74,22,0,0,11,14,15,1,22,0,1,11,14,15,2,22,0,2,11,14,15,3,22,0,3,11,14,15,4,22,0,4,11,14,15,5,22,0,5,11,14,15,6,0,21,15,7,8,22,0,6,11,14,15,8,22,0,7,11,14,15,9,22,0,8,11,14,15,10,22,0,9,11,14,15,11,22,0,10,11,14,15,12,22,0,11,11,14,15,13,22,0,12,11,14,15,14,22,0,13,11,14,0,0,0,12,0,23,19,22,0,14,11,14,0,23,0,12,21,0,11,0,11,8,3,2,21,0,4,0,0,0,12,0,24,19,8,22,0,15,11,14,0,23,0,12,21,0,11,0,11,8,0,8,0,13,21,0,11,0,23,8,19,3,2,21,0,4,0,0,0,12,0,24,19,8,22,0,16,11,14,15,15,0,15,3,2,21,0,4,21,0,14,8,22,0,17,11,14,15,16,0,21,15,17,8,22,0,18,11,14,15,18,22,0,19,11,14,21,0,14,0,7,0,24,19,21,0,13,21,0,19,8,22,0,20,11,14,21,0,8,0,13,7,22,0,21,11,14,21,0,21,0,7,0,24,19,0,21,21,0,19,8,22,0,22,11,14,0,13,0,7,0,24,19,22,0,23,11,14,0,7,0,8,21,0,21,19,0,7,21,0,6,19,0,21,0,11,8,22,0,24,11,14,0,7,0,8,0,13,19,0,7,21,0,6,19,0,21,0,7,21,0,9,21,0,24,21,0,9,0,7,8,8,8,22,0,25,11,14,0,7,21,0,5,3,2,21,0,4,0,13,21,0,11,0,23,8,8,22,0,26,11,14,0,24,0,14,0,16,0,23,19,3,2,21,0,4,0,12,21,0,22,0,23,19,8,22,0,27,11,14,15,19,22,0,28,11,14,31,0,28,22,0,29,11,14,15,20,22,0,30,11,14,15,21,22,0,31,11,14,15,22,22,0,32,11,14,0,14,21,0,12,21,0,32,8,22,0,33,11,14,21,0,5,0,20,15,23,15,24,3,2,21,0,4,21,0,5,21,0,9,0,12,8,0,12,0,24,19,8,8,22,0,34,11,14,31,0,34,22,0,35,11,14,15,25,22,0,36,11,14,15,26,22,0,37,11,14,15,27,22,0,38,11,14,21,0,38,0,34,7,22,0,39,11,14,15,28,22,0,40,11,14,15,29,22,0,41,11,14,0,35,0,23,0,36,0,23,0,37,0,24,0,38,0,24,0,39,0,24,0,40,0,24,0,41,0,26,0,42,0,27,0,43,0,23,0,44,0,24,0,45,0,23,0,46,0,24,0,47,0,23,0,48,0,24,3,28,21,0,41,21,0,7,0,23,7,0,5,0,76,19,8,15,30,9,22,0,42,11,14,15,31,22,0,43,11,14,15,32,22,0,44,11,14,0,13,0,7,21,0,21,19,22,0,45,11,14,0,24,0,15,0,16,0,23,19,21,0,12,0,13,0,8,0,25,19,0,7,0,24,19,15,33,3,2,21,0,4,21,0,5,21,0,9,21,0,14,8,8,8,3,2,21,0,4,21,0,5,21,0,9,0,14,8,21,0,29,0,8,7,0,24,19,21,0,22,0,23,19,8,22,0,46,11,14,15,34,22,0,47,11,14,15,35,22,0,48,11,14,21,0,45,21,0,46,21,0,8,21,0,46,7,0,7,9,3,2,21,0,4,21,0,6,21,0,9,21,0,14,8,8,15,36,3,3,21,0,4,21,0,14,21,0,10,0,6,8,8,22,0,49,11,14,15,37,22,0,50,11,14,15,38,22,0,51,11,14,15,39,22,0,52,11,14,21,0,52,21,0,49,7,0,21,21,0,50,0,23,7,8,22,0,53,11,14,31,0,52,21,0,8,21,0,49,7,7,0,21,31,0,50,0,24,7,8,22,0,54,11,14,15,40,22,0,55,11,14,15,41,22,0,56,11,14,21,0,35,21,0,11,21,0,56,8,22,0,57,11,14,21,0,20,21,0,5,0,20,15,42,8,3,2,21,0,4,0,12,21,0,22,0,23,19,8,22,0,58,11,14,15,43,21,0,13,21,0,5,0,20,15,44,8,8,22,0,59,11,14,15,45,22,0,60,11,14,15,46,22,0,61,11,14,15,47,22,0,62,11,14,15,48,22,0,63,11,14,0,91,0,92,3,2,0,93,0,94,3,2,3,2,0,18,15,49,7,16,22,0,64,22,0,65,4,2,11,14,15,50,22,0,66,11,14,21,0,20,21,0,12,15,51,8,22,0,67,11,14,31,0,67,15,52,3,2,21,0,4,21,0,6,21,0,9,0,15,21,0,9,0,18,21,0,14,7,8,8,21,0,29,0,6,7,0,23,19,21,0,22,0,23,19,8,22,0,68,11,14,31,0,66,21,0,68,3,2,21,0,4,21,0,6,21,0,9,21,0,14,8,8,22,0,69,11,14,15,53,22,0,70,11,14,15,54,22,0,71,11,14,21,0,5,0,15,0,1,0,16,21,0,11,0,23,8,3,2,21,0,4,21,0,27,21,0,22,0,23,19,8,9,3,2,21,0,4,21,0,14,8,22,0,72,11,14,15,55,22,0,73,11,14,15,56,22,0,74,11,14,15,57,22,0,75,11,14,0,23,0,12,21,0,11,21,0,7,21,0,75,7,8,3,2,21,0,4,0,0,0,12,0,29,19,8,22,0,76,11,14,15,58,22,0,77,11,14,21,0,43,0,12,7,21,0,29,0,8,7,0,24,19,22,0,78,11,14,21,0,14,21,0,10,0,12,8,0,23,3,2,21,0,5,21,0,9,21,0,14,8,0,12,3,2,0,12,21,0,10,0,12,8,0,23,3,2,0,14,21,0,10,21,0,78,8,0,23,3,2,15,59,3,5,21,0,29,15,60,7,16,22,0,79,11,14,21,0,5,21,0,14,9,0,12,21,0,10,0,12,8,0,14,21,0,10,21,0,78,8,3,3,21,0,29,15,61,7,16,22,0,80,11,14,0,23,15,62,3,2,21,0,4,21,0,14,8,22,0,81,11,14,21,0,79,0,21,21,0,81,8,22,0,82,11,14,21,0,79,0,7,0,24,19,0,21,3,0,0,14,3,2,21,0,4,21,0,14,8,8,22,0,83,11,14,15,63,22,0,84,11,14,21,0,82,21,0,9,0,5,8,21,0,6,21,0,5,19,22,0,85,11,14,0,15,21,0,9,0,1,0,20,21,0,5,8,21,0,29,21,0,85,0,20,21,0,5,8,7,3,2,21,0,4,21,0,27,21,0,22,0,23,19,8,8,22,0,86,11,14,15,64,22,0,87,11,14,21,0,14,21,0,13,21,0,30,21,0,87,15,65,8,8,22,0,88,11,14,15,66,22,0,89,11,14,15,67,22,0,90,11,14,21,0,14,0,5,0,108,19,21,0,6,15,68,31,0,87,21,0,88,21,0,90,21,0,89,3,2,21,0,4,0,18,0,12,0,12,0,24,19,7,21,0,29,0,8,7,0,24,19,8,31,0,90,3,3,21,0,4,0,12,21,0,24,0,25,19,8,8,19,22,0,91,11,14,21,0,5,21,0,5,21,0,5,21,0,29,15,69,7,9,15,70,15,71,15,72,3,6,21,0,4,21,0,6,8,22,0,92,11,14,15,73,22,0,93,11,14,15,74,22,0,94,11,14,21,0,94,0,119,21,0,26,21,0,12,0,12,8,0,7,0,24,19,15,75,3,3,7,22,0,95,11,14,31,0,94,0,120,0,12,21,0,11,0,23,8,0,7,0,24,19,15,76,3,3,7,22,0,96,11,14,15,77,22,0,97,11,14,15,78,22,0,98,11,14,15,79,22,0,99,11,14,15,80,22,0,100,11,14,15,81,22,0,101,11,14,15,82,22,0,102,11,14,15,83,22,0,103,11,14,15,84,22,0,104,11,14,21,0,5,0,20,21,0,27,0,12,0,23,19,0,7,0,24,19,21,0,104,15,85,15,86,3,2,21,0,4,21,0,6,21,0,9,0,12,8,21,0,22,0,23,19,8,8,8,22,0,105,11,14,0,4,21,0,11,21,0,84,0,24,7,8,22,0,106,11,14,15,87,22,0,107,11,14,21,0,107,21,0,5,0,19,0,6,7,0,28,19,21,0,8,21,0,35,7,21,0,8,21,0,35,21,0,11,21,0,56,8,21,0,9,21,0,53,21,0,9,21,0,106,8,8,7,19,7,22,0,108,11,14,0,32,0,17,16,21,0,37,0,136,8,22,0,109,11,14,15,88,22,0,110,11,14,0,15,0,21,21,0,17,8,22,0,111,11,14,15,89,22,0,112,11,14,15,90,22,0,113,11,14,15,91,21,0,11,21,0,20,8,22,0,114,11,14,15,92,22,0,115,11,14,21,0,44,0,9,7,22,0,116,11,14,21,0,44,0,10,7,22,0,117,11,14,21,0,8,21,0,116,21,0,12,21,0,117,8,7,0,21,0,25,21,0,116,16,21,0,12,21,0,117,8,8,22,0,118,11,14,21,0,44,15,93,0,21,21,0,26,8,7,22,0,119,11,14,21,0,44,15,94,0,21,21,0,24,8,7,22,0,120,11,14,21,0,44,15,95,0,21,0,7,21,0,9,21,0,120,21,0,9,0,7,8,8,8,7,22,0,121,11,14,21,0,44,0,8,7,0,21,21,0,35,21,0,11,21,0,53,8,8,22,0,122,11,14,21,0,44,0,8,0,7,0,6,19,7,0,21,21,0,35,21,0,11,21,0,54,8,8,22,0,123,11,14,21,0,44,0,8,0,21,21,0,23,0,7,21,0,22,19,21,0,11,0,23,8,8,7,22,0,124,11,14,21,0,44,21,0,21,0,7,0,24,19,7,0,21,31,0,19,8,22,0,125,11,14,21,0,44,0,13,0,7,0,24,19,7,0,21,31,0,88,8,22,0,126,11,14,21,0,44,0,12,0,7,0,24,19,7,0,21,21,0,27,8,22,0,127,11,14,21,0,44,0,12,7,0,21,0,12,8,22,0,128,11,14,21,0,44,21,0,21,7,0,21,21,0,7,0,23,7,0,5,0,148,19,8,22,0,129,11,14,21,0,44,0,13,7,0,21,21,0,7,0,23,7,0,5,0,149,19,8,22,0,130,11,14,21,0,44,0,6,7,22,0,131,11,14,21,0,44,0,7,7,22,0,132,11,14,21,0,132,21,0,131,0,24,19,22,0,133,11,14,21,0,6,21,0,128,21,0,128,21,0,127,21,0,82,21,0,83,3,4,19,21,0,29,21,0,131,7,9,21,0,13,15,96,8,22,0,134,11,14,15,97,22,0,135,11,14,15,98,22,0,136,11,14,15,99,22,0,137,11,14,15,100,22,0,138,11,14,15,101,22,0,139,11,14,21,0,85,0,20,21,0,111,21,0,10,21,0,30,8,15,102,3,2,21,0,4,21,0,128,21,0,125,0,24,19,21,0,10,21,0,123,8,8,8,22,0,140,11,14,15,103,22,0,141,11,14,31,0,102,0,21,21,0,101,8,22,0,142,11,14,0,23,21,0,104,31,0,61,8,0,21,21,0,60,8,22,0,143,11,14,31,0,105,0,21,21,0,56,8,22,0,144,11,14,21,0,85,0,21,21,0,5,8,0,20,21,0,98,0,21,31,0,98,21,0,11,21,0,100,8,8,8,22,0,145,11,14,21,0,85,0,21,21,0,5,8,0,20,21,0,99,0,21,31,0,99,21,0,11,31,0,100,8,8,8,22,0,146,11,14,15,104,22,0,147,11,14,31,0,95,0,21,31,0,62,8,22,0,148,11,14,31,0,96,0,21,31,0,63,8,22,0,149,11,14,31,0,115,0,21,31,0,113,8,22,0,150,11,14,21,0,55,0,24,7,0,21,31,0,108,8,22,0,151,11,14,21,0,8,31,0,55,0,23,7,7,0,21,31,0,107,21,0,5,7,8,22,0,152,11,14,21,0,138,22,0,153,11,14,21,0,20,21,0,10,15,105,8,22,0,154,11,14,21,0,53,21,0,9,21,0,53,8,21,0,35,21,0,132,21,0,5,19,21,0,8,21,0,151,7,19,0,1,0,23,19,22,0,155,11,14,15,106,0,1,0,23,19,22,0,156,11,14,15,107,22,0,157,11,14,21,0,5,0,20,15,108,8,22,0,158,11,14,15,109,22,0,159,11,14,15,110,22,0,160,11,14,15,111,22,0,161,11,14,15,112,22,0,162,11,14,15,113,22,0,163,11,14,0,24,21,0,5,15,114,21,0,9,0,23,0,16,21,0,11,21,0,7,0,24,7,21,0,132,21,0,127,19,8,31,0,38,0,49,7,9,3,2,21,0,4,0,16,21,0,11,0,23,8,21,0,128,0,33,19,8,8,9,3,2,21,0,4,0,0,21,0,130,0,29,19,8,22,0,164,11,14,15,115,21,0,10,15,116,8,22,0,165,11,14,15,117,22,0,166,11,14,15,118,21,0,5,0,16,21,0,11,0,24,8,15,119,9,21,0,7,21,0,7,0,23,7,0,5,0,167,19,7,0,16,21,0,11,0,25,8,21,0,165,0,16,21,0,11,0,24,8,19,31,0,166,0,16,21,0,11,0,25,8,15,120,21,0,12,15,121,8,0,16,21,0,11,0,24,8,19,0,16,21,0,11,0,25,8,15,122,21,0,12,15,123,8,21,0,35,21,0,11,0,24,0,29,3,2,8,19,3,6,21,0,4,21,0,6,8,0,16,21,0,11,0,23,8,19,9,22,0,167,11,14,15,124,31,0,167,21,0,7,0,23,7,0,5,0,168,19,3,3,21,0,144,0,29,0,24,0,25,3,3,17,21,0,4,0,0,8,22,0,168,11,14,31,0,140,0,21,21,0,91,8,22,0,169,11,14,0,5,21,0,11,0,169,8,22,0,170,11,14,0,5,21,0,11,0,170,8,22,0,171,11,14,21,0,7,0,23,7,0,5,0,171,19,22,0,172,11,14,15,125,22,0,173,11,14,15,126,22,0,174,11,14,15,127,22,0,175,11,14,21,0,5,0,20,0,24,31,0,104,31,0,71,8,21,0,11,21,0,20,8,0,21,31,0,70,8,8,22,0,176,11,14,0,35,21,0,8,21,0,132,7,0,21,21,0,131,8,0,36,21,0,132,0,37,21,0,8,21,0,116,7,0,21,21,0,124,21,0,173,21,0,5,8,8,0,38,21,0,116,0,39,21,0,44,0,2,7,0,50,21,0,8,21,0,117,7,0,21,21,0,8,21,0,124,7,8,0,44,21,0,8,21,0,116,7,0,21,21,0,122,21,0,173,21,0,5,8,8,0,43,21,0,6,21,0,132,0,24,19,21,0,116,21,0,8,21,0,132,7,19,0,21,21,0,123,21,0,173,21,0,5,8,8,0,40,21,0,133,0,51,0,23,21,0,9,21,0,170,8,0,21,15,128,8,0,52,21,0,5,0,53,21,0,82,21,0,9,21,0,171,8,21,0,6,21,0,5,19,0,21,21,0,5,8,0,34,15,129,0,21,0,23,21,0,9,21,0,170,8,8,0,54,15,130,0,21,15,131,8,0,55,0,23,21,0,9,21,0,170,8,0,21,21,0,148,21,0,173,0,16,21,0,11,0,28,8,8,8,0,56,0,23,21,0,9,21,0,170,8,0,21,21,0,149,21,0,173,0,16,21,0,11,0,23,8,8,8,0,57,0,23,21,0,9,21,0,170,8,0,21,21,0,142,21,0,173,21,0,83,8,8,0,58,21,0,143,21,0,11,21,0,132,8,0,21,21,0,143,8,0,59,31,0,160,0,21,31,0,59,8,0,60,0,23,21,0,9,21,0,170,8,0,21,15,132,8,0,61,31,0,175,0,21,31,0,174,8,3,42,21,0,41,21,0,172,8,22,0,177,11,14,0,35,21,0,8,21,0,132,7,0,21,0,25,21,0,12,21,0,116,8,8,0,36,21,0,131,0,21,0,23,21,0,9,21,0,170,8,8,0,37,21,0,8,21,0,116,7,0,21,21,0,118,8,0,38,21,0,124,0,21,0,23,21,0,9,21,0,170,8,8,0,39,21,0,118,0,21,0,23,21,0,9,21,0,170,8,8,0,50,0,2,21,0,116,9,0,21,0,23,21,0,9,21,0,170,8,8,0,44,21,0,8,21,0,116,7,0,21,21,0,118,8,0,43,21,0,6,21,0,132,0,24,19,21,0,116,21,0,8,21,0,132,7,19,0,21,21,0,133,21,0,9,21,0,118,8,21,0,133,9,8,0,40,21,0,7,0,24,7,21,0,132,21,0,131,19,0,21,0,23,21,0,9,21,0,170,8,8,3,18,21,0,41,21,0,172,8,22,0,178,11,14,15,133,22,0,179,11,14,0,62,21,0,178,0,63,15,134,0,64,15,135,0,65,15,136,0,66,15,137,21,0,9,15,138,8,3,10,21,0,41,21,0,7,21,0,172,7,8,22,0,180,11,14,31,0,141,22,0,181,11,14,31,0,77,22,0,182,11,14,15,139,0,67,31,0,165,0,68,15,140,0,69,15,141,0,70,21,0,7,0,23,21,0,9,21,0,170,8,7,15,142,15,143,3,2,21,0,4,21,0,130,21,0,11,0,23,8,8,3,2,21,0,4,21,0,5,21,0,9,21,0,15,8,8,0,71,15,144,0,72,15,145,15,146,21,0,5,3,2,21,0,4,21,0,6,8,21,0,6,21,0,9,21,0,164,8,19,0,73,15,147,3,14,31,0,41,21,0,7,21,0,172,7,8,7,22,0,183,11,14,31,0,139,22,0,184,11,14,31,0,163,22,0,185,11,14,21,0,69,0,21,31,0,72,8,22,0,186,11,14,15,148,22,0,187,11,14,31,0,137,22,0,188,11,14,21,0,110,0,21,21,0,17,8,22,0,189,11,14,31,0,85,0,21,21,0,5,8,0,20,21,0,18,21,0,9,21,0,126,8,8,22,0,190,11,14,31,0,159,0,21,31,0,58,8,22,0,191,11,14,31,0,156,0,21,21,0,155,8,22,0,192,11,14,31,0,154,0,21,21,0,144,21,0,11,21,0,152,8,8,22,0,193,11,14,21,0,131,21,0,132,21,0,124,21,0,116,31,0,117,31,0,118,21,0,120,21,0,121,21,0,119,21,0,133,21,0,122,21,0,123,21,0,125,21,0,126,21,0,127,21,0,128,21,0,130,21,0,129,21,0,82,21,0,83,21,0,6,21,0,5,31,0,189,21,0,169,31,0,190,21,0,148,21,0,149,21,0,142,31,0,146,21,0,145,21,0,143,31,0,191,21,0,144,21,0,53,21,0,54,21,0,176,21,0,186,21,0,151,31,0,192,21,0,152,31,0,193,21,0,150,0,5,21,0,7,21,0,8,21,0,103,21,0,84,21,0,179,31,0,185,21,0,29,31,0,184,0,19,21,0,9,21,0,10,21,0,11,21,0,12,21,0,182,0,21,31,0,187,21,0,153,31,0,188,21,0,181,0,22,3,63,15,149,16,25,0,23,21,0,1,3,2,25,21,0,1,25,21,0,1,22,1,1,22,1,2,4,2,12,25,21,0,1,15,150,21,0,5,0,16,21,0,1,21,0,4,21,0,2,17,17,7,21,0,2,17,25,21,0,1,25,21,0,2,25,21,0,1,25,21,0,1,14,21,0,4,25,21,0,1,21,1,6,21,0,2,17,21,0,4,21,0,1,17,25,21,0,1,21,0,5,21,0,2,17,21,0,4,16,25,21,0,1,21,0,5,16,21,0,4,21,0,2,21,0,5,16,17,25,21,0,1,21,0,5,21,0,1,21,1,6,21,0,2,17,21,0,4,16,17,25,21,0,1,21,0,5,16,21,0,4,21,0,1,21,1,6,21,0,2,17,17,25,21,0,1,15,151,21,1,5,21,0,4,3,2,0,16,21,0,1,21,0,5,21,0,2,17,17,7,21,0,2,17,25,21,0,1,3,1,0,1,21,0,1,17,25,21,0,2,21,0,1,3,2,25,21,0,1,3,1,25,21,0,1,3,1,0,15,3,0,17,0,1,21,0,1,17,25,21,0,1,0,12,16,0,12,0,24,17,0,5,0,75,17,14,21,0,1,22,0,5,11,21,1,27,16,22,0,6,11,14,21,0,4,22,0,7,11,14,21,0,1,21,1,6,0,21,15,152,15,153,3,2,21,1,4,21,0,6,21,1,22,0,23,17,8,8,21,0,2,17,22,0,8,11,14,21,0,6,0,17,16,0,18,21,1,7,21,0,1,7,0,16,0,7,21,1,11,0,24,0,7,21,0,6,17,8,19,15,154,9,7,16,14,21,0,8,25,21,0,2,21,1,27,16,22,0,3,11,14,21,0,1,21,1,27,16,0,6,21,0,3,17,0,17,16,0,18,21,0,2,21,1,12,0,16,8,21,1,8,21,0,1,7,0,16,21,0,3,21,1,12,0,7,8,19,3,2,21,1,4,0,13,21,1,11,31,0,3,8,8,7,16,25,21,0,2,0,17,16,0,18,21,0,1,21,1,12,0,16,8,7,16,25,21,0,2,0,7,21,0,1,21,1,27,16,17,0,17,16,0,18,21,1,7,21,0,1,7,0,16,0,6,21,1,11,21,0,2,8,19,7,16,25,21,0,1,21,1,33,0,24,17,22,0,3,11,21,1,29,0,8,7,0,24,17,22,0,4,11,14,21,0,4,0,17,16,0,15,31,0,3,17,0,18,0,6,21,1,11,0,8,21,1,11,31,0,4,8,8,21,1,8,0,16,7,21,0,1,0,15,16,19,7,21,0,2,17,25,21,0,2,0,18,21,0,1,21,1,12,0,16,8,7,16,25,21,1,22,0,18,0,12,0,7,0,24,19,7,21,0,1,19,0,19,0,8,7,9,21,1,29,0,6,7,9,25,21,1,7,21,1,0,0,18,21,1,36,21,0,1,7,21,1,8,0,16,7,21,0,2,19,7,16,7,0,16,15,155,19,25,15,156,0,12,21,0,1,21,1,36,21,1,0,7,16,19,25,0,25,0,9,21,0,1,21,1,27,16,17,0,17,16,0,18,0,8,21,1,11,0,25,8,7,16,22,0,3,11,14,21,0,1,21,1,35,21,0,3,17,21,0,1,21,1,35,31,0,3,0,18,0,6,21,1,11,0,24,8,7,16,17,3,2,25,21,0,2,21,1,40,16,22,0,3,22,0,4,4,2,11,14,21,0,1,3,1,21,1,30,31,0,4,17,21,1,37,31,0,3,8,25,0,23,21,0,1,16,25,15,157,22,0,2,11,14,15,158,22,0,3,11,14,21,0,3,21,0,1,7,21,1,8,31,0,3,21,1,8,21,0,1,7,7,7,3,2,21,1,4,0,12,21,1,10,21,1,23,8,8,31,0,2,21,0,1,7,3,2,21,1,4,0,12,21,1,10,0,12,8,8,25,15,159,21,0,1,7,22,0,2,11,14,21,0,1,21,0,2,0,20,15,160,15,161,3,2,21,1,4,21,1,14,21,1,10,21,1,23,8,8,0,21,0,18,21,0,2,7,8,8,21,0,2,0,20,21,1,43,21,0,2,7,8,3,3,21,1,4,21,1,14,21,1,10,0,6,8,8,25,21,0,1,21,1,46,21,0,2,17,25,21,0,1,0,18,21,1,22,21,1,11,0,23,8,7,21,1,29,0,8,7,0,24,19,21,1,10,0,7,8,21,0,2,17,22,0,3,11,14,21,0,1,21,0,3,0,23,3,2,15,162,3,2,21,1,4,0,23,0,12,31,0,3,17,8,21,0,2,17,25,21,0,4,22,0,5,11,14,0,23,21,1,6,21,0,2,17,22,0,6,11,14,21,0,1,22,0,7,11,14,15,163,22,0,8,11,14,31,0,8,21,0,7,0,12,0,24,17,21,1,13,21,1,7,21,0,5,7,15,164,0,21,21,1,5,8,21,0,2,19,8,16,25,21,0,1,0,14,21,1,10,21,1,47,8,21,0,2,17,22,0,3,11,14,31,0,3,21,1,29,21,1,48,21,0,1,0,15,16,21,1,12,0,16,8,21,1,12,21,1,49,21,1,11,21,0,2,0,15,16,21,1,12,0,16,8,8,8,7,7,16,22,0,4,11,14,0,23,21,1,8,31,0,4,7,16,25,21,0,1,22,0,2,11,14,0,13,21,1,7,0,23,7,0,13,21,1,49,19,21,1,45,21,1,49,3,4,21,0,1,21,1,13,0,18,15,165,7,8,16,22,0,3,11,14,15,166,22,0,4,11,14,15,167,25,21,0,1,22,0,2,11,14,21,1,22,21,1,11,0,23,8,21,1,13,15,168,8,25,21,0,2,0,12,16,21,1,8,0,7,7,0,24,17,22,0,5,11,14,21,0,5,0,13,0,23,17,0,5,0,80,17,14,21,0,1,0,12,16,0,13,21,0,5,17,0,5,0,81,17,14,21,0,1,21,1,20,16,22,0,1,12,14,21,0,2,21,1,33,0,24,17,22,0,6,11,21,1,29,0,8,7,0,24,17,22,0,7,11,14,21,0,7,21,1,48,21,0,2,0,15,16,21,1,12,0,16,8,21,1,10,21,0,4,8,7,16,22,0,8,11,14,21,0,2,21,1,27,16,0,24,0,24,21,1,12,0,7,21,1,9,0,17,8,8,0,18,0,8,21,1,11,21,0,7,8,21,1,9,0,6,21,1,11,31,0,7,8,21,1,12,21,1,7,0,23,7,0,13,31,0,8,19,8,8,7,9,21,1,29,0,8,7,0,24,19,3,2,21,1,4,21,1,22,21,1,11,0,23,8,8,16,0,5,0,82,17,14,21,0,1,0,12,16,21,1,8,0,7,7,31,0,5,17,22,0,9,11,14,21,0,1,21,1,33,21,0,9,17,22,0,10,11,14,21,0,10,21,1,47,21,0,6,17,22,0,11,11,14,31,0,11,21,1,29,21,1,48,21,0,1,0,15,16,21,1,12,0,16,8,21,1,12,21,0,4,21,1,11,21,0,2,0,15,16,21,1,12,0,16,8,8,8,7,7,16,22,0,12,11,14,21,1,7,0,23,7,0,13,31,0,12,21,1,11,0,8,21,1,11,31,0,6,21,1,29,0,8,7,0,24,17,8,8,19,22,0,13,11,14,31,0,9,0,17,16,0,18,21,0,1,0,14,16,21,1,12,0,16,8,7,16,21,1,5,21,1,29,0,8,7,0,24,19,0,17,9,21,1,12,0,15,8,16,0,18,0,8,21,1,11,31,0,10,21,1,29,0,8,7,0,24,17,8,7,16,0,18,15,169,21,1,11,21,0,2,21,1,27,16,8,7,16,0,1,0,23,17,25,21,0,1,22,0,2,11,14,21,1,29,0,8,7,0,7,0,24,19,0,19,0,8,7,21,1,29,0,6,7,9,3,2,0,16,21,0,1,17,22,0,3,11,14,15,170,0,1,0,23,19,25,21,0,1,0,12,16,0,12,0,24,17,0,5,0,85,17,14,21,0,1,21,1,27,16,22,0,3,11,14,21,0,1,21,0,3,21,1,22,0,23,17,21,1,13,15,171,8,16,0,1,0,23,17,25,21,0,1,21,1,27,16,22,0,3,11,14,21,0,1,21,1,33,0,24,17,22,0,4,11,21,1,29,0,8,7,0,24,17,22,0,5,11,14,31,0,3,0,17,16,0,18,21,1,7,21,0,1,0,15,16,7,0,16,0,8,21,1,11,21,0,5,8,21,1,12,0,6,8,19,7,31,0,5,0,17,16,0,15,31,0,4,17,17,25,21,0,1,21,1,14,16,21,1,171,16,14,21,0,1,0,12,16,21,1,22,0,23,17,25,21,0,1,0,12,16,21,1,8,0,7,7,0,24,17,22,0,3,11,14,21,0,1,0,14,16,22,0,4,11,14,21,0,4,0,16,21,0,3,17,22,0,5,11,14,31,0,3,0,17,16,0,18,31,0,4,21,1,12,0,16,8,7,16,22,0,6,11,14,21,0,6,21,1,29,0,8,7,0,24,17,0,17,16,0,15,31,0,6,17,0,18,21,1,7,21,0,1,0,15,16,7,0,16,0,8,21,1,11,21,0,5,8,21,1,12,0,6,8,19,7,31,0,5,0,17,16,17,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,87,17,14,21,0,1,21,1,27,16,22,0,3,11,14,21,0,1,21,1,35,21,0,3,0,17,16,0,18,0,7,21,1,11,0,24,0,7,31,0,3,17,8,7,16,17,25,21,0,2,21,1,15,16,0,5,0,88,17,14,21,0,1,21,1,27,16,22,0,3,11,14,0,23,0,12,21,0,3,17,0,6,21,0,3,17,0,9,21,0,2,17,21,1,24,16,0,8,21,0,3,17,0,7,22,0,2,13,14,21,0,1,21,1,35,21,0,3,0,17,16,0,18,21,1,5,0,13,21,0,2,0,7,21,0,3,17,19,0,8,31,0,3,19,0,7,21,1,5,19,0,6,21,0,2,19,7,16,17,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,89,17,14,21,0,1,21,1,27,16,0,6,0,24,17,0,17,16,0,18,21,0,1,21,1,12,21,1,35,21,1,11,0,17,8,8,7,16,0,1,21,1,11,0,16,21,1,11,0,23,8,8,16,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,90,17,14,21,0,1,21,1,27,16,22,0,3,11,14,21,0,3,0,6,0,24,17,0,17,16,0,18,21,0,1,21,1,12,21,1,35,21,1,11,15,172,8,8,7,16,0,1,21,1,11,0,16,21,1,11,21,0,3,8,8,16,25,21,0,1,22,0,3,22,0,4,4,2,11,14,15,173,22,0,5,11,14,21,1,5,21,1,9,21,1,15,8,0,5,31,0,3,19,21,1,6,0,6,21,0,5,0,13,21,1,11,0,23,8,7,9,31,0,5,21,1,23,7,3,2,21,1,4,0,13,21,1,11,0,23,8,8,19,25,21,0,1,0,12,16,0,12,0,24,17,0,5,0,95,17,14,21,0,2,21,1,64,21,0,1,21,1,27,16,17,21,1,8,0,16,7,21,0,1,17,25,21,0,2,0,12,16,0,12,0,24,17,0,5,0,96,17,14,21,0,1,0,14,16,22,0,3,11,21,1,27,21,1,10,0,12,8,21,0,2,17,0,5,0,97,17,14,0,23,22,0,4,11,14,21,0,2,21,1,27,16,0,17,16,0,18,31,0,3,21,1,12,0,16,8,15,174,21,0,2,21,1,12,0,16,8,19,7,16,14,21,0,1,21,1,17,16,0,16,21,0,4,17,25,21,0,2,0,18,21,0,1,21,1,12,21,1,68,8,7,16,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,98,17,14,21,0,1,21,1,27,16,21,1,22,0,23,17,0,5,0,99,17,14,21,0,1,21,1,35,0,23,21,1,22,16,17,25,21,0,2,21,1,14,16,0,5,0,100,17,14,21,0,1,21,1,35,21,1,11,0,18,21,1,65,21,1,11,21,0,1,21,1,27,16,8,7,8,21,0,2,17,25,21,0,1,21,1,1,16,22,0,3,11,14,21,0,3,0,16,0,23,17,0,23,21,1,12,0,13,8,21,0,3,21,1,9,21,1,27,8,21,1,8,0,7,7,0,24,19,0,17,9,21,1,29,0,8,21,1,11,0,6,21,1,11,0,24,8,21,1,8,0,16,7,31,0,3,19,21,0,0,9,8,7,0,24,19,3,2,21,1,4,0,13,21,1,11,0,25,8,8,16,25,21,0,1,15,175,21,1,6,21,1,73,9,21,1,13,15,176,8,3,2,21,1,4,21,1,6,21,1,9,0,0,8,0,13,0,29,19,8,21,0,2,17,25,21,0,1,25,21,0,1,21,0,5,21,1,10,21,0,4,8,21,0,2,17,22,0,6,11,14,21,1,60,21,1,29,21,1,5,21,1,14,9,21,1,13,0,15,21,1,12,0,16,8,8,7,21,0,1,19,0,23,0,14,21,1,5,21,1,29,0,8,7,0,24,19,0,17,9,21,1,12,0,15,8,9,3,2,21,1,4,21,1,14,8,9,22,0,7,11,14,15,177,22,0,8,11,14,21,1,1,0,23,0,16,21,1,11,0,25,8,0,12,21,1,7,21,0,8,7,19,3,2,21,1,4,0,16,21,1,11,0,23,8,0,12,0,32,19,8,9,22,0,9,11,14,21,0,5,21,1,93,21,0,9,17,22,0,10,11,14,0,23,21,0,8,0,28,8,22,0,11,11,14,31,0,11,31,0,10,16,0,23,21,1,75,3,2,21,1,1,21,1,35,0,24,0,29,3,2,19,3,2,21,1,4,31,0,9,8,16,22,0,12,22,0,13,4,2,11,14,21,1,5,21,1,9,21,1,76,8,0,7,0,24,19,21,1,13,15,178,8,22,0,14,11,14,21,1,5,0,20,15,179,8,22,0,15,11,14,31,0,13,31,0,14,21,0,6,17,21,1,7,21,0,1,7,21,1,12,31,0,15,8,21,1,7,21,0,5,7,21,1,168,9,15,180,9,3,2,21,1,4,21,1,76,8,16,25,21,0,1,21,1,43,21,1,79,7,21,0,2,17,0,15,16,21,1,29,0,8,7,0,24,17,25,21,0,2,0,16,0,24,17,21,0,1,3,2,21,1,4,21,0,2,0,16,0,23,17,8,25,0,23,21,0,1,3,2,21,1,4,21,0,2,8,25,21,0,1,0,15,16,0,18,21,1,81,7,16,21,1,29,21,1,25,7,0,23,17,0,6,0,24,17,25,21,0,1,21,1,20,21,1,10,21,0,4,21,1,74,21,1,43,21,0,4,7,0,21,0,18,21,0,4,7,8,8,8,21,0,2,17,25,0,1,21,1,12,21,1,5,0,20,21,1,7,3,0,7,0,15,21,1,83,21,1,10,21,0,2,8,19,8,8,21,1,86,21,1,5,0,20,21,1,6,8,21,0,1,19,3,2,21,1,4,0,15,21,1,9,21,1,27,8,21,1,22,0,23,19,8,25,21,0,1,0,15,16,0,16,0,23,17,21,1,83,16,22,0,3,11,14,21,0,1,0,15,16,0,18,21,1,83,0,23,21,1,78,3,2,21,1,4,21,1,27,21,1,10,0,12,8,8,21,0,3,19,0,5,0,102,19,7,16,14,21,0,3,21,1,29,0,8,7,0,24,17,0,17,16,0,15,31,0,3,17,0,18,21,1,8,0,16,7,7,21,0,1,0,18,21,1,17,7,16,17,25,0,28,22,0,3,11,22,0,4,11,14,3,0,22,0,5,11,14,21,0,1,22,0,6,11,14,21,0,1,0,18,21,1,27,7,16,21,1,56,16,0,18,15,181,7,16,25,21,0,1,0,15,16,22,0,3,11,21,1,27,16,22,0,4,11,14,21,0,3,0,18,21,1,83,7,16,22,0,5,11,14,21,0,5,0,16,0,23,17,21,1,27,16,22,0,6,11,14,21,0,1,0,12,16,22,0,7,11,14,21,0,5,0,18,21,1,27,0,12,21,0,6,19,7,16,21,1,29,0,8,7,0,24,17,0,5,0,103,17,14,21,0,7,21,1,21,21,0,6,17,0,5,0,104,17,14,15,182,22,0,8,11,14,21,0,1,21,1,83,16,22,0,9,11,14,0,24,22,0,10,11,14,0,23,21,1,22,16,22,0,11,11,22,0,12,11,14,21,0,7,0,17,16,21,1,84,15,183,7,21,0,9,21,1,60,16,21,0,8,0,8,7,0,24,17,21,1,60,16,17,14,21,1,84,15,184,31,0,3,0,18,0,15,7,16,7,7,22,0,13,11,14,21,0,11,21,0,13,15,185,3,2,21,1,4,21,0,6,21,1,22,21,0,7,17,8,21,0,12,17,25,21,0,2,21,1,27,16,22,0,3,11,14,21,0,1,21,1,27,16,22,0,4,11,14,21,0,3,21,1,21,21,0,4,17,0,5,0,107,17,14,31,0,4,0,17,16,0,18,21,0,1,21,1,12,0,16,8,21,1,12,0,8,21,1,11,21,0,2,21,1,12,0,16,8,8,21,1,5,3,2,21,1,4,21,1,6,0,13,31,0,3,19,8,8,7,16,25,21,0,1,21,0,2,9,25,21,0,1,22,0,3,22,0,4,22,0,5,4,3,11,14,31,0,5,31,0,4,31,0,3,19,25,21,0,1,22,0,3,22,0,4,4,2,11,14,31,0,4,31,0,3,7,25,21,0,1,22,0,3,22,0,4,22,0,5,4,3,11,14,31,0,5,31,0,4,31,0,3,8,25,21,1,7,21,1,75,7,22,0,0,11,14,15,186,22,0,1,11,14,0,0,21,1,21,0,29,19,21,1,13,21,0,1,21,1,76,7,8,22,0,2,11,14,15,187,22,0,3,11,14,15,188,22,0,4,11,14,15,189,22,0,5,11,14,0,109,21,1,5,0,110,0,23,21,0,3,0,24,8,21,0,4,9,0,111,0,24,21,0,3,0,23,8,21,0,4,9,0,112,0,24,21,0,3,0,24,8,31,0,4,9,0,113,0,24,21,0,3,0,24,8,31,0,5,9,0,114,0,24,31,0,3,0,24,8,3,12,21,1,40,16,22,0,6,22,0,7,4,2,11,14,15,190,3,1,21,1,30,31,0,7,21,1,57,21,1,11,0,18,21,1,27,7,8,21,0,6,17,17,21,1,37,31,0,6,21,1,89,16,8,22,0,8,11,14,15,191,22,0,9,11,14,15,192,21,1,12,21,1,5,0,16,0,24,19,31,0,9,21,1,6,19,21,0,2,9,21,1,7,21,1,7,21,1,75,7,7,15,193,21,1,92,0,16,21,1,11,0,23,8,19,21,1,5,0,16,0,24,19,31,0,2,9,3,4,21,1,4,21,1,5,0,16,0,23,19,21,1,9,0,29,21,1,5,0,25,3,2,21,1,4,0,13,21,1,11,0,25,8,8,3,2,21,1,4,0,13,21,1,11,0,23,8,8,8,8,8,25,21,0,1,22,0,2,22,0,3,22,0,4,4,3,11,14,0,116,21,1,30,31,0,2,17,21,1,30,0,115,17,22,0,5,11,14,0,117,22,0,6,11,14,0,118,22,0,7,11,14,15,194,25,21,0,1,21,1,26,16,22,0,5,11,21,1,22,21,1,11,21,0,2,8,21,1,13,21,0,4,8,16,14,31,0,5,0,17,16,0,18,21,0,1,0,6,21,0,2,17,21,1,12,0,6,8,7,0,18,0,23,21,1,12,21,1,22,8,21,1,13,0,27,8,7,9,0,18,0,13,21,1,11,21,0,2,8,21,1,13,0,27,8,7,3,2,21,1,4,21,0,1,21,1,22,0,23,17,8,16,25,21,0,1,14,0,6,21,1,25,0,23,19,0,17,9,0,7,21,1,25,0,23,19,0,17,9,0,18,0,6,7,21,1,5,21,1,9,21,1,22,8,19,3,2,21,1,4,21,1,22,21,1,11,0,23,8,8,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,121,17,14,21,0,2,0,12,21,1,10,0,7,8,21,0,1,17,22,0,3,11,14,21,0,3,0,13,0,23,17,0,5,0,122,17,14,21,0,3,21,1,21,0,24,17,0,5,0,123,17,14,21,0,1,21,1,33,0,24,17,22,0,4,11,14,21,0,4,21,1,27,16,0,17,16,0,18,21,1,7,21,0,2,21,1,83,16,7,0,16,31,0,3,0,7,0,24,17,21,1,12,0,6,8,19,0,12,21,0,4,21,1,12,0,16,8,19,7,16,21,1,29,0,8,7,0,24,17,0,5,0,124,17,14,31,0,4,21,1,29,0,8,7,0,24,17,25,21,0,1,21,1,97,21,0,2,17,22,0,3,11,14,21,0,2,0,24,21,1,27,3,2,21,1,4,21,1,5,0,12,21,1,10,0,13,8,21,0,1,19,8,16,0,8,21,0,3,17,22,0,4,11,14,21,0,1,21,1,27,16,0,8,31,0,3,17,0,17,16,0,18,21,0,2,21,1,17,16,21,1,12,0,16,8,21,1,7,21,0,1,0,15,16,7,0,16,21,0,4,21,1,12,0,7,8,19,3,2,21,1,4,0,13,21,1,11,31,0,4,8,8,7,16,0,15,21,0,1,21,1,83,16,17,25,21,0,1,21,1,97,21,0,2,17,22,0,3,11,14,21,0,1,21,1,27,16,0,8,21,0,3,17,22,0,4,11,14,21,0,2,0,24,21,1,27,3,2,21,1,4,21,1,5,0,12,21,1,10,0,13,8,21,0,1,19,8,16,0,8,31,0,3,17,22,0,5,11,14,21,0,5,0,7,21,0,4,17,22,0,6,11,14,31,0,4,0,17,16,0,18,21,1,7,21,0,1,0,15,16,7,0,16,31,0,5,21,1,12,0,6,8,19,21,1,7,21,0,2,21,1,17,16,7,0,16,21,0,6,21,1,12,0,7,8,19,3,2,21,1,4,0,13,21,1,11,31,0,6,8,8,7,16,0,15,21,0,1,21,1,83,16,17,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,121,17,14,21,0,1,21,1,33,0,24,17,21,1,5,21,1,29,0,8,7,0,24,19,0,17,9,21,1,12,0,15,8,16,0,18,21,0,1,0,1,16,7,16,25,15,195,22,0,3,11,14,15,196,22,0,4,11,14,21,0,1,21,0,3,31,0,4,3,2,21,1,4,21,1,14,8,16,25,21,0,2,0,12,16,21,1,21,0,24,17,0,5,0,127,17,14,21,0,2,21,1,17,16,22,0,2,12,21,1,27,16,22,0,3,11,14,21,0,1,21,0,3,21,1,22,0,23,17,21,1,13,21,1,5,0,20,15,197,8,8,21,0,2,17,25,21,0,1,0,28,21,1,138,21,0,4,8,21,0,2,17,25,21,0,1,22,0,3,11,14,21,1,20,21,1,12,15,198,15,199,3,2,21,1,4,21,1,6,21,1,9,21,1,82,21,1,22,21,0,2,19,8,8,8,25,21,0,2,21,1,14,21,1,13,0,15,0,16,0,23,19,8,16,22,0,2,12,14,21,0,2,21,1,16,16,0,5,0,86,17,14,21,0,2,22,0,3,11,22,0,4,11,14,21,0,1,21,1,35,21,0,1,21,1,27,16,0,8,21,0,3,17,0,17,16,0,19,21,1,8,15,200,21,1,13,15,201,8,7,7,16,17,25,21,0,1,21,1,27,21,1,10,0,12,8,21,0,2,17,0,5,0,134,17,14,21,0,1,21,1,57,21,0,2,17,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,135,17,14,21,0,1,21,1,53,16,22,0,5,11,14,21,0,1,21,1,27,16,0,17,16,0,18,0,24,21,1,5,21,0,1,0,12,21,1,22,0,24,19,21,1,13,21,1,103,21,1,22,7,8,16,21,1,35,21,0,5,17,21,1,12,0,16,8,21,1,10,21,1,83,8,0,24,21,1,12,0,7,8,19,3,2,21,1,4,21,1,22,21,1,11,0,23,8,8,7,16,21,0,4,21,0,5,17,21,1,35,31,0,5,21,1,106,16,17,0,1,0,23,17,25,21,0,2,0,12,16,21,1,21,0,24,17,0,5,0,137,17,14,21,0,2,21,1,17,16,22,0,3,11,14,21,0,3,0,18,21,1,16,0,7,0,24,19,7,16,22,0,4,11,21,1,29,0,6,7,0,23,17,22,0,5,11,14,21,0,5,21,1,21,0,24,17,0,5,0,138,17,14,21,0,1,21,1,17,16,22,0,6,11,21,1,27,16,22,0,7,11,14,21,0,3,21,1,5,21,1,29,0,8,7,0,24,19,15,202,3,2,21,1,4,31,0,5,8,16,22,0,8,11,14,21,0,6,21,0,7,0,12,21,0,8,17,0,7,0,24,17,21,1,13,21,1,5,0,20,15,203,8,8,16,0,15,21,0,3,17,25,21,0,1,0,18,21,1,15,7,16,21,1,29,0,8,7,0,24,17,0,5,0,142,17,14,21,0,1,0,18,0,13,21,1,11,0,28,8,7,16,21,1,29,0,8,7,0,24,17,0,5,0,143,17,14,0,3,22,0,5,11,14,21,0,1,21,1,6,0,21,0,23,8,21,1,13,21,1,5,15,204,21,1,27,21,1,12,21,1,8,0,7,7,8,19,8,21,0,2,17,22,0,1,12,14,21,0,1,0,4,21,0,1,21,0,5,16,22,0,6,11,17,22,0,7,11,14,0,23,22,0,8,11,14,31,0,6,0,18,0,17,21,1,9,0,18,15,205,7,8,21,0,4,9,7,16,25,21,0,1,0,12,16,0,12,0,24,17,0,5,0,144,17,14,21,1,112,21,1,5,7,22,0,3,11,14,21,0,1,21,0,3,0,1,0,23,21,1,9,0,17,8,19,0,18,15,206,7,21,1,29,0,18,0,18,21,1,30,7,7,7,3,0,21,1,22,16,21,1,22,16,19,0,1,0,18,0,23,7,3,0,21,1,12,21,1,111,8,0,1,21,1,5,19,9,19,3,2,21,1,4,21,1,82,21,1,22,0,24,19,8,16,25,21,0,2,0,12,16,22,0,3,11,14,21,0,1,0,12,16,0,13,21,0,3,17,0,5,0,145,17,14,21,0,1,21,1,83,16,22,0,4,11,21,1,31,21,0,3,17,21,1,84,0,7,7,21,0,2,21,1,83,16,17,22,0,5,11,14,21,0,5,0,23,0,16,21,1,11,0,23,8,0,12,0,24,19,3,2,21,1,4,21,0,3,0,12,0,24,17,8,16,22,0,6,11,14,31,0,5,0,18,0,12,21,1,11,0,23,8,7,21,1,29,0,8,7,0,24,19,0,24,3,2,21,1,4,21,0,6,8,16,0,5,0,146,17,14,21,0,1,21,1,12,21,1,5,0,20,21,1,6,21,1,9,21,0,1,21,1,111,16,15,207,15,208,3,2,21,1,4,21,0,1,0,12,16,0,12,21,0,3,17,8,16,8,8,8,22,0,7,11,14,21,0,2,21,1,111,16,21,1,112,21,0,7,7,31,0,6,17,0,1,3,0,31,0,7,16,17,25,21,0,1,21,1,14,16,0,5,0,147,17,14,21,0,1,21,1,114,21,1,147,3,2,21,1,4,21,0,2,21,1,82,16,0,13,0,25,17,8,21,0,2,17,25,21,0,2,21,1,116,21,0,1,17,21,1,24,16,0,8,21,0,2,17,0,7,21,0,1,17,25,21,0,2,21,0,1,3,2,0,16,21,0,1,21,1,23,21,0,2,17,17,25,21,0,2,21,0,1,3,2,0,16,21,0,1,21,1,22,21,0,2,17,17,25,21,0,1,0,21,21,0,1,0,1,0,23,21,0,2,16,19,8,25,21,0,1,21,1,128,16,21,1,129,0,24,17,0,5,0,150,17,14,21,0,1,21,1,111,16,22,0,1,12,14,21,0,1,21,1,127,16,0,29,21,1,12,21,1,130,8,21,1,122,21,1,130,21,1,11,0,24,8,19,16,0,5,0,151,17,14,21,0,1,0,18,21,1,15,7,16,21,1,29,21,1,122,7,0,24,17,0,5,0,152,17,14,21,0,1,25,21,0,1,21,1,9,21,1,135,8,21,1,5,21,1,9,21,1,125,8,21,1,84,0,16,7,21,1,127,21,1,12,21,1,8,21,1,119,21,1,131,0,24,19,21,1,132,21,1,6,19,7,8,19,0,24,0,23,3,2,0,21,0,25,3,1,8,19,25,21,0,1,21,1,136,21,0,5,7,21,0,2,17,22,0,6,11,21,1,126,0,23,17,22,0,7,11,14,21,0,4,22,0,8,11,14,15,209,22,0,9,11,14,21,0,1,21,0,9,31,0,6,7,21,0,2,17,25,21,0,1,21,1,136,21,0,5,7,21,1,84,21,1,132,21,1,12,21,1,120,8,21,1,132,21,1,121,0,23,19,3,2,21,1,4,21,1,5,21,1,130,0,23,19,8,7,21,1,128,21,1,10,21,1,18,8,19,21,0,2,17,22,0,6,11,14,15,210,22,0,7,11,14,21,1,5,21,1,125,9,21,0,7,21,1,5,0,18,21,1,125,7,9,3,3,21,1,4,21,1,128,21,1,12,21,1,129,8,21,1,131,0,24,19,21,1,124,0,23,21,1,12,21,1,126,8,19,8,22,0,7,12,14,21,0,1,21,0,7,21,0,6,0,16,21,1,11,21,1,127,21,1,8,21,1,132,7,0,24,19,8,16,17,21,1,84,21,0,4,7,21,0,2,31,0,7,31,0,6,0,16,0,23,17,17,17,21,1,126,16,25,21,0,1,21,1,128,16,21,1,130,0,24,17,0,5,0,153,17,14,21,0,4,22,0,5,11,14,15,211,22,0,6,11,14,21,0,1,31,0,6,15,212,3,2,21,1,4,0,24,0,21,21,1,127,21,1,125,0,23,19,8,8,21,0,2,17,25,21,0,1,21,1,83,21,1,10,21,1,18,8,21,0,2,17,22,0,3,11,14,21,0,3,0,18,21,1,127,7,16,22,0,4,11,21,1,29,21,1,121,7,0,24,17,22,0,5,11,14,21,0,4,21,1,132,21,0,5,17,21,1,129,0,24,17,21,1,29,21,1,122,7,0,24,17,0,5,0,155,17,14,21,0,3,21,1,84,21,1,35,21,1,11,0,24,21,1,132,21,0,5,17,0,17,16,21,1,12,21,1,131,8,8,7,21,0,5,21,1,133,21,0,4,17,17,22,0,6,11,14,21,0,6,21,1,29,21,1,78,7,16,0,5,0,156,17,14,31,0,3,21,1,84,0,24,21,1,5,0,16,0,23,19,3,2,21,1,4,21,1,6,8,7,31,0,4,21,1,128,31,0,5,17,17,21,1,29,21,1,131,7,0,23,17,22,0,7,11,14,21,0,1,21,1,111,21,1,10,21,1,30,8,21,0,2,17,21,1,111,31,0,6,0,16,0,23,17,21,1,30,31,0,7,3,1,17,17,25,21,0,4,22,0,6,11,14,0,23,15,213,0,21,21,1,7,15,214,7,8,21,0,2,17,22,0,7,11,14,21,0,1,21,0,5,21,0,2,17,22,0,8,11,14,15,215,22,0,9,11,14,21,0,1,31,0,9,15,216,3,2,21,1,4,21,0,8,21,1,16,16,8,16,25,21,0,2,21,1,128,16,21,1,128,0,24,17,0,5,0,158,17,14,21,0,2,0,18,21,1,128,7,16,22,0,3,11,21,1,29,21,1,131,7,0,23,17,22,0,4,11,14,21,0,1,21,1,128,16,21,1,130,21,0,4,17,0,5,0,159,17,14,21,0,1,21,1,83,16,21,1,31,21,0,4,17,21,1,132,21,0,2,0,18,21,1,83,7,16,21,1,91,16,17,22,0,5,11,14,21,0,5,21,0,3,21,1,128,0,24,17,21,1,144,21,0,3,17,21,1,12,21,1,130,8,21,1,122,21,1,130,21,1,11,0,23,8,19,16,21,1,29,21,1,122,7,0,24,17,0,5,0,146,17,14,0,23,3,1,21,1,30,31,0,5,17,21,1,35,21,0,3,0,19,21,1,131,7,16,21,1,145,0,23,17,17,21,1,120,31,0,3,17,22,0,6,11,14,21,0,2,0,18,21,1,111,7,16,22,0,2,12,0,18,21,1,127,7,16,21,1,8,21,1,132,7,21,0,6,17,22,0,7,11,14,21,1,7,21,0,1,7,21,1,110,21,0,1,21,1,33,31,0,4,17,21,1,12,21,1,30,8,19,22,0,8,11,14,21,0,7,21,1,29,21,1,124,7,0,24,17,3,1,21,0,8,16,21,1,12,21,1,35,8,22,0,9,11,14,21,0,2,0,16,21,1,11,0,23,8,21,1,10,21,1,112,21,0,9,7,8,21,1,84,21,1,112,21,1,5,7,7,21,1,124,31,0,7,21,1,143,16,21,1,145,0,24,17,0,19,21,1,124,7,16,21,1,143,16,19,21,1,29,0,18,0,18,21,1,131,7,7,7,9,0,18,31,0,9,7,9,3,2,21,1,4,21,1,5,21,1,9,21,1,127,8,21,1,127,0,24,19,8,31,0,6,17,0,1,21,0,2,0,18,0,23,7,16,31,0,8,16,17,25,21,0,2,21,1,128,16,22,0,3,11,14,21,0,1,21,1,128,16,21,1,130,21,0,3,17,0,5,0,160,17,14,21,0,1,21,0,3,21,1,153,21,1,142,21,1,11,21,0,2,21,1,83,16,21,1,120,21,0,1,21,1,83,16,21,1,148,21,1,11,21,1,132,8,21,0,3,17,21,1,131,0,24,17,17,8,8,16,31,0,3,21,1,153,21,1,82,8,21,0,2,17,0,1,0,23,17,25,21,0,2,21,1,128,16,21,1,8,21,1,132,7,0,24,17,22,0,3,11,14,21,0,3,21,1,130,0,23,17,0,5,0,161,17,14,21,0,1,21,1,128,16,21,1,130,31,0,3,17,0,5,0,162,17,14,21,0,1,21,1,151,21,1,11,21,0,2,8,21,1,111,21,1,9,21,1,155,8,21,1,111,21,1,83,19,21,1,12,21,1,84,21,1,18,7,8,9,21,1,10,21,1,151,8,21,0,2,17,25,21,0,2,21,1,128,16,21,1,129,0,24,17,0,5,0,163,17,14,21,0,1,21,1,83,16,21,1,127,21,1,10,21,1,130,8,21,0,2,17,0,5,0,164,17,14,21,0,2,21,1,111,16,0,18,21,1,16,7,16,21,1,29,21,1,122,7,0,24,17,0,5,0,165,17,25,21,0,1,21,1,83,16,21,1,150,21,0,2,17,0,18,21,1,29,21,1,120,7,7,16,21,1,142,16,0,18,21,1,7,21,0,1,7,21,1,69,21,1,35,21,1,11,21,0,2,8,19,7,16,25,21,0,1,21,1,157,21,0,2,17,14,21,0,2,21,1,111,16,22,0,2,12,14,21,0,2,21,1,152,16,21,1,133,16,21,1,29,21,1,131,7,0,23,17,21,1,132,21,0,1,21,1,128,16,17,22,0,3,11,14,21,0,3,21,1,125,21,0,2,17,21,1,29,21,1,122,7,0,24,17,0,5,0,166,17,14,21,0,1,21,1,158,31,0,3,21,1,142,16,21,1,5,21,1,144,21,1,8,21,1,152,21,1,9,21,1,133,8,7,19,21,0,2,17,21,1,30,21,0,2,17,17,25,21,0,1,21,1,157,21,0,2,17,14,21,0,2,21,1,111,16,22,0,2,12,14,21,0,1,21,1,128,16,22,0,3,11,14,21,0,2,21,0,3,21,1,12,21,1,125,8,21,1,122,21,1,152,19,16,21,1,29,21,1,122,7,0,24,17,21,1,170,16,14,21,0,1,21,1,158,31,0,3,21,1,142,16,21,1,5,21,1,144,21,1,8,21,1,152,21,1,9,21,1,133,8,7,19,21,0,2,17,21,1,30,21,0,2,17,21,1,106,16,17,25,21,0,1,21,1,168,16,25,21,0,5,14,21,0,1,21,0,4,21,0,2,17,25,21,0,1,21,1,168,16,21,1,5,15,217,3,2,21,1,4,0,23,21,1,5,21,1,1,21,1,9,0,24,0,16,21,1,11,21,1,7,0,25,7,21,1,132,21,1,127,19,8,21,1,83,21,1,7,21,1,162,7,19,3,2,21,1,4,0,16,21,1,11,0,23,8,21,1,128,0,32,19,8,8,9,3,2,21,1,4,21,1,83,21,1,11,21,1,7,21,1,172,7,8,21,1,122,21,1,83,19,8,8,21,0,1,17,25,21,0,1,21,1,1,16,25,21,0,1,21,1,168,16,25,21,0,2,21,1,12,21,0,1,8,0,21,21,0,2,21,0,1,9,8,25,21,0,1,22,0,3,22,0,4,22,0,5,22,0,6,4,4,11,14,21,1,164,21,1,133,9,22,0,7,11,14,31,0,6,15,218,15,219,21,1,7,21,1,172,7,3,2,21,1,4,21,1,5,21,1,9,21,0,7,8,8,3,2,21,1,4,21,1,6,21,1,9,31,0,7,8,8,31,0,4,17,25,21,0,1,21,1,1,16,25,21,0,1,21,1,177,16,25,21,0,1,21,1,180,16,25,21,0,2,21,0,1,16,25,21,0,1,21,1,183,16,25,21,0,2,21,1,29,21,0,1,7,16,25,21,1,5,21,1,82,21,1,9,21,1,171,8,21,0,1,19,21,1,6,21,1,5,19,25,21,0,1,21,0,4,21,0,2,17,22,0,6,11,14,21,0,6,21,0,5,21,0,2,17,21,1,82,21,0,1,17,21,1,171,16,14,31,0,6,25,21,0,1,21,1,82,16,21,1,128,0,25,17,21,1,170,16,14,21,0,1,0,18,21,1,128,7,16,21,1,128,0,24,17,21,1,29,21,1,122,7,0,24,17,21,1,171,16,14,21,0,1,21,1,169,16,22,0,3,11,14,21,0,3,0,18,21,1,16,7,16,21,1,29,21,1,122,7,0,24,17,21,1,171,16,14,21,0,1,21,1,84,21,1,145,7,0,28,17,21,1,169,16,21,1,126,21,0,3,17,21,1,29,21,1,122,7,0,24,17,21,1,171,16,14,21,0,3,0,3,16,22,0,4,11,14,0,24,21,1,130,21,0,4,17,21,1,29,21,1,122,7,0,24,17,21,1,171,16,14,31,0,4,21,1,133,16,21,1,144,16,22,0,5,11,14,21,0,5,21,1,84,0,28,7,16,21,1,169,21,0,1,21,1,84,21,1,127,7,16,21,1,144,16,17,21,1,35,31,0,5,21,1,169,31,0,3,17,21,1,53,16,17,25,21,0,2,21,1,128,16,21,1,128,0,24,17,21,1,170,16,14,21,0,2,0,18,21,1,16,7,16,21,1,29,21,1,122,7,0,24,17,21,1,170,16,14,21,0,2,21,1,150,16,22,0,3,11,14,21,0,1,21,1,84,21,1,127,7,21,1,10,21,1,82,8,21,0,3,17,21,1,171,16,14,21,0,1,21,1,169,21,1,10,21,1,35,21,1,11,21,1,53,8,8,31,0,3,17,25,21,0,1,21,1,14,16,21,1,171,16,14,21,0,1,21,1,128,16,21,1,128,0,23,17,21,1,171,16,14,21,0,1,21,1,111,16,0,16,0,23,17,25,21,0,2,21,1,128,21,1,10,21,1,132,8,21,0,1,17,22,0,3,11,14,21,0,3,0,24,21,1,12,21,1,130,8,21,1,122,21,1,130,21,1,11,0,23,8,19,16,21,1,171,16,14,21,0,2,0,24,21,1,127,3,2,21,1,4,21,0,3,8,16,22,0,4,11,14,21,0,1,21,1,127,16,21,1,130,21,0,4,17,21,1,171,16,14,21,0,1,21,1,176,21,1,148,21,1,11,21,0,4,8,3,2,21,1,4,31,0,3,8,16,21,1,82,21,0,2,17,21,1,171,16,14,21,0,1,21,1,149,31,0,4,17,25,21,0,1,21,1,127,16,21,1,128,0,25,17,21,1,171,16,14,21,0,1,21,1,176,16,21,1,82,21,0,2,17,21,1,171,16,14,21,0,1,21,1,176,0,24,17,25,21,0,1,21,1,127,16,21,1,128,0,24,17,21,1,171,16,14,21,0,1,21,1,176,16,25,21,0,1,21,1,128,16,21,1,128,0,24,17,21,1,170,16,14,21,0,1,0,18,21,1,16,7,16,21,1,29,21,1,122,7,0,24,17,21,1,170,16,14,21,0,1,21,1,149,21,1,11,0,24,8,21,1,130,21,1,149,21,1,11,0,28,8,19,21,1,29,21,1,122,7,0,24,19,16,21,1,171,16,14,21,0,1,0,3,16,25,21,0,1,21,1,20,21,1,10,21,0,4,21,1,74,0,18,21,0,4,7,8,8,21,0,2,17,25,21,1,5,21,1,9,21,1,82,8,21,1,125,0,23,19,21,1,171,9,21,1,6,21,1,84,21,1,161,21,0,1,7,7,19,25,21,1,5,21,1,9,21,1,82,8,21,1,125,0,23,19,21,1,171,9,21,1,6,0,23,21,1,9,21,1,170,8,0,21,21,1,179,21,1,161,21,0,1,7,7,8,19,25,21,1,5,21,1,9,21,1,128,8,21,1,125,0,23,19,21,1,171,9,21,1,6,21,1,103,21,1,161,21,0,1,7,21,1,5,21,1,11,21,1,14,21,1,9,21,1,171,8,8,9,7,19,25,21,1,84,21,1,161,21,0,1,7,7,25,21,1,5,21,1,9,21,1,128,8,21,1,125,0,23,19,21,1,171,9,21,1,6,21,1,5,21,0,1,21,1,145,19,0,21,21,1,127,21,1,125,0,24,19,21,1,13,21,1,149,21,1,11,0,24,8,21,0,1,21,1,149,21,1,11,0,28,8,19,21,1,169,21,1,176,19,8,8,19,25,21,0,1,21,1,7,15,220,7,3,2,21,1,4,21,1,128,21,1,11,21,1,7,21,1,162,7,8,8,25,21,1,161,21,0,2,7,22,0,3,11,14,21,0,3,21,1,11,21,0,1,8,0,21,31,0,3,8,21,1,161,21,0,1,7,9,25,21,0,1,21,1,182,21,1,161,21,0,2,7,8,25,21,0,1,21,1,181,21,0,2,8,21,1,173,21,0,1,21,1,132,16,21,1,181,21,0,2,8,8,25,21,0,1,21,1,132,16,21,1,181,21,0,2,8,25,21,1,161,21,0,1,7,0,21,21,1,161,21,0,2,7,8,25,21,1,161,21,0,1,7,21,1,11,21,0,2,8,25,21,0,1,0,21,21,1,172,8,25,21,1,161,21,0,2,7,21,1,161,21,0,1,7,9,0,21,21,0,1,21,1,7,0,23,21,1,9,21,1,170,8,7,15,221,3,2,21,1,4,21,1,5,21,1,9,21,1,164,8,8,21,0,2,17,8,25,21,0,1,15,222,21,0,5,21,1,186,21,0,1,21,0,4,21,0,2,17,17,7,21,0,2,17,25,21,1,125,21,1,151,21,0,1,19,21,1,186,9,22,1,2,12,14,21,0,1,21,1,3,3,2,25,21,0,1,25,21,0,1,25,21,0,1,14,21,1,7,21,2,42,16,25,0,24,0,7,21,1,6,17,22,1,6,12,14,21,0,1,0,16,21,1,6,17,25,21,1,8,21,1,7,21,0,1,17,22,1,8,12,25,21,0,1,21,2,2,16,25,21,0,1,21,2,2,16,25,21,0,2,0,14,16,22,0,5,11,14,21,0,2,0,12,16,0,17,16,21,2,29,0,8,21,2,11,21,0,1,0,14,16,21,2,12,0,16,8,0,12,21,0,5,21,2,12,0,16,8,19,8,7,0,24,17,0,5,0,77,17,14,21,0,5,21,2,29,0,8,7,0,24,17,0,17,16,0,18,21,0,1,0,15,16,21,2,12,0,16,8,21,0,4,21,0,2,0,15,16,21,2,12,0,16,8,19,7,16,0,15,31,0,5,17,25,21,0,2,0,14,16,22,0,5,11,14,21,0,2,0,12,16,22,0,6,11,14,21,0,1,0,14,16,22,0,7,11,14,21,0,6,0,17,16,21,2,29,0,8,21,2,11,21,0,7,21,2,12,0,16,8,0,12,31,0,5,21,2,12,0,16,8,19,8,7,0,24,17,0,5,0,78,17,14,21,0,6,0,7,21,0,1,0,12,16,17,0,17,16,21,2,29,0,8,21,2,11,0,6,21,2,11,31,0,6,8,21,2,8,0,16,7,21,0,7,19,8,7,0,24,17,22,0,8,11,14,21,0,2,0,15,16,22,0,9,11,14,21,0,1,0,15,16,22,0,10,11,14,21,0,8,0,17,21,2,10,0,18,21,2,7,31,0,10,7,0,16,0,6,21,2,11,0,8,21,2,11,31,0,8,8,8,19,21,0,4,21,0,9,21,2,12,0,16,8,19,7,8,31,0,9,21,2,27,16,17,0,15,16,0,15,31,0,7,17,25,21,0,1,21,2,44,21,0,4,7,21,0,2,17,25,21,0,1,0,18,15,223,21,0,2,7,7,16,25,21,0,2,0,18,15,224,21,0,1,7,7,16,25,21,2,18,0,16,21,2,21,19,21,2,18,21,2,45,19,22,0,3,11,14,21,0,1,21,2,27,21,2,10,21,0,3,8,21,0,2,17,22,0,4,22,0,5,4,2,11,14,21,0,1,15,225,21,2,10,15,226,8,21,0,2,17,22,0,6,11,14,21,0,4,31,0,6,3,2,25,21,0,2,22,0,3,11,14,21,0,1,22,0,4,11,14,15,227,21,1,6,3,2,21,2,4,0,12,21,2,11,21,1,7,8,8,22,0,5,11,14,0,23,21,0,5,16,25,21,0,1,0,12,21,2,11,0,23,8,21,2,13,21,0,2,8,9,25,21,2,8,21,0,1,7,25,21,0,2,0,12,0,24,17,0,7,0,24,17,22,0,3,11,14,21,0,1,0,18,21,2,14,7,16,21,2,29,0,6,7,0,23,17,21,2,22,0,23,17,22,0,4,11,14,21,1,3,0,16,21,0,3,0,8,0,25,17,0,6,31,0,4,17,17,15,228,21,0,1,7,16,31,0,3,21,2,13,15,229,8,21,0,2,17,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,79,17,14,21,0,1,21,2,27,16,22,0,3,11,14,21,0,1,21,2,33,0,24,17,21,2,29,0,8,7,0,24,17,22,0,4,11,14,21,0,1,0,15,16,22,0,1,12,14,15,230,22,0,5,11,14,0,23,22,0,6,11,22,0,7,11,14,15,231,22,0,8,11,14,21,0,1,0,23,0,18,21,2,15,7,21,2,29,0,8,7,0,24,19,3,2,21,2,4,21,0,3,21,2,22,0,31,17,0,8,0,24,0,12,21,0,4,17,17,8,16,21,2,5,21,2,13,21,0,1,21,2,9,15,232,8,8,16,22,0,9,11,14,21,0,1,31,0,5,31,0,8,3,2,21,2,4,31,0,9,8,16,0,1,0,23,17,25,15,233,22,0,3,11,14,0,28,21,0,3,0,24,0,6,21,0,1,17,17,0,6,0,24,17,25,21,0,2,21,2,51,21,0,1,21,2,12,21,1,13,8,7,16,25,21,0,2,0,12,16,21,2,8,0,7,7,0,24,17,22,0,3,11,14,21,0,3,0,13,0,23,17,0,5,0,83,17,14,21,0,1,0,12,16,0,13,21,0,3,17,0,5,0,84,17,14,21,0,2,21,2,27,16,22,0,4,11,14,21,0,2,21,2,33,0,24,17,22,0,5,11,21,2,29,0,8,7,0,24,17,22,0,6,11,14,21,0,1,0,12,16,21,2,8,0,7,7,31,0,3,17,22,0,7,11,14,21,0,1,0,14,16,21,2,31,21,0,7,17,22,0,8,11,21,2,29,0,8,7,0,24,17,22,0,9,11,14,21,0,1,21,2,20,16,15,234,15,235,3,2,21,2,4,0,23,21,2,33,21,2,11,31,0,7,8,21,2,78,31,0,5,19,3,2,21,2,4,21,0,4,21,2,22,0,23,17,8,8,21,0,2,17,0,15,31,0,8,17,25,21,0,1,0,18,21,2,16,7,16,21,2,29,0,8,7,0,24,17,0,5,0,86,17,14,0,24,0,7,21,1,3,17,22,0,3,11,14,21,2,5,0,7,21,0,3,19,21,2,8,0,16,7,21,1,3,0,17,16,0,18,0,7,21,2,11,21,0,3,8,7,16,0,19,21,2,5,21,2,8,0,16,7,21,0,1,19,0,12,0,23,19,0,8,0,7,19,0,6,21,2,5,19,7,16,19,22,0,4,11,14,21,0,1,0,19,0,6,7,16,21,2,12,0,16,8,22,0,5,11,14,0,23,21,0,4,16,22,0,6,11,21,0,5,16,22,0,7,11,14,31,0,3,21,0,5,16,0,17,16,0,18,15,236,7,16,25,21,0,1,0,7,21,1,3,17,0,17,16,0,18,0,6,21,2,11,21,0,1,8,7,16,25,21,0,1,0,5,21,1,4,19,21,2,6,21,2,5,19,25,21,1,4,0,8,21,0,1,17,0,6,21,0,2,21,2,64,21,0,1,17,17,22,1,4,12,25,21,0,1,0,1,21,0,2,19,25,21,0,2,0,20,21,0,1,21,2,134,21,0,2,17,8,25,21,0,4,22,0,6,11,14,21,0,1,22,0,7,22,0,8,22,0,9,4,3,11,14,21,0,5,21,2,14,21,2,23,31,0,8,19,21,2,13,15,237,21,2,9,21,1,7,8,8,16,31,0,7,21,0,2,17,22,0,10,11,14,31,0,10,31,0,9,21,2,13,15,238,8,16,25,0,23,22,0,3,11,14,21,0,1,15,239,16,22,0,4,11,14,21,0,2,21,2,18,21,2,10,21,2,18,8,21,2,7,21,2,75,7,0,15,21,2,10,21,2,18,8,3,2,21,2,4,21,2,80,8,15,240,3,3,21,2,4,31,0,4,21,2,24,0,25,17,8,21,0,1,17,25,21,0,2,22,0,3,22,0,4,4,2,11,14,15,241,21,2,11,21,0,2,8,22,0,5,11,14,15,242,22,0,6,11,14,15,243,21,2,11,0,23,8,22,0,7,11,14,21,0,1,21,2,7,21,0,4,7,0,16,0,23,19,31,0,7,3,2,21,2,4,21,1,12,21,2,9,21,2,14,8,8,16,25,21,1,6,21,0,1,16,25,21,0,1,0,12,21,2,11,21,1,4,8,0,7,0,24,19,21,2,13,15,244,8,16,14,21,1,5,0,16,0,24,0,6,21,1,3,17,22,1,3,12,17,25,21,0,2,22,0,5,11,14,21,0,4,22,0,6,11,14,21,0,1,0,18,15,245,7,16,25,21,0,2,22,0,3,11,14,21,1,9,0,16,21,0,1,17,22,0,4,11,14,21,1,5,0,18,0,16,21,2,11,21,0,1,8,7,16,22,0,5,11,14,21,0,4,0,17,16,0,18,21,2,7,21,0,5,7,0,16,0,8,21,2,11,21,0,3,8,19,7,16,22,0,6,11,14,31,0,3,0,17,16,0,18,21,2,6,7,21,0,6,17,0,18,21,2,5,7,21,1,10,0,17,16,17,0,15,16,21,2,84,0,12,7,31,0,5,17,21,2,29,0,8,7,0,24,17,0,5,0,105,17,14,21,0,6,21,2,56,16,22,0,7,11,14,21,0,7,21,2,27,16,0,17,16,0,18,21,0,6,21,1,8,0,6,7,0,23,17,21,2,35,21,0,7,17,21,2,12,0,16,8,21,2,12,0,7,8,7,16,22,0,8,11,14,31,0,8,0,18,21,2,5,7,21,1,12,17,21,2,84,0,6,7,21,0,7,0,18,31,0,6,21,2,12,0,16,8,21,2,12,0,8,8,7,21,1,12,17,17,22,1,12,12,14,31,0,7,0,18,0,6,21,2,11,21,0,4,21,2,12,0,8,8,8,7,21,1,11,17,22,1,11,12,14,31,0,4,0,8,22,1,10,13,25,21,0,4,0,16,21,0,1,17,0,16,21,0,2,17,25,21,2,35,21,2,11,21,1,7,0,7,21,1,6,17,0,17,16,0,18,0,6,21,2,11,21,1,7,8,7,16,8,22,0,3,11,14,21,1,5,0,16,0,23,17,21,0,3,16,22,0,4,11,14,21,1,5,0,18,31,0,3,21,2,84,0,12,7,21,0,4,19,21,2,29,0,8,7,9,7,16,21,2,29,0,8,7,0,24,17,0,5,0,106,17,14,21,0,4,21,2,29,0,8,7,16,22,0,5,11,0,17,16,0,15,31,0,4,17,22,0,6,11,14,21,0,6,0,18,21,2,6,7,21,0,1,17,21,1,13,31,0,6,0,18,0,6,21,2,11,0,8,21,2,11,31,0,5,8,8,7,21,0,2,17,17,25,21,2,7,21,2,75,7,21,0,1,3,2,21,2,4,21,0,4,0,7,0,24,19,21,2,10,0,8,0,21,21,2,5,8,8,8,25,21,0,1,15,246,21,0,1,21,0,4,21,0,5,3,3,7,3,2,21,2,4,21,2,5,21,0,2,9,8,25,21,1,0,0,21,21,0,1,8,25,21,0,1,0,21,21,1,0,8,25,21,1,1,21,0,2,7,22,0,3,11,14,21,0,1,21,0,3,15,247,15,248,3,3,21,2,4,21,2,7,0,29,7,0,7,0,0,19,8,16,25,21,0,1,21,1,8,16,22,0,3,11,14,21,0,1,31,0,3,21,0,2,17,25,21,0,1,21,2,1,16,25,21,0,1,21,2,32,0,24,17,0,18,21,2,93,21,2,11,21,2,7,21,0,2,7,8,7,16,25,21,0,2,0,12,16,21,2,21,0,24,17,0,5,21,1,6,17,14,21,0,2,21,2,17,16,22,0,2,12,14,21,0,2,0,18,21,2,15,7,16,21,2,29,0,8,7,0,24,17,0,5,21,1,7,17,14,21,0,2,21,2,27,16,22,0,3,11,14,21,0,1,21,2,83,16,21,2,27,21,2,12,21,2,23,8,21,2,13,15,249,8,21,0,3,17,22,0,4,11,14,15,250,22,0,5,11,14,0,23,21,2,22,16,22,0,6,11,14,0,24,22,0,7,11,14,15,251,22,0,8,11,14,0,23,22,0,9,11,14,21,0,3,0,17,16,0,18,21,0,2,21,2,12,0,16,8,15,252,21,1,4,15,253,7,31,0,8,21,2,6,19,3,2,21,2,4,21,1,3,8,21,0,4,21,2,12,0,16,8,19,7,16,22,0,10,11,14,21,0,1,21,2,20,16,21,2,5,0,20,0,15,21,2,11,21,0,4,8,15,254,3,2,21,2,4,21,0,6,0,12,16,21,2,22,0,23,17,8,8,16,25,21,0,1,21,2,16,16,0,5,0,125,17,14,21,0,1,0,17,16,25,21,0,1,0,12,16,0,12,0,24,17,0,5,0,126,17,14,21,0,1,0,18,21,1,3,7,16,21,2,29,0,18,21,2,30,21,2,11,21,2,18,8,7,7,3,0,21,2,22,16,17,0,1,21,0,1,0,18,0,23,7,16,17,25,21,0,1,0,12,16,0,13,21,1,3,17,0,5,0,128,17,14,21,0,2,0,18,21,2,16,7,16,21,2,29,0,8,7,16,0,5,0,129,17,14,21,0,1,21,2,83,16,22,0,3,11,14,21,1,3,0,17,16,0,18,21,0,2,21,2,12,0,16,8,0,7,21,0,3,21,2,12,0,16,8,19,0,6,0,24,19,7,16,22,0,4,11,14,21,0,4,0,18,0,13,21,2,11,0,23,8,7,16,21,2,29,0,8,7,16,0,5,0,130,17,14,21,0,3,21,2,35,21,1,3,0,7,21,2,11,21,2,27,8,21,0,3,17,0,17,16,0,18,0,6,21,2,11,21,1,3,8,7,16,17,22,0,5,11,21,2,29,0,8,7,0,24,17,22,0,6,11,14,0,24,0,7,21,1,3,17,15,255,16,21,2,30,21,0,6,3,1,17,0,19,0,8,7,16,21,2,60,16,22,0,7,11,14,21,0,2,21,2,5,21,2,84,15,256,7,31,0,7,19,21,2,29,0,18,0,6,7,7,9,21,2,10,0,18,0,6,7,8,31,0,4,17,0,24,21,2,12,0,12,8,0,7,0,24,19,21,2,13,21,2,8,0,17,0,15,31,0,5,19,21,2,12,0,18,0,6,7,8,7,8,31,0,6,17,0,18,21,0,1,0,15,16,21,2,12,0,16,8,7,16,25,21,0,1,0,12,16,0,13,0,24,17,0,5,0,131,17,14,21,0,1,21,1,3,21,0,2,17,25,21,0,2,0,12,16,21,2,21,0,24,17,0,5,0,132,17,14,21,0,1,21,2,83,16,21,2,27,21,2,10,0,13,8,21,0,2,17,0,5,0,133,17,14,21,0,2,21,2,27,16,22,0,3,11,14,21,0,2,0,15,16,21,2,12,0,16,8,22,0,4,11,14,21,0,1,21,0,3,21,2,22,0,23,17,21,2,13,15,257,8,0,23,17,25,21,0,2,0,12,21,1,4,17,25,21,1,3,0,6,22,1,4,13,14,21,0,1,0,6,0,24,17,25,21,0,1,21,2,84,21,2,5,0,24,3,2,21,2,4,21,2,6,8,7,21,1,4,17,21,2,29,0,8,7,0,24,17,22,0,3,11,14,21,0,3,21,2,22,0,23,17,0,5,0,139,17,14,21,1,4,21,2,27,16,0,17,16,0,18,0,8,21,2,11,21,1,4,21,2,12,0,16,8,8,7,16,21,2,29,0,6,7,0,23,17,22,0,4,11,14,21,1,3,0,16,31,0,4,17,21,2,109,16,22,0,5,11,14,0,33,21,2,22,21,0,5,17,0,5,0,140,17,14,0,12,21,2,11,21,2,24,8,0,5,0,141,19,21,2,6,21,2,5,19,22,0,6,11,14,21,0,3,0,9,21,1,7,17,31,0,6,21,2,24,21,2,25,3,3,21,2,4,21,0,5,21,2,24,0,25,17,8,16,22,0,7,11,14,21,1,3,21,2,84,21,2,5,21,0,7,3,2,21,2,4,21,2,6,8,7,21,1,4,17,22,1,3,12,14,31,0,7,0,8,31,0,3,17,31,0,5,0,12,0,29,17,21,2,13,21,2,22,21,2,11,21,1,7,8,21,2,13,15,258,8,8,16,25,21,1,8,0,17,16,0,18,21,2,6,7,21,2,11,0,1,21,2,9,21,2,22,8,8,15,259,3,2,21,2,4,21,1,7,21,2,22,0,23,17,8,21,0,1,17,25,21,2,5,21,1,5,21,0,1,0,16,21,0,2,17,19,22,1,5,12,14,21,0,1,21,2,31,21,0,2,17,25,21,0,1,14,21,1,7,0,16,21,1,8,17,21,2,5,0,24,0,6,21,1,8,17,22,1,8,12,17,25,21,0,1,21,2,111,16,21,1,3,16,0,18,21,0,1,21,2,83,16,21,2,101,16,21,2,111,16,21,2,12,21,2,35,8,7,16,25,21,1,4,21,2,32,21,1,3,17,22,0,3,11,21,2,29,0,8,7,0,24,17,22,0,4,11,14,21,0,4,0,17,16,21,2,111,31,0,3,17,21,2,12,0,18,0,6,21,2,11,0,8,21,2,11,31,0,4,8,8,21,2,8,0,16,7,21,0,1,19,7,8,25,0,18,21,0,1,21,2,12,0,16,8,7,25,21,1,9,21,1,7,21,2,131,21,0,4,17,7,22,0,5,11,14,21,0,1,21,2,84,21,0,5,7,21,2,6,21,2,9,0,18,21,0,1,21,2,12,21,0,5,8,7,8,21,2,5,21,2,9,0,18,21,2,5,31,0,5,21,0,2,19,7,8,21,1,8,3,4,21,2,4,21,2,82,21,2,10,21,2,18,8,21,2,129,21,0,4,21,2,121,0,23,17,19,21,2,123,0,23,21,2,129,21,0,4,17,21,2,122,21,1,7,17,19,21,2,110,0,25,19,21,2,29,21,2,131,21,2,11,0,25,21,2,12,21,2,124,8,8,7,9,8,21,0,2,17,25,21,0,1,21,2,83,16,21,2,35,21,0,2,0,17,16,17,22,0,3,11,14,21,0,1,21,2,33,21,0,2,17,22,0,4,11,21,2,29,21,2,124,7,0,24,17,22,0,5,11,14,21,0,5,0,17,16,21,2,111,31,0,4,17,22,0,6,11,14,21,0,1,15,260,0,20,21,2,7,21,0,3,21,2,29,21,2,124,7,0,24,17,0,17,16,0,18,21,2,5,21,2,124,31,0,5,19,21,2,131,21,0,6,19,21,2,8,21,2,35,7,21,0,1,21,2,111,16,19,7,16,21,2,111,31,0,3,17,7,8,16,25,21,0,1,21,2,83,16,21,2,32,0,24,17,22,0,3,11,14,15,261,22,0,4,11,14,21,1,5,21,2,7,21,0,1,7,21,2,111,31,0,4,19,21,2,42,21,2,12,21,2,110,8,3,2,21,2,4,21,2,5,21,2,9,21,2,39,21,2,9,21,2,133,8,8,8,31,0,3,17,25,21,0,1,21,2,103,21,2,125,7,16,21,2,29,21,1,5,7,21,0,2,17,25,15,262,21,2,7,21,0,2,7,7,25,21,2,6,21,0,1,9,25,0,23,22,0,3,11,22,0,4,11,14,21,1,8,21,2,44,15,263,7,16,14,21,0,1,3,1,22,0,5,11,14,15,264,21,2,11,21,1,7,8,22,0,6,11,14,21,0,3,21,0,6,21,1,6,17,22,0,7,11,14,21,0,4,21,2,132,16,21,0,5,31,0,6,21,2,11,21,2,168,8,3,2,21,2,4,21,2,125,21,2,11,0,23,8,8,21,1,6,17,22,0,8,11,14,21,1,8,21,2,44,21,2,7,31,0,7,31,0,8,3,2,7,0,16,0,23,21,2,12,21,2,125,8,19,0,16,21,2,119,19,7,16,25,21,1,8,0,17,16,21,2,29,21,2,5,21,2,9,21,1,6,21,1,7,16,8,7,21,0,1,17,25,21,0,1,21,2,173,21,0,2,8,21,2,162,21,0,1,8,25,21,2,5,21,2,161,21,1,5,7,21,0,2,19,15,265,21,2,161,21,0,1,7,8,25,21,2,5,15,266,21,1,5,7,21,0,1,19,21,2,161,21,0,2,7,9,25,21,0,2,21,2,162,21,0,1,8,25,21,2,5,15,267,21,0,2,7,21,0,1,19,25,21,0,1,25,21,0,1,21,2,2,21,0,4,17,25,21,0,4,21,2,2,21,0,1,17,25,21,1,5,0,17,16,0,18,0,7,21,3,11,21,0,1,21,3,27,16,0,6,0,28,17,8,21,3,8,0,16,7,21,0,1,19,7,16,25,21,0,1,21,3,43,0,12,7,21,0,2,17,0,19,0,8,7,16,21,3,29,0,6,7,0,23,17,22,0,3,11,14,21,0,2,21,3,35,21,3,11,0,17,8,21,0,3,17,21,3,29,0,8,7,0,24,17,22,0,4,11,14,31,0,3,21,3,23,21,3,11,21,1,5,8,21,3,13,21,3,7,21,0,2,21,0,1,3,2,7,0,18,0,16,7,21,3,22,19,21,3,9,15,268,8,8,16,14,21,0,4,25,21,1,4,0,6,21,3,11,21,0,1,8,21,3,10,21,2,5,8,21,1,3,17,0,12,21,3,11,0,23,8,21,3,13,21,0,1,0,6,0,24,17,21,3,9,21,1,5,8,8,16,25,21,0,4,21,3,12,0,16,8,21,3,10,21,0,1,8,25,21,3,7,0,23,7,0,13,21,0,2,21,3,48,21,0,1,7,16,19,25,21,0,1,21,2,4,21,1,4,17,22,0,3,11,14,21,3,5,21,1,3,3,2,21,3,4,0,13,21,3,11,21,1,3,8,8,22,0,4,11,14,0,23,0,12,21,1,3,17,0,6,21,1,3,17,0,2,0,25,17,21,3,25,16,22,0,5,11,0,17,16,0,18,21,3,5,0,6,0,24,19,0,7,31,0,5,19,0,10,0,25,19,7,16,21,3,29,15,269,7,21,1,3,0,17,16,17,25,21,0,1,0,18,21,1,7,21,3,12,0,7,8,0,7,21,3,11,21,1,6,8,3,2,0,16,21,2,2,17,7,16,0,4,21,3,11,0,3,8,16,25,21,1,3,0,8,0,25,17,0,13,21,0,1,21,3,29,21,3,24,7,16,22,1,7,12,0,7,21,0,1,21,3,29,21,3,25,7,16,22,1,6,12,17,17,25,21,0,1,0,24,21,3,12,21,3,23,8,21,3,13,15,270,8,21,0,2,17,25,21,0,1,14,21,1,9,0,17,16,0,18,21,1,4,0,8,21,2,2,17,7,16,25,21,1,6,21,3,48,21,0,1,0,15,16,21,3,12,0,16,8,21,3,12,21,3,79,0,7,0,24,19,21,3,11,21,0,2,0,15,16,21,3,12,0,16,8,8,8,7,16,22,0,3,11,14,21,0,1,15,271,15,272,3,2,21,3,4,0,15,21,3,9,21,3,27,8,21,3,22,0,30,19,21,3,10,0,8,8,8,21,0,2,17,25,21,1,6,21,1,7,0,12,21,0,1,17,21,3,13,15,273,8,16,25,21,0,1,3,1,3,0,21,3,30,3,2,21,3,4,21,3,6,21,3,14,9,8,21,1,6,17,22,1,6,12,25,21,0,1,21,2,8,21,1,6,8,25,21,0,1,15,274,0,15,21,3,9,0,18,21,0,0,7,8,21,3,29,21,3,25,7,0,23,19,0,6,0,24,19,3,2,21,3,4,21,3,14,8,16,25,15,275,22,0,3,11,14,21,3,18,21,0,3,15,276,3,2,21,3,4,21,3,5,21,3,9,21,3,29,21,3,80,7,8,8,3,2,21,3,4,21,3,5,0,16,0,23,19,21,3,14,9,8,22,0,4,11,14,21,0,2,21,0,1,3,2,21,0,4,0,23,17,22,0,5,11,14,21,1,3,0,17,16,0,18,15,277,7,16,22,0,6,11,14,31,0,6,0,18,0,16,21,3,11,0,24,8,7,21,3,18,0,18,0,16,21,3,11,0,23,8,7,19,21,3,7,21,3,75,7,3,2,21,3,4,31,0,3,0,12,21,0,5,17,8,16,25,21,0,1,21,3,20,16,22,0,1,12,14,21,0,1,0,14,16,22,0,3,11,14,21,0,1,0,15,16,22,0,4,11,21,3,27,16,22,0,5,11,14,21,1,3,0,3,21,0,5,17,22,0,6,11,14,21,1,3,0,4,21,0,6,17,22,0,7,11,14,31,0,7,21,3,12,0,16,8,21,3,8,0,16,7,21,1,4,19,22,0,8,11,14,0,23,22,0,9,11,14,15,278,21,0,8,9,22,0,10,11,14,31,0,8,21,3,12,21,3,79,8,0,5,0,101,19,22,0,11,11,14,31,0,5,0,17,16,0,18,31,0,6,21,3,12,0,16,8,21,3,12,31,0,4,21,3,12,0,16,8,21,0,10,21,3,5,15,279,31,0,10,19,3,3,21,3,4,21,3,24,21,3,11,0,25,8,8,8,7,16,0,15,31,0,3,17,25,21,0,1,21,3,27,16,0,17,16,0,18,21,0,1,21,3,12,0,16,8,21,3,12,21,3,6,0,12,21,0,1,21,0,5,16,19,21,3,13,21,0,4,8,8,7,16,25,21,0,1,0,15,21,3,9,21,3,7,21,2,12,7,0,16,21,0,2,19,21,1,6,21,0,0,21,3,11,21,0,2,0,6,0,24,17,8,8,8,0,15,0,14,19,21,1,5,3,2,21,3,4,21,2,12,21,3,27,16,21,3,21,21,0,2,17,8,16,25,21,0,1,22,2,4,12,21,3,8,0,16,7,21,2,6,17,22,2,5,12,14,0,28,22,2,3,12,25,21,1,5,22,0,3,11,14,21,0,1,21,1,6,22,1,5,13,14,31,0,3,25,21,0,4,21,0,1,21,0,2,17,25,21,0,1,22,0,3,11,14,15,280,25,21,0,1,22,0,3,11,14,15,281,25,21,0,1,21,3,30,21,0,1,21,3,27,16,0,7,21,0,2,17,0,17,21,3,9,0,18,0,24,7,8,16,17,25,21,0,1,0,18,0,6,7,21,0,2,0,18,21,0,4,21,3,12,0,8,8,7,16,17,25,21,0,1,0,24,21,3,12,0,12,8,0,7,0,24,19,21,3,13,21,1,5,21,0,2,7,21,3,11,0,17,8,8,21,1,7,17,21,1,5,21,0,2,0,8,21,1,7,17,7,22,1,6,13,14,0,24,22,1,7,12,14,21,0,1,21,3,27,16,25,21,0,2,0,8,22,1,7,13,14,21,0,2,25,21,0,1,14,0,24,22,1,9,12,25,21,1,3,0,7,21,1,4,21,3,27,16,17,0,17,16,0,18,0,6,21,3,11,21,1,3,8,21,3,8,0,16,7,21,1,4,19,7,16,22,0,3,11,21,3,30,22,1,10,13,14,31,0,3,21,3,29,0,8,7,21,1,7,17,0,12,21,3,11,0,24,8,0,7,0,24,19,21,3,13,15,282,8,16,14,21,0,1,0,15,16,21,3,12,0,16,8,22,0,4,11,14,21,1,9,21,3,5,21,3,13,15,283,8,21,0,1,17,14,21,1,6,0,15,21,1,10,17,0,18,21,0,4,7,16,25,21,0,1,0,17,16,0,18,0,7,21,3,11,21,0,1,8,21,3,8,0,16,7,21,1,3,19,7,16,25,21,0,1,0,17,16,0,18,0,8,21,3,11,21,0,2,8,7,16,25,21,0,1,0,24,0,7,21,1,3,17,21,3,22,21,0,2,17,21,3,13,21,3,103,21,0,0,21,3,11,21,0,2,0,6,0,24,17,8,7,8,16,21,2,3,21,0,2,21,1,4,16,17,25,21,2,7,0,7,21,0,1,17,0,17,16,0,18,21,2,6,0,1,16,7,16,21,3,30,22,2,6,13,14,21,2,7,25,0,28,22,0,3,11,14,0,24,0,7,21,2,7,17,22,0,4,11,14,21,0,1,0,18,15,284,7,16,25,21,1,6,0,18,21,0,1,21,3,125,16,7,16,25,21,0,2,21,3,127,16,21,3,125,0,23,17,0,5,0,154,17,14,21,0,2,21,3,127,16,0,17,16,21,3,125,0,23,17,21,3,124,21,0,2,17,25,21,3,6,21,0,1,21,0,4,19,25,21,0,1,21,3,15,16,0,5,0,157,17,14,21,0,1,21,3,120,21,1,4,17,22,1,4,12,14,21,0,1,21,3,121,21,1,3,17,22,1,3,12,25,21,0,1,0,17,16,21,3,30,21,1,5,17,0,19,21,0,2,7,16,25,21,0,1,21,0,5,16,21,0,4,21,0,2,17,25,21,0,1,21,3,178,16,25,21,0,1,21,3,178,16,25,21,0,1,21,4,29,21,2,3,7,16,22,0,3,22,0,4,4,2,11,14,31,0,3,22,2,4,12,14,31,0,4,0,8,22,1,4,13,25,21,0,2,22,0,3,11,0,7,16,22,0,4,11,14,0,23,22,0,5,11,22,0,6,11,22,0,7,11,14,0,29,22,0,8,11,14,21,0,1,0,24,0,12,21,2,4,17,0,7,0,24,17,21,4,13,0,18,0,8,21,4,11,21,2,4,8,7,8,16,21,4,12,0,16,8,21,4,10,21,1,3,8,22,0,9,11,14,21,0,9,0,7,0,24,19,0,23,0,24,0,25,3,4,22,0,10,11,14,0,6,15,285,3,2,0,16,21,0,3,0,13,0,30,17,17,22,0,11,11,14,15,286,22,0,12,11,14,15,287,15,288,31,0,12,3,3,21,4,4,15,289,8,22,0,13,11,14,21,0,1,0,18,21,0,1,21,4,12,15,290,8,7,16,25,0,25,0,9,21,0,2,17,21,4,24,16,22,0,3,11,0,6,21,0,1,17,22,0,4,11,21,3,2,16,22,0,5,11,14,21,0,1,31,0,4,3,2,0,16,21,0,5,17,21,2,3,21,0,3,0,8,0,25,17,0,7,21,0,2,17,0,8,31,0,5,17,0,6,31,0,3,17,17,25,21,0,1,14,21,2,4,21,2,9,3,2,0,18,0,17,0,18,0,8,21,4,11,21,2,6,8,7,9,7,16,22,0,3,22,0,4,4,2,11,14,31,0,4,0,18,15,291,7,16,25,21,0,2,21,4,54,16,21,4,60,16,22,0,3,11,14,21,0,1,21,4,53,21,0,2,21,4,35,21,0,3,17,17,0,18,0,24,21,4,12,0,7,8,21,4,25,0,23,19,21,4,8,0,16,7,31,0,3,19,7,16,22,0,4,11,14,0,7,21,4,11,0,24,8,0,8,21,4,11,21,2,4,21,4,12,0,7,8,8,0,7,21,4,6,19,3,2,0,16,21,3,2,17,22,0,5,11,14,21,2,9,0,17,16,0,18,0,8,21,4,11,21,2,6,8,21,4,10,21,1,3,8,31,0,5,21,4,6,19,21,4,11,31,0,4,21,4,12,0,16,8,8,7,16,25,0,24,0,6,21,0,1,17,21,2,4,16,22,2,6,12,21,2,5,16,22,2,7,12,14,21,2,6,25,21,0,1,14,0,24,0,6,22,2,3,13,14,0,23,25,21,0,0,0,23,3,2,25,21,0,2,22,0,3,11,14,21,0,1,0,18,0,15,7,16,22,0,4,11,0,16,0,23,17,21,4,27,16,22,0,5,11,14,0,28,22,0,6,11,14,15,292,21,4,12,21,1,4,8,22,0,7,11,14,15,293,25,21,0,1,21,1,5,16,22,0,3,22,0,4,4,2,11,14,31,0,3,22,1,5,12,14,31,0,4,25,0,24,0,7,21,0,1,0,6,22,1,9,13,17,25,0,24,0,7,21,0,1,17,0,17,16,0,18,0,6,21,4,11,21,0,1,0,7,21,1,9,17,8,21,1,11,21,0,2,19,7,16,14,21,0,2,25,0,23,21,4,7,21,1,3,21,0,1,7,7,16,21,2,3,16,25,0,23,21,4,7,21,0,2,21,1,3,21,0,1,8,7,16,21,2,3,16,25,21,0,1,0,17,16,21,2,5,21,0,1,7,22,2,6,13,25,21,4,7,21,0,2,0,1,16,7,21,1,4,3,2,21,4,4,0,13,21,4,11,0,23,8,8,22,1,4,12,25,21,0,1,14,21,3,6,0,16,21,1,4,0,12,21,1,3,17,0,8,21,3,7,17,0,7,0,24,17,0,6,22,1,3,13,17,25,21,0,1,21,1,8,0,7,0,24,17,21,5,13,21,1,9,21,5,13,15,294,8,8,0,24,0,7,21,0,1,17,17,25,21,0,2,0,6,21,1,3,17,22,1,4,12,14,21,0,1,0,6,21,1,3,17,22,1,7,12,21,2,4,16,22,1,6,12,0,6,21,1,3,17,21,2,4,16,22,1,5,12,14,21,1,7,0,13,21,3,3,17,22,1,8,12,14,21,1,6,21,1,11,16,14,21,1,7,21,1,13,21,1,4,17,25,21,0,2,0,6,0,24,17,22,1,4,12,0,12,21,1,6,17,0,8,0,25,17,0,6,22,1,8,13,14,21,0,2,25,21,0,1,0,6,0,24,17,22,1,7,12,0,12,21,1,5,17,0,6,22,1,8,13,14,21,0,1,25,21,0,1,21,1,10,21,5,4,21,1,8,8,21,0,2,17,25,21,0,1,0,16,21,1,7,21,1,13,21,1,4,17,17,25,21,1,3,0,18,21,0,1,21,5,12,21,2,3,8,7,16,21,4,3,16,25,21,1,4,0,18,0,16,21,5,11,21,0,1,8,7,16,25,0,24,0,6,22,1,6,13,14,21,1,6,21,1,7,21,5,11,21,5,7,21,0,0,7,8,21,5,7,21,1,3,7,3,2,21,5,4,0,13,21,5,11,21,1,5,8,8,16,22,0,3,11,14,0,23,31,0,3,16,25,21,0,1,14,0,25,22,2,8,12,14,21,2,4,22,2,7,12,14,21,0,1,22,2,4,12,25] + ,provide.concat([0,1,2,Infinity,-Infinity,-1,3,8,32,5,4,'∾','+','-','×','÷','⋆','¬','⌊','⌈','∨','∧','≠','=','>','≥','˙','√','<','⊢','⊣','≍','↑','↓','↕','⌽','⍉','/','⊔','˜','¨','⌜','˘','`','∘','○','⌾','⍟','⊘','⊸','⟜',str("+-×÷⋆√⌊⌈|¬∧∨<>≠=≤≥≡≢⊣⊢⥊∾≍↑↓↕«»⌽⍉/⍋⍒⊏⊑⊐⊒∊⍷⊔!˙˜˘¨⌜⁼´˝`∘○⊸⟜⌾⊘◶⎉⚇⍟⎊%"),str("´: 𝕩 must be a list"),str("´: Identity not found"),str("Mapping: Equal-rank argument shapes don\'t agree"),str("Mapping: Argument shape prefixes don\'t agree"),str("⍋𝕩: 𝕩 must have rank at least 1"),str("⍋ or ⍒: Rank of 𝕨 must be at least 1"),str("⍋ or ⍒: Rank of 𝕩 must be at least cell rank of 𝕨"),str("⍋ or ⍒: 𝕨 must be sorted"),str("p⊐𝕩 or 𝕨∊p: p must have rank at least 1"),str("p⊐n or n∊p: Rank of n must be at least cell rank of p"),str("/: Replication argument must have rank 1"),str("/: Amounts to replicate must be natural numbers"),str("⌽𝕩: 𝕩 must have rank at least 1"),str("𝕨⌽𝕩: 𝕨 must consist of integers"),str("↑𝕩: 𝕩 must have rank at least 1"),str("↓𝕩: 𝕩 must have rank at least 1"),str("𝕨⊑𝕩: Indices in 𝕨 must consist of integers"),str("𝕨⊑𝕩: Index out of range"),str("𝕨⊏𝕩: Indices in 𝕨 must be integers"),str("𝕨⊏𝕩: Indices out of range"),str("𝕨⊑𝕩: 𝕩 must be a list when 𝕨 is a number"),str("𝕨⊑𝕩: Indices in compound 𝕨 must be lists"),str("𝕨⊑𝕩: Index length in 𝕨 must match rank of 𝕩"),str("⊏𝕩: 𝕩 must have rank at least 1"),str("⊏𝕩: 𝕩 cannot have length 0"),str("𝕨⊏𝕩: 𝕨 must be an array"),str("⌾: Incompatible result elements in structural Under"),str(">𝕩: Elements of 𝕩 must have matching shapes"),str("∾𝕩: Elements of 𝕩 must all have the same rank"),str("∾𝕩: 𝕩 element rank must be at least argument rank"),str("∾𝕩: 𝕩 element shapes must be compatible"),str("∾𝕩: 𝕩 element trailing shapes must match"),str("∾𝕩: empty 𝕩 fill rank must be at least argument rank"),str("∾𝕩: 𝕩 must be an array"),str("⊢⊣˜∘○⊸⟜⊘◶"),str("=≠≢"),str("<"),str("≍"),str("↕/»«⊔"),str("⥊↑↓⌽⍉⊏⊑"),str("𝕨"),str("𝕩: 𝕨 must "),str("have rank at most 1"),str("consist of integers"),str("↑"),str("↓"),str("« or »: 𝕩 must have rank at least 1"),str("« or »: 𝕨 must not have higher rank than 𝕩"),str("« or »: Rank of 𝕨 must be at least rank of 𝕩 minus 1"),str("« or »: 𝕨 must share 𝕩\'s major cell shape"),str("↕𝕩: 𝕩 must consist of natural numbers"),str("↕𝕩: 𝕩 must be a number or list"),str("𝕨↕𝕩: 𝕨 must have rank at most 1"),str("𝕨↕𝕩: Length of 𝕨 must be at most rank of 𝕩"),str("𝕨↕𝕩: 𝕨 must consist of natural numbers"),str("𝕨↕𝕩: Window length 𝕨 must be at most axis length plus one"),str("First-axis primitive: 𝕩 must have rank at least 1"),str("Multi-axis primitive: 𝕨 must have rank at most 1"),str("Multi-axis primitive: Length of 𝕨 must be at most rank of 𝕩"),str("𝕨/𝕩: Lengths of components of 𝕨 must match 𝕩"),str("∊𝕩 or ⊐𝕩: 𝕩 must have rank at least 1"),str("∘⌊⌽↑"),str("𝕨⥊𝕩: 𝕨 must have rank at most 1"),str("𝕨⥊𝕩: 𝕨 must consist of natural numbers"),str("𝕨⥊𝕩: Can\'t compute axis length when rest of shape is empty"),str("𝕨⥊𝕩: 𝕨 must consist of natural numbers or ∘ ⌊ ⌽ ↑"),str("𝕨⥊𝕩: Shape must be exact when reshaping with ∘"),str("⊔: Grouping argument must consist of integers"),str("⊔: Grouping argument values cannot be less than ¯1"),str("⊔𝕩: 𝕩 must be a list"),str("𝕨⊔𝕩: Rank of simple 𝕨 must be at most rank of 𝕩"),str("𝕨⊔𝕩: Lengths of 𝕨 must equal to 𝕩, or one more only in a rank-1 component"),str("𝕨⊔𝕩: 𝕩 must be an array"),str("≥: No monadic form"),str("≤: No monadic form"),str("⎉ or ⚇: 𝔽 result must have rank at most 1"),str("⎉ or ⚇: 𝔽 result must have 1 to 3 elements"),str("⎉ or ⚇: 𝔽 result must consist of integers"),str("˝: 𝕩 must have rank at least 1"),str("˝: Identity does not exist"),str("𝕨∾𝕩: Rank of 𝕨 and 𝕩 must differ by at most 1"),str("𝕨∾𝕩: Cell shapes of 𝕨 and 𝕩 must match"),str("⍟: Repetition numbers in 𝕨𝔾𝕩 must be integers"),str("𝕨⊔𝕩: Compound 𝕨 must be a list"),str("𝕨⊔𝕩: Total rank of 𝕨 must be at most rank of 𝕩"),str("⍷𝕩: Rank of 𝕨 cannot exceed rank of 𝕩"),str("⊒: Rank of 𝕨 must be at least 1"),str("⊒: Rank of 𝕩 must be at least cell rank of 𝕨"),str("𝕨⍉𝕩: 𝕨 must have rank at most 1"),str("𝕨⍉𝕩: Length of 𝕨 must not exceed rank of 𝕩"),str("𝕨⍉𝕩: 𝕨 must consist of natural numbers"),str("𝕨⍉𝕩: Skipped result axis"),str("Cannot currently invert blocks"),str("Cannot invert modifier"),str("⁼: Inverse failed"),str("⁼: Inverse does not exist"),str("⁼: Inverse not found")]) + ,[[0,1,0,194],[0,0,4242,3],[0,0,4250,3],[0,0,4254,3],[2,0,4267,6],[0,0,4294,3],[0,0,4298,3],[0,0,4302,3],[1,0,4306,5],[1,0,4314,5],[2,0,4332,6],[2,0,4347,6],[2,0,4366,6],[2,0,4388,6],[2,0,4410,6],[0,0,4442,3],[0,0,4454,3],[0,0,4463,3],[0,0,4469,3],[1,0,4486,9],[0,0,4606,4],[0,0,4682,3],[0,0,4702,3],[0,0,4742,5],[0,0,4817,3],[1,1,4834,2],[2,1,4865,3],[1,1,4899,2],[0,0,4916,4],[2,1,4983,5],[0,0,5020,3],[1,1,5027,4],[1,1,5100,3],[0,0,5178,3],[0,0,5189,4],[1,0,5259,9],[0,0,5332,5],[1,1,5416,5],[1,1,5474,3],[1,0,5498,14],[1,1,5948,4],[0,0,6000,4],[0,0,6054,6],[0,0,6144,3],[0,0,6169,7],[0,0,6298,4],[0,0,6359,4],[0,0,6472,3],[0,0,6540,4],[0,0,6617,6],[0,0,6694,3],[0,0,6736,5],[0,0,6839,3],[0,0,6857,3],[0,0,6907,3],[0,0,6952,4],[2,1,7053,3],[0,0,7096,3],[2,0,7100,16],[0,0,7411,3],[0,0,7438,3],[0,0,7464,3],[0,0,7479,3],[1,0,7508,5],[2,1,7546,3],[0,0,7615,4],[0,0,7720,7],[0,0,7767,14],[0,0,8001,5],[0,0,8098,3],[0,0,8106,6],[0,0,8133,5],[0,0,8154,6],[0,1,8181,10],[1,1,8499,8],[1,0,8552,6],[1,1,8660,2],[0,0,8718,5],[0,0,8880,5],[0,0,9017,7],[0,0,9186,3],[0,0,9245,5],[0,0,9279,4],[1,0,9346,5],[2,1,9363,4],[0,0,9406,5],[0,0,9494,3],[1,0,9527,6],[0,0,9666,9],[1,0,9833,9],[0,0,9990,4],[0,0,10106,8],[0,0,10334,3],[0,0,10379,3],[0,0,10406,3],[0,0,10428,3],[0,0,10450,3],[0,0,10469,3],[1,1,10566,2],[2,0,10635,10],[2,0,10694,8],[1,0,10887,7],[0,0,10954,8],[2,0,11194,10],[0,0,11269,10],[0,0,11699,4],[0,0,11807,4],[0,0,11918,3],[0,0,11994,3],[0,0,12049,4],[0,0,12182,4],[1,1,12304,2],[2,0,12312,6],[1,1,12327,2],[0,0,12442,3],[0,0,12450,3],[0,0,12458,3],[0,0,12479,8],[0,0,12561,3],[0,0,12569,3],[0,0,12577,3],[0,0,12585,3],[0,0,12593,3],[0,0,12601,3],[0,0,12613,3],[2,0,12638,7],[0,0,12679,6],[0,0,12903,4],[0,0,13009,3],[0,0,13052,5],[0,0,13196,3],[0,0,13243,3],[0,0,13269,3],[1,0,13360,5],[0,0,13388,3],[0,0,13424,3],[0,0,13472,3],[0,0,13526,3],[0,0,13538,3],[1,1,13618,2],[0,0,13648,4],[0,0,13685,3],[0,0,13700,3],[0,0,13729,3],[0,0,13744,3],[0,0,13762,3],[0,0,13777,3],[0,0,13787,3],[2,0,13844,6],[0,0,13872,3],[1,1,13900,2],[1,1,13904,2],[0,0,13908,3],[0,0,13920,3],[0,0,13943,3],[0,0,13958,3],[0,0,13966,3],[1,0,13974,6],[1,0,14091,11],[1,0,14312,5],[0,0,14327,3],[0,0,14341,3],[0,0,14355,7],[0,0,14432,6],[0,0,14480,3],[0,0,14500,3],[0,0,14508,5],[0,0,14597,10],[0,0,14779,4],[0,0,14806,3],[0,0,14825,10],[0,0,15030,8],[0,0,15197,3],[1,1,15223,2],[0,0,15240,3],[0,0,15267,3],[0,0,15277,3],[2,0,15294,11],[0,0,15371,5],[0,0,15449,8],[0,0,15532,3],[0,0,15540,3],[1,0,15584,7],[0,0,15610,9],[1,0,15896,5],[0,0,15912,7],[1,0,16079,5],[2,0,16116,6],[0,0,16147,3],[0,0,16157,3],[0,0,16167,4],[0,0,16208,4],[0,0,16231,3],[0,0,16239,3],[0,0,16267,11],[0,0,16509,3],[0,0,16529,3],[0,0,16593,8],[0,0,16905,3],[0,0,16933,5],[0,0,17028,3],[0,0,17038,3],[0,0,17057,8],[0,0,17322,3],[0,0,17369,3],[0,0,17401,3],[0,0,17431,3],[0,0,17469,5],[0,0,17543,3],[1,0,17556,6],[0,0,17709,7],[0,0,17851,5],[0,0,17931,3],[0,0,17954,3],[0,0,17965,3],[0,0,17973,9],[0,0,18117,3],[0,0,18146,3],[0,0,18164,3],[0,0,18189,3],[0,0,18211,3],[0,0,18222,3],[1,1,18236,2],[1,0,18240,5],[1,0,18251,5],[0,0,18262,3],[0,0,18301,5],[0,0,18414,3],[1,0,18466,5],[0,0,18483,3],[0,0,18504,6],[0,0,18612,3],[0,0,18655,3],[0,0,18700,3],[0,0,18723,3],[0,0,18747,4],[0,0,18839,3],[0,0,18859,3],[0,0,18891,3],[0,0,18902,3],[0,0,18945,7],[0,0,19092,12],[2,0,19290,6],[0,0,19338,3],[0,0,19409,3],[0,0,19438,4],[1,0,19461,5],[0,0,19472,4],[0,0,19483,4],[0,0,19494,3],[1,0,19527,5],[0,0,19553,3],[0,0,19623,3],[0,0,19637,3],[0,0,19648,5],[0,0,19784,3],[0,0,19814,3],[0,0,19834,3],[0,0,19888,3],[0,0,19922,5],[0,0,19952,3],[0,0,19967,3],[1,0,20010,5],[0,0,20021,3],[0,0,20064,3],[2,0,20085,6],[1,1,20100,2],[1,1,20108,2],[0,0,20116,5],[0,0,20155,14],[0,0,20330,6],[0,0,20410,5],[0,0,20461,6],[0,0,20616,3],[0,0,20645,3],[0,0,20661,3],[0,0,20669,8],[0,0,20728,5],[0,0,20757,3],[0,0,20772,3],[1,1,20814,2],[2,1,20833,3],[0,0,20855,3],[0,0,20873,3],[0,0,20905,3],[0,0,20942,3],[0,0,20976,3],[0,0,21059,3],[0,0,21093,3],[0,0,21122,3],[0,0,21140,3],[0,0,21157,3],[0,0,21179,3],[0,0,21196,4],[0,0,21257,3]] ); let rtAssert = runtime[42] = assertFn("!"); @@ -138,26 +138,35 @@ Cmp ← +○IsArray◶⟨ } ⟩ -_grade_←{ - "⍋𝕩: 𝕩 must have rank at least 1" ! 1≤=𝕩 - l←≠𝕩 - m←1×´1 Cell 𝕩 - d←⥊𝕩 - # Counting sort for small-range ints - bl←bu←0⋄r←1-{((bu↩⌈´𝕩)-bl↩⌊´𝕩)≤2×l}⟜𝕩⍟⊢((m=1)×32<l)◶0‿(1×´Int⌜)d - 0 Fill r◶⟨GroupLen⊸GroupOrd (𝕘⊑⟨-⟜bl,bu⊸-⟩)⌜ ⋄ 𝔽{𝕩⋄ - # Merge sort - GT←(𝔽○(⊑⟜d) _getCellCmp m)>0˜ - B←l⊸≤◶⊢‿l - (↕l){ - i←-d←𝕨 ⋄ j←ei←ej←0 - e←3 ⋄ G←GT○(⊑⟜(m⊸×⌜⍟(1-m=1)𝕩)) ⋄ c←⟨G,0,1,2⟩ - s←(8≤d)⊑⟨+,{(𝕩-1){𝕩⋄e↩2⋄j↩i⋄i↩𝕩}⍟(1-G)⍟(1-e)𝕩}⟩ - N←{i↩d+𝕨⋄ej↩B d+ei↩B j↩d+𝕩⋄e↩l≤j⋄S ei⋄i R j} - R←{𝕨e◶c𝕩}◶{e+↩2×ei=i↩1+𝕨⋄𝕨}‿{e+↩ej=j↩1+𝕩⋄𝕩}‿N - {(i R j)⊑𝕩}⟜𝕩⌜𝕩 - }´(2⋆ni-1+⊢)⌜↕ni←⌈2 Log l+l=0 - }⟩𝕩 +_grade ← { + gt ← 𝕗 + cmps ← {𝕏˜}⌜⍟𝕗⟨≤,Cmp≤0˙,Cmp0,Cmp⟩ + GetLE ← { + m←1-1=𝕨 ⋄ a←0<0+´IsArray⌜𝕩 + 𝕨 {(𝕏 _getCellCmp 𝕨)≤0˙}⍟m 𝕩{𝕏○(⊑⟜𝕗)} (a+2×m)⊑cmps + } + { + "⍋𝕩: 𝕩 must have rank at least 1" ! 1≤=𝕩 + l←≠𝕩 + m←1×´1 Cell 𝕩 + 𝕩↩⥊𝕩 + Merge ← { # Merge sort + le←m GetLE 𝕩 + B←l⊸≤◶⊢‿l + (↕l){ + i←-d←𝕨 ⋄ j←ei←ej←0 + e←3 ⋄ G←LE○(⊑⟜(m⊸×⌜⍟(1-m=1)𝕩)) ⋄ c←⟨1-G,0,1,2⟩ + s←(8≤d)⊑⟨+,{(𝕩-1){𝕩⋄e↩2⋄j↩i⋄i↩𝕩}⍟G⍟(1-e)𝕩}⟩ + N←{i↩d+𝕨⋄ej↩B d+ei↩B j↩d+𝕩⋄e↩l≤j⋄S ei⋄i R j} + R←{𝕨e◶c𝕩}◶{e+↩2×ei=i↩1+𝕨⋄𝕨}‿{e+↩ej=j↩1+𝕩⋄𝕩}‿N + {(i R j)⊑𝕩}⟜𝕩⌜𝕩 + }´(2⋆ni-1+⊢)⌜↕ni←⌈2 Log l+l=0 + } + # Counting sort for small-range ints + bl←bu←0 ⋄ Count←{GroupLen⊸GroupOrd (gt⊑⟨-⟜bl,bu⊸-⟩)⌜𝕩} + sr←{((bu↩⌈´𝕩)-bl↩⌊´𝕩)≤2×l}∘𝕩⍟⊢((m=1)×32<l)◶0‿(1×´Int⌜)𝕩 + 0 Fill sr◶Merge‿Count 𝕩 + } } _binSearch ← { B ← 𝔽 @@ -181,8 +190,8 @@ _bins←{ 0 Fill (≠𝕨)⊸{B⟜𝕩 _binSearch 𝕨}⌜ (1×´sx)⊸×⌜ ⥊⟜(↕1×´⊢)⊑⟜(≢𝕩)⌜↕cx } -⍋ ← Cmp _grade_ 0 ⊘ (Cmp _bins) -⍒ ← Cmp˜ _grade_ 1 ⊘ (Cmp˜ _bins) +⍋ ← 0 _grade ⊘ (Cmp _bins) +⍒ ← 1 _grade ⊘ (Cmp˜ _bins) # Searching _search←{ # 0 for ∊˜, 1 for ⊐ |
