adventofcode

git clone https://git.ce9e.org/adventofcode.git

commit
eed68ad94a779b4650b340bd679bb6f4928a7feb
parent
79d3c4425cf0336f75076ef87c768050759eeac4
Author
Tobias Bengfort <tobias.bengfort@posteo.de>
Date
2022-12-09 08:25
2022-12-09

Diffstat

A 2022/09/input.txt 2000 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A 2022/09/solution.rs 47 +++++++++++++++++++++++++++++++++++++++++++++++
A 2022/09/test.txt 8 ++++++++
A 2022/09/test2.txt 8 ++++++++

4 files changed, 2063 insertions, 0 deletions


diff --git a/2022/09/input.txt b/2022/09/input.txt

@@ -0,0 +1,2000 @@
   -1     1 L 1
   -1     2 R 1
   -1     3 U 1
   -1     4 R 1
   -1     5 L 1
   -1     6 U 2
   -1     7 L 2
   -1     8 R 1
   -1     9 U 2
   -1    10 D 2
   -1    11 R 2
   -1    12 D 2
   -1    13 R 1
   -1    14 U 1
   -1    15 R 2
   -1    16 L 1
   -1    17 D 1
   -1    18 L 2
   -1    19 R 1
   -1    20 D 1
   -1    21 R 1
   -1    22 U 1
   -1    23 D 1
   -1    24 R 1
   -1    25 D 1
   -1    26 R 1
   -1    27 D 2
   -1    28 L 2
   -1    29 D 1
   -1    30 R 2
   -1    31 L 1
   -1    32 R 2
   -1    33 U 2
   -1    34 R 1
   -1    35 U 1
   -1    36 D 2
   -1    37 U 1
   -1    38 R 1
   -1    39 D 1
   -1    40 R 2
   -1    41 D 1
   -1    42 L 2
   -1    43 R 1
   -1    44 U 1
   -1    45 L 1
   -1    46 U 1
   -1    47 D 1
   -1    48 U 1
   -1    49 D 1
   -1    50 L 1
   -1    51 D 1
   -1    52 R 1
   -1    53 D 2
   -1    54 L 1
   -1    55 D 1
   -1    56 L 1
   -1    57 D 1
   -1    58 R 1
   -1    59 U 1
   -1    60 D 2
   -1    61 R 1
   -1    62 D 1
   -1    63 L 2
   -1    64 D 2
   -1    65 U 1
   -1    66 L 1
   -1    67 U 1
   -1    68 L 1
   -1    69 R 2
   -1    70 U 1
   -1    71 L 1
   -1    72 D 1
   -1    73 R 2
   -1    74 L 2
   -1    75 U 1
   -1    76 D 2
   -1    77 R 1
   -1    78 U 1
   -1    79 R 2
   -1    80 L 2
   -1    81 U 1
   -1    82 L 2
   -1    83 R 2
   -1    84 D 1
   -1    85 L 1
   -1    86 R 1
   -1    87 D 2
   -1    88 L 2
   -1    89 U 1
   -1    90 L 2
   -1    91 R 1
   -1    92 U 2
   -1    93 D 1
   -1    94 U 2
   -1    95 D 2
   -1    96 L 2
   -1    97 D 1
   -1    98 R 1
   -1    99 L 2
   -1   100 R 2
   -1   101 L 2
   -1   102 R 2
   -1   103 L 2
   -1   104 R 2
   -1   105 L 1
   -1   106 U 1
   -1   107 R 2
   -1   108 U 1
   -1   109 D 1
   -1   110 R 2
   -1   111 D 2
   -1   112 R 2
   -1   113 D 2
   -1   114 L 2
   -1   115 R 2
   -1   116 U 3
   -1   117 R 1
   -1   118 U 3
   -1   119 D 3
   -1   120 U 1
   -1   121 L 2
   -1   122 D 2
   -1   123 R 3
   -1   124 D 1
   -1   125 R 3
   -1   126 U 1
   -1   127 L 3
   -1   128 R 3
   -1   129 L 1
   -1   130 U 3
   -1   131 R 3
   -1   132 U 3
   -1   133 R 3
   -1   134 U 2
   -1   135 L 2
   -1   136 D 2
   -1   137 R 3
   -1   138 U 2
   -1   139 L 2
   -1   140 U 3
   -1   141 L 2
   -1   142 R 1
   -1   143 U 3
   -1   144 R 2
   -1   145 U 3
   -1   146 L 2
   -1   147 R 2
   -1   148 U 1
   -1   149 L 3
   -1   150 R 3
   -1   151 L 3
   -1   152 R 2
   -1   153 L 3
   -1   154 D 3
   -1   155 L 2
   -1   156 D 1
   -1   157 R 1
   -1   158 D 3
   -1   159 U 3
   -1   160 R 3
   -1   161 D 2
   -1   162 L 2
   -1   163 D 2
   -1   164 R 1
   -1   165 D 1
   -1   166 U 3
   -1   167 R 1
   -1   168 U 2
   -1   169 L 3
   -1   170 U 3
   -1   171 L 2
   -1   172 D 1
   -1   173 L 3
   -1   174 R 2
   -1   175 D 2
   -1   176 L 2
   -1   177 D 3
   -1   178 L 3
   -1   179 U 1
   -1   180 D 3
   -1   181 U 3
   -1   182 L 3
   -1   183 R 2
   -1   184 D 2
   -1   185 R 3
   -1   186 D 2
   -1   187 R 3
   -1   188 U 2
   -1   189 R 1
   -1   190 L 2
   -1   191 R 2
   -1   192 L 1
   -1   193 D 3
   -1   194 U 2
   -1   195 L 2
   -1   196 U 3
   -1   197 L 1
   -1   198 D 1
   -1   199 L 2
   -1   200 R 3
   -1   201 L 1
   -1   202 D 2
   -1   203 U 1
   -1   204 D 3
   -1   205 U 1
   -1   206 D 3
   -1   207 L 1
   -1   208 U 1
   -1   209 R 3
   -1   210 L 2
   -1   211 U 3
   -1   212 L 3
   -1   213 U 1
   -1   214 L 2
   -1   215 D 1
   -1   216 R 2
   -1   217 L 1
   -1   218 R 2
   -1   219 L 2
   -1   220 D 3
   -1   221 U 2
   -1   222 D 2
   -1   223 U 3
   -1   224 L 4
   -1   225 D 4
   -1   226 R 3
   -1   227 D 4
   -1   228 R 1
   -1   229 L 2
   -1   230 U 2
   -1   231 R 1
   -1   232 U 4
   -1   233 D 4
   -1   234 U 4
   -1   235 D 4
   -1   236 R 4
   -1   237 L 2
   -1   238 U 3
   -1   239 D 1
   -1   240 R 4
   -1   241 D 2
   -1   242 L 2
   -1   243 D 1
   -1   244 L 4
   -1   245 R 3
   -1   246 U 2
   -1   247 D 4
   -1   248 U 3
   -1   249 R 3
   -1   250 L 1
   -1   251 R 1
   -1   252 L 2
   -1   253 D 4
   -1   254 U 2
   -1   255 R 1
   -1   256 L 3
   -1   257 D 3
   -1   258 R 4
   -1   259 U 2
   -1   260 L 1
   -1   261 D 3
   -1   262 R 4
   -1   263 D 2
   -1   264 U 3
   -1   265 D 1
   -1   266 L 2
   -1   267 D 2
   -1   268 R 2
   -1   269 D 3
   -1   270 R 2
   -1   271 U 2
   -1   272 R 1
   -1   273 L 1
   -1   274 U 2
   -1   275 D 2
   -1   276 U 3
   -1   277 D 1
   -1   278 U 3
   -1   279 D 1
   -1   280 R 4
   -1   281 D 2
   -1   282 U 1
   -1   283 L 3
   -1   284 D 4
   -1   285 R 3
   -1   286 D 4
   -1   287 U 2
   -1   288 D 1
   -1   289 R 2
   -1   290 U 3
   -1   291 L 3
   -1   292 D 1
   -1   293 U 2
   -1   294 L 3
   -1   295 D 1
   -1   296 L 3
   -1   297 D 1
   -1   298 U 1
   -1   299 D 4
   -1   300 R 1
   -1   301 D 4
   -1   302 L 2
   -1   303 R 3
   -1   304 D 4
   -1   305 R 2
   -1   306 L 3
   -1   307 D 4
   -1   308 U 3
   -1   309 L 4
   -1   310 U 1
   -1   311 L 3
   -1   312 R 1
   -1   313 L 1
   -1   314 D 2
   -1   315 L 1
   -1   316 U 2
   -1   317 D 3
   -1   318 L 1
   -1   319 R 4
   -1   320 L 1
   -1   321 D 2
   -1   322 U 2
   -1   323 L 3
   -1   324 U 3
   -1   325 L 1
   -1   326 R 4
   -1   327 U 3
   -1   328 D 3
   -1   329 R 1
   -1   330 L 2
   -1   331 R 4
   -1   332 U 2
   -1   333 L 3
   -1   334 U 4
   -1   335 L 2
   -1   336 R 4
   -1   337 D 5
   -1   338 U 1
   -1   339 R 2
   -1   340 D 5
   -1   341 L 5
   -1   342 R 1
   -1   343 D 3
   -1   344 U 3
   -1   345 L 3
   -1   346 U 5
   -1   347 R 1
   -1   348 D 1
   -1   349 R 3
   -1   350 U 3
   -1   351 D 1
   -1   352 R 1
   -1   353 L 4
   -1   354 R 1
   -1   355 L 3
   -1   356 U 4
   -1   357 L 3
   -1   358 R 5
   -1   359 D 3
   -1   360 R 2
   -1   361 U 1
   -1   362 R 2
   -1   363 D 2
   -1   364 L 4
   -1   365 R 2
   -1   366 U 1
   -1   367 L 3
   -1   368 D 4
   -1   369 R 4
   -1   370 L 1
   -1   371 R 3
   -1   372 U 3
   -1   373 D 2
   -1   374 R 3
   -1   375 D 3
   -1   376 U 1
   -1   377 L 5
   -1   378 U 1
   -1   379 L 5
   -1   380 R 5
   -1   381 D 1
   -1   382 U 1
   -1   383 R 5
   -1   384 D 4
   -1   385 L 1
   -1   386 R 4
   -1   387 L 5
   -1   388 D 5
   -1   389 L 2
   -1   390 D 1
   -1   391 L 3
   -1   392 D 5
   -1   393 L 4
   -1   394 R 4
   -1   395 D 1
   -1   396 U 1
   -1   397 D 4
   -1   398 U 1
   -1   399 R 4
   -1   400 L 2
   -1   401 D 4
   -1   402 U 1
   -1   403 L 3
   -1   404 R 3
   -1   405 L 3
   -1   406 R 3
   -1   407 D 2
   -1   408 R 3
   -1   409 L 5
   -1   410 R 1
   -1   411 L 1
   -1   412 R 3
   -1   413 D 5
   -1   414 U 5
   -1   415 L 3
   -1   416 U 3
   -1   417 L 5
   -1   418 D 3
   -1   419 L 2
   -1   420 U 5
   -1   421 D 5
   -1   422 U 5
   -1   423 D 4
   -1   424 U 4
   -1   425 R 5
   -1   426 U 3
   -1   427 D 5
   -1   428 R 1
   -1   429 L 4
   -1   430 U 1
   -1   431 L 4
   -1   432 R 2
   -1   433 D 1
   -1   434 U 4
   -1   435 L 5
   -1   436 D 2
   -1   437 R 1
   -1   438 U 1
   -1   439 R 3
   -1   440 U 1
   -1   441 R 4
   -1   442 U 4
   -1   443 L 1
   -1   444 R 2
   -1   445 U 5
   -1   446 D 2
   -1   447 L 5
   -1   448 U 4
   -1   449 D 2
   -1   450 R 1
   -1   451 D 1
   -1   452 U 6
   -1   453 D 5
   -1   454 L 4
   -1   455 U 5
   -1   456 R 1
   -1   457 L 3
   -1   458 D 2
   -1   459 R 3
   -1   460 U 6
   -1   461 L 2
   -1   462 R 6
   -1   463 D 1
   -1   464 R 5
   -1   465 D 1
   -1   466 L 1
   -1   467 R 2
   -1   468 L 4
   -1   469 R 3
   -1   470 L 4
   -1   471 D 6
   -1   472 R 5
   -1   473 U 1
   -1   474 L 4
   -1   475 D 2
   -1   476 L 2
   -1   477 D 3
   -1   478 L 2
   -1   479 D 5
   -1   480 R 4
   -1   481 D 3
   -1   482 L 2
   -1   483 D 4
   -1   484 R 1
   -1   485 U 5
   -1   486 L 5
   -1   487 U 5
   -1   488 D 2
   -1   489 L 3
   -1   490 D 4
   -1   491 L 3
   -1   492 U 4
   -1   493 L 4
   -1   494 U 6
   -1   495 D 6
   -1   496 U 4
   -1   497 R 2
   -1   498 D 3
   -1   499 U 1
   -1   500 R 4
   -1   501 D 3
   -1   502 R 1
   -1   503 D 2
   -1   504 R 3
   -1   505 L 2
   -1   506 D 2
   -1   507 L 4
   -1   508 D 5
   -1   509 L 5
   -1   510 R 2
   -1   511 L 1
   -1   512 R 2
   -1   513 D 2
   -1   514 R 4
   -1   515 U 4
   -1   516 R 5
   -1   517 L 4
   -1   518 D 1
   -1   519 L 6
   -1   520 R 4
   -1   521 D 2
   -1   522 R 6
   -1   523 L 6
   -1   524 D 3
   -1   525 R 2
   -1   526 D 2
   -1   527 U 4
   -1   528 R 2
   -1   529 U 2
   -1   530 L 2
   -1   531 R 5
   -1   532 D 5
   -1   533 U 6
   -1   534 D 6
   -1   535 L 5
   -1   536 R 1
   -1   537 U 3
   -1   538 L 1
   -1   539 D 1
   -1   540 U 2
   -1   541 R 5
   -1   542 L 2
   -1   543 D 2
   -1   544 U 4
   -1   545 R 2
   -1   546 D 2
   -1   547 U 1
   -1   548 D 2
   -1   549 R 3
   -1   550 L 6
   -1   551 U 1
   -1   552 D 6
   -1   553 R 3
   -1   554 D 6
   -1   555 R 1
   -1   556 D 7
   -1   557 R 7
   -1   558 L 4
   -1   559 R 4
   -1   560 D 5
   -1   561 U 6
   -1   562 R 2
   -1   563 L 3
   -1   564 R 5
   -1   565 L 5
   -1   566 U 6
   -1   567 D 3
   -1   568 U 5
   -1   569 D 3
   -1   570 U 5
   -1   571 R 7
   -1   572 L 5
   -1   573 U 7
   -1   574 L 6
   -1   575 U 5
   -1   576 D 1
   -1   577 L 7
   -1   578 U 6
   -1   579 L 3
   -1   580 D 1
   -1   581 L 6
   -1   582 U 4
   -1   583 D 1
   -1   584 U 1
   -1   585 R 1
   -1   586 L 3
   -1   587 D 6
   -1   588 L 6
   -1   589 R 3
   -1   590 D 3
   -1   591 U 2
   -1   592 R 1
   -1   593 D 6
   -1   594 U 7
   -1   595 R 6
   -1   596 L 4
   -1   597 R 4
   -1   598 D 7
   -1   599 R 1
   -1   600 D 5
   -1   601 U 6
   -1   602 D 4
   -1   603 R 6
   -1   604 L 2
   -1   605 U 4
   -1   606 D 7
   -1   607 R 5
   -1   608 D 6
   -1   609 U 7
   -1   610 R 6
   -1   611 D 6
   -1   612 U 1
   -1   613 D 4
   -1   614 L 2
   -1   615 U 2
   -1   616 R 7
   -1   617 U 1
   -1   618 L 1
   -1   619 U 1
   -1   620 L 7
   -1   621 D 3
   -1   622 U 5
   -1   623 D 5
   -1   624 L 1
   -1   625 D 4
   -1   626 L 3
   -1   627 U 7
   -1   628 L 6
   -1   629 R 7
   -1   630 U 6
   -1   631 R 1
   -1   632 L 3
   -1   633 R 1
   -1   634 D 3
   -1   635 L 7
   -1   636 R 4
   -1   637 L 3
   -1   638 D 2
   -1   639 L 7
   -1   640 D 2
   -1   641 R 5
   -1   642 L 7
   -1   643 D 6
   -1   644 L 6
   -1   645 D 3
   -1   646 L 3
   -1   647 D 5
   -1   648 U 3
   -1   649 L 5
   -1   650 R 6
   -1   651 L 1
   -1   652 U 5
   -1   653 R 4
   -1   654 U 2
   -1   655 D 3
   -1   656 R 5
   -1   657 L 4
   -1   658 U 5
   -1   659 D 7
   -1   660 R 1
   -1   661 L 3
   -1   662 U 5
   -1   663 D 3
   -1   664 L 6
   -1   665 R 2
   -1   666 L 2
   -1   667 U 6
   -1   668 R 3
   -1   669 U 7
   -1   670 R 3
   -1   671 D 1
   -1   672 L 2
   -1   673 U 7
   -1   674 L 6
   -1   675 D 3
   -1   676 L 8
   -1   677 R 6
   -1   678 D 3
   -1   679 L 5
   -1   680 R 5
   -1   681 U 5
   -1   682 R 8
   -1   683 D 7
   -1   684 R 7
   -1   685 U 8
   -1   686 L 5
   -1   687 D 6
   -1   688 R 6
   -1   689 L 6
   -1   690 D 8
   -1   691 U 1
   -1   692 R 4
   -1   693 L 3
   -1   694 R 6
   -1   695 L 6
   -1   696 D 5
   -1   697 R 4
   -1   698 D 8
   -1   699 L 4
   -1   700 R 4
   -1   701 D 3
   -1   702 L 2
   -1   703 U 6
   -1   704 L 8
   -1   705 R 1
   -1   706 U 5
   -1   707 L 4
   -1   708 D 8
   -1   709 R 6
   -1   710 D 5
   -1   711 U 6
   -1   712 L 5
   -1   713 R 1
   -1   714 L 8
   -1   715 U 7
   -1   716 R 6
   -1   717 D 4
   -1   718 U 2
   -1   719 D 8
   -1   720 U 3
   -1   721 D 7
   -1   722 R 6
   -1   723 D 8
   -1   724 R 8
   -1   725 U 8
   -1   726 D 7
   -1   727 L 3
   -1   728 D 4
   -1   729 L 1
   -1   730 U 4
   -1   731 R 4
   -1   732 U 2
   -1   733 D 6
   -1   734 R 1
   -1   735 D 8
   -1   736 R 2
   -1   737 D 4
   -1   738 R 5
   -1   739 L 1
   -1   740 R 7
   -1   741 L 3
   -1   742 D 1
   -1   743 U 1
   -1   744 R 7
   -1   745 U 5
   -1   746 D 1
   -1   747 L 2
   -1   748 R 8
   -1   749 D 8
   -1   750 L 5
   -1   751 U 8
   -1   752 D 4
   -1   753 L 5
   -1   754 D 3
   -1   755 U 2
   -1   756 L 7
   -1   757 R 2
   -1   758 L 5
   -1   759 U 3
   -1   760 R 3
   -1   761 U 6
   -1   762 R 6
   -1   763 D 4
   -1   764 R 3
   -1   765 U 4
   -1   766 D 5
   -1   767 U 6
   -1   768 R 3
   -1   769 L 4
   -1   770 R 5
   -1   771 L 4
   -1   772 R 8
   -1   773 U 6
   -1   774 L 6
   -1   775 U 1
   -1   776 L 5
   -1   777 R 3
   -1   778 U 1
   -1   779 D 5
   -1   780 U 8
   -1   781 R 1
   -1   782 L 2
   -1   783 R 3
   -1   784 L 8
   -1   785 U 6
   -1   786 L 4
   -1   787 R 3
   -1   788 L 3
   -1   789 R 7
   -1   790 L 9
   -1   791 D 5
   -1   792 R 8
   -1   793 L 5
   -1   794 U 7
   -1   795 D 7
   -1   796 R 6
   -1   797 L 8
   -1   798 U 4
   -1   799 D 5
   -1   800 R 8
   -1   801 L 4
   -1   802 R 8
   -1   803 U 9
   -1   804 R 9
   -1   805 L 8
   -1   806 D 9
   -1   807 L 9
   -1   808 D 6
   -1   809 R 1
   -1   810 L 8
   -1   811 U 4
   -1   812 L 6
   -1   813 U 5
   -1   814 R 9
   -1   815 L 5
   -1   816 D 6
   -1   817 R 9
   -1   818 D 9
   -1   819 U 6
   -1   820 L 1
   -1   821 U 8
   -1   822 L 7
   -1   823 R 9
   -1   824 U 4
   -1   825 R 6
   -1   826 U 1
   -1   827 R 5
   -1   828 U 5
   -1   829 L 4
   -1   830 R 4
   -1   831 D 7
   -1   832 L 6
   -1   833 U 3
   -1   834 R 9
   -1   835 U 1
   -1   836 L 6
   -1   837 U 5
   -1   838 L 5
   -1   839 U 2
   -1   840 L 3
   -1   841 U 2
   -1   842 D 6
   -1   843 R 8
   -1   844 L 5
   -1   845 U 4
   -1   846 D 4
   -1   847 R 4
   -1   848 D 6
   -1   849 L 8
   -1   850 U 9
   -1   851 R 4
   -1   852 L 3
   -1   853 D 1
   -1   854 U 2
   -1   855 D 5
   -1   856 U 3
   -1   857 D 3
   -1   858 L 2
   -1   859 D 3
   -1   860 L 4
   -1   861 D 5
   -1   862 L 9
   -1   863 D 9
   -1   864 U 2
   -1   865 D 8
   -1   866 R 4
   -1   867 L 8
   -1   868 R 9
   -1   869 D 7
   -1   870 L 3
   -1   871 D 2
   -1   872 R 2
   -1   873 L 4
   -1   874 D 7
   -1   875 R 6
   -1   876 D 8
   -1   877 R 9
   -1   878 L 3
   -1   879 D 5
   -1   880 U 1
   -1   881 L 8
   -1   882 D 6
   -1   883 R 9
   -1   884 U 6
   -1   885 R 9
   -1   886 D 6
   -1   887 L 9
   -1   888 U 5
   -1   889 D 10
   -1   890 L 4
   -1   891 U 10
   -1   892 R 3
   -1   893 U 7
   -1   894 D 4
   -1   895 L 3
   -1   896 R 8
   -1   897 L 4
   -1   898 U 10
   -1   899 R 8
   -1   900 L 10
   -1   901 U 8
   -1   902 R 5
   -1   903 L 8
   -1   904 U 6
   -1   905 L 5
   -1   906 D 7
   -1   907 L 6
   -1   908 U 6
   -1   909 L 9
   -1   910 R 8
   -1   911 U 6
   -1   912 D 7
   -1   913 L 10
   -1   914 R 2
   -1   915 D 7
   -1   916 L 8
   -1   917 U 5
   -1   918 L 2
   -1   919 D 2
   -1   920 U 7
   -1   921 D 6
   -1   922 R 7
   -1   923 D 2
   -1   924 U 3
   -1   925 R 10
   -1   926 D 2
   -1   927 U 6
   -1   928 D 6
   -1   929 L 8
   -1   930 D 2
   -1   931 L 2
   -1   932 D 10
   -1   933 L 2
   -1   934 D 1
   -1   935 L 10
   -1   936 D 6
   -1   937 R 6
   -1   938 L 7
   -1   939 D 9
   -1   940 R 2
   -1   941 D 5
   -1   942 U 2
   -1   943 R 4
   -1   944 L 4
   -1   945 D 1
   -1   946 L 3
   -1   947 R 10
   -1   948 U 9
   -1   949 L 4
   -1   950 D 10
   -1   951 L 10
   -1   952 D 4
   -1   953 U 2
   -1   954 R 1
   -1   955 L 4
   -1   956 D 6
   -1   957 U 2
   -1   958 L 6
   -1   959 R 4
   -1   960 U 1
   -1   961 L 9
   -1   962 R 7
   -1   963 L 8
   -1   964 U 5
   -1   965 R 1
   -1   966 D 6
   -1   967 L 4
   -1   968 U 9
   -1   969 D 1
   -1   970 L 5
   -1   971 R 10
   -1   972 D 4
   -1   973 L 6
   -1   974 U 8
   -1   975 R 4
   -1   976 L 5
   -1   977 D 10
   -1   978 R 8
   -1   979 D 8
   -1   980 R 4
   -1   981 D 5
   -1   982 R 7
   -1   983 L 10
   -1   984 D 3
   -1   985 R 1
   -1   986 L 4
   -1   987 R 8
   -1   988 L 10
   -1   989 D 2
   -1   990 L 3
   -1   991 D 6
   -1   992 L 8
   -1   993 R 10
   -1   994 L 2
   -1   995 D 8
   -1   996 R 5
   -1   997 L 8
   -1   998 D 1
   -1   999 U 6
   -1  1000 D 11
   -1  1001 U 7
   -1  1002 L 1
   -1  1003 U 6
   -1  1004 R 9
   -1  1005 L 8
   -1  1006 R 5
   -1  1007 U 9
   -1  1008 D 5
   -1  1009 L 10
   -1  1010 U 6
   -1  1011 L 3
   -1  1012 D 4
   -1  1013 U 6
   -1  1014 D 10
   -1  1015 L 2
   -1  1016 D 9
   -1  1017 L 5
   -1  1018 R 8
   -1  1019 D 1
   -1  1020 R 1
   -1  1021 U 1
   -1  1022 D 4
   -1  1023 R 4
   -1  1024 U 6
   -1  1025 L 9
   -1  1026 U 7
   -1  1027 R 11
   -1  1028 L 8
   -1  1029 D 3
   -1  1030 R 9
   -1  1031 L 11
   -1  1032 U 9
   -1  1033 L 4
   -1  1034 D 10
   -1  1035 U 9
   -1  1036 L 7
   -1  1037 R 9
   -1  1038 U 1
   -1  1039 R 8
   -1  1040 U 4
   -1  1041 L 3
   -1  1042 U 2
   -1  1043 D 7
   -1  1044 R 6
   -1  1045 U 1
   -1  1046 D 10
   -1  1047 U 9
   -1  1048 R 6
   -1  1049 L 6
   -1  1050 D 4
   -1  1051 U 3
   -1  1052 L 10
   -1  1053 R 10
   -1  1054 U 6
   -1  1055 R 8
   -1  1056 L 9
   -1  1057 R 2
   -1  1058 D 7
   -1  1059 R 4
   -1  1060 U 6
   -1  1061 R 2
   -1  1062 L 4
   -1  1063 D 1
   -1  1064 L 10
   -1  1065 U 9
   -1  1066 R 11
   -1  1067 U 11
   -1  1068 R 1
   -1  1069 D 5
   -1  1070 L 8
   -1  1071 U 3
   -1  1072 R 1
   -1  1073 U 4
   -1  1074 D 10
   -1  1075 U 6
   -1  1076 L 8
   -1  1077 R 4
   -1  1078 L 7
   -1  1079 R 8
   -1  1080 D 3
   -1  1081 L 9
   -1  1082 U 4
   -1  1083 L 6
   -1  1084 R 2
   -1  1085 D 2
   -1  1086 U 9
   -1  1087 D 6
   -1  1088 R 8
   -1  1089 L 2
   -1  1090 U 7
   -1  1091 L 2
   -1  1092 R 8
   -1  1093 L 7
   -1  1094 D 5
   -1  1095 R 10
   -1  1096 U 5
   -1  1097 L 10
   -1  1098 U 6
   -1  1099 R 8
   -1  1100 U 9
   -1  1101 L 7
   -1  1102 D 11
   -1  1103 U 10
   -1  1104 L 4
   -1  1105 D 5
   -1  1106 R 4
   -1  1107 L 7
   -1  1108 U 5
   -1  1109 D 8
   -1  1110 R 6
   -1  1111 D 9
   -1  1112 L 4
   -1  1113 U 9
   -1  1114 R 6
   -1  1115 D 1
   -1  1116 U 6
   -1  1117 R 8
   -1  1118 U 10
   -1  1119 D 6
   -1  1120 U 10
   -1  1121 L 3
   -1  1122 D 1
   -1  1123 L 1
   -1  1124 R 9
   -1  1125 D 10
   -1  1126 L 10
   -1  1127 U 12
   -1  1128 D 3
   -1  1129 L 2
   -1  1130 U 6
   -1  1131 L 9
   -1  1132 U 2
   -1  1133 R 6
   -1  1134 D 8
   -1  1135 R 11
   -1  1136 L 1
   -1  1137 U 3
   -1  1138 R 1
   -1  1139 U 9
   -1  1140 R 12
   -1  1141 U 3
   -1  1142 D 11
   -1  1143 U 3
   -1  1144 D 10
   -1  1145 U 12
   -1  1146 L 11
   -1  1147 R 9
   -1  1148 U 9
   -1  1149 D 11
   -1  1150 L 8
   -1  1151 D 4
   -1  1152 R 4
   -1  1153 U 4
   -1  1154 D 1
   -1  1155 L 7
   -1  1156 R 10
   -1  1157 L 4
   -1  1158 R 4
   -1  1159 U 11
   -1  1160 D 3
   -1  1161 L 6
   -1  1162 R 10
   -1  1163 L 9
   -1  1164 R 11
   -1  1165 U 6
   -1  1166 D 2
   -1  1167 U 2
   -1  1168 L 3
   -1  1169 D 11
   -1  1170 U 6
   -1  1171 D 12
   -1  1172 L 5
   -1  1173 R 5
   -1  1174 D 6
   -1  1175 R 5
   -1  1176 U 2
   -1  1177 R 8
   -1  1178 L 7
   -1  1179 D 7
   -1  1180 R 3
   -1  1181 D 8
   -1  1182 U 6
   -1  1183 D 1
   -1  1184 U 1
   -1  1185 D 4
   -1  1186 L 3
   -1  1187 D 12
   -1  1188 L 8
   -1  1189 D 8
   -1  1190 U 7
   -1  1191 R 1
   -1  1192 D 10
   -1  1193 L 5
   -1  1194 D 7
   -1  1195 L 1
   -1  1196 U 4
   -1  1197 R 12
   -1  1198 L 8
   -1  1199 U 2
   -1  1200 L 2
   -1  1201 U 1
   -1  1202 L 8
   -1  1203 U 3
   -1  1204 L 12
   -1  1205 R 3
   -1  1206 D 11
   -1  1207 R 1
   -1  1208 U 4
   -1  1209 D 12
   -1  1210 L 3
   -1  1211 U 2
   -1  1212 R 5
   -1  1213 U 2
   -1  1214 R 7
   -1  1215 U 8
   -1  1216 L 5
   -1  1217 R 1
   -1  1218 D 5
   -1  1219 R 12
   -1  1220 D 8
   -1  1221 R 9
   -1  1222 D 7
   -1  1223 L 2
   -1  1224 R 2
   -1  1225 U 9
   -1  1226 D 6
   -1  1227 U 6
   -1  1228 R 2
   -1  1229 D 2
   -1  1230 R 9
   -1  1231 D 4
   -1  1232 R 12
   -1  1233 D 13
   -1  1234 R 9
   -1  1235 L 3
   -1  1236 D 8
   -1  1237 L 13
   -1  1238 U 2
   -1  1239 R 10
   -1  1240 U 12
   -1  1241 D 12
   -1  1242 U 3
   -1  1243 L 6
   -1  1244 D 8
   -1  1245 U 1
   -1  1246 L 12
   -1  1247 D 9
   -1  1248 L 7
   -1  1249 R 2
   -1  1250 D 4
   -1  1251 R 5
   -1  1252 L 7
   -1  1253 R 12
   -1  1254 U 4
   -1  1255 L 7
   -1  1256 D 4
   -1  1257 U 10
   -1  1258 L 2
   -1  1259 D 1
   -1  1260 U 5
   -1  1261 R 5
   -1  1262 U 2
   -1  1263 L 9
   -1  1264 D 10
   -1  1265 L 1
   -1  1266 R 7
   -1  1267 L 6
   -1  1268 D 1
   -1  1269 L 12
   -1  1270 R 6
   -1  1271 U 10
   -1  1272 R 2
   -1  1273 D 10
   -1  1274 R 5
   -1  1275 L 3
   -1  1276 R 8
   -1  1277 D 1
   -1  1278 R 12
   -1  1279 L 7
   -1  1280 U 5
   -1  1281 L 11
   -1  1282 D 4
   -1  1283 U 11
   -1  1284 D 1
   -1  1285 U 11
   -1  1286 L 1
   -1  1287 D 11
   -1  1288 U 11
   -1  1289 D 4
   -1  1290 U 8
   -1  1291 R 5
   -1  1292 D 6
   -1  1293 L 12
   -1  1294 R 5
   -1  1295 D 10
   -1  1296 L 2
   -1  1297 D 5
   -1  1298 R 10
   -1  1299 U 6
   -1  1300 D 6
   -1  1301 R 4
   -1  1302 D 7
   -1  1303 L 2
   -1  1304 D 5
   -1  1305 U 2
   -1  1306 R 9
   -1  1307 L 11
   -1  1308 U 13
   -1  1309 D 9
   -1  1310 L 11
   -1  1311 D 8
   -1  1312 L 2
   -1  1313 D 4
   -1  1314 R 13
   -1  1315 L 5
   -1  1316 U 12
   -1  1317 R 11
   -1  1318 U 5
   -1  1319 L 8
   -1  1320 U 5
   -1  1321 D 7
   -1  1322 U 1
   -1  1323 R 9
   -1  1324 D 4
   -1  1325 U 3
   -1  1326 R 9
   -1  1327 L 3
   -1  1328 D 7
   -1  1329 R 8
   -1  1330 D 7
   -1  1331 L 2
   -1  1332 U 4
   -1  1333 L 12
   -1  1334 U 13
   -1  1335 L 12
   -1  1336 R 8
   -1  1337 L 3
   -1  1338 R 12
   -1  1339 L 4
   -1  1340 U 12
   -1  1341 R 13
   -1  1342 D 10
   -1  1343 L 8
   -1  1344 U 12
   -1  1345 R 5
   -1  1346 L 1
   -1  1347 U 2
   -1  1348 L 3
   -1  1349 U 2
   -1  1350 D 12
   -1  1351 L 12
   -1  1352 U 11
   -1  1353 L 2
   -1  1354 R 6
   -1  1355 U 3
   -1  1356 L 2
   -1  1357 R 7
   -1  1358 U 7
   -1  1359 L 3
   -1  1360 R 8
   -1  1361 L 11
   -1  1362 D 2
   -1  1363 U 1
   -1  1364 R 12
   -1  1365 D 1
   -1  1366 R 4
   -1  1367 L 13
   -1  1368 U 14
   -1  1369 R 14
   -1  1370 D 12
   -1  1371 R 12
   -1  1372 D 11
   -1  1373 L 11
   -1  1374 U 2
   -1  1375 L 6
   -1  1376 D 8
   -1  1377 L 5
   -1  1378 D 7
   -1  1379 R 2
   -1  1380 L 14
   -1  1381 U 12
   -1  1382 R 13
   -1  1383 L 7
   -1  1384 D 2
   -1  1385 U 4
   -1  1386 D 5
   -1  1387 R 5
   -1  1388 L 7
   -1  1389 R 7
   -1  1390 U 1
   -1  1391 R 10
   -1  1392 D 11
   -1  1393 L 7
   -1  1394 U 2
   -1  1395 R 5
   -1  1396 L 11
   -1  1397 U 11
   -1  1398 R 9
   -1  1399 U 9
   -1  1400 R 12
   -1  1401 D 14
   -1  1402 R 5
   -1  1403 L 9
   -1  1404 U 2
   -1  1405 D 12
   -1  1406 L 6
   -1  1407 U 7
   -1  1408 R 5
   -1  1409 L 10
   -1  1410 D 10
   -1  1411 U 4
   -1  1412 D 13
   -1  1413 L 13
   -1  1414 D 3
   -1  1415 R 8
   -1  1416 D 10
   -1  1417 U 12
   -1  1418 L 14
   -1  1419 U 7
   -1  1420 D 6
   -1  1421 R 4
   -1  1422 U 11
   -1  1423 R 2
   -1  1424 L 5
   -1  1425 D 12
   -1  1426 R 4
   -1  1427 L 4
   -1  1428 D 5
   -1  1429 L 12
   -1  1430 U 3
   -1  1431 L 3
   -1  1432 U 7
   -1  1433 R 4
   -1  1434 L 2
   -1  1435 R 7
   -1  1436 L 5
   -1  1437 D 5
   -1  1438 R 9
   -1  1439 L 5
   -1  1440 D 12
   -1  1441 R 3
   -1  1442 U 1
   -1  1443 D 6
   -1  1444 U 2
   -1  1445 R 10
   -1  1446 L 4
   -1  1447 U 12
   -1  1448 R 15
   -1  1449 L 2
   -1  1450 R 3
   -1  1451 D 8
   -1  1452 L 13
   -1  1453 D 3
   -1  1454 R 5
   -1  1455 D 5
   -1  1456 L 5
   -1  1457 U 7
   -1  1458 L 4
   -1  1459 R 10
   -1  1460 D 11
   -1  1461 L 3
   -1  1462 R 1
   -1  1463 U 4
   -1  1464 D 15
   -1  1465 L 8
   -1  1466 U 10
   -1  1467 L 5
   -1  1468 D 1
   -1  1469 R 5
   -1  1470 D 15
   -1  1471 R 3
   -1  1472 U 9
   -1  1473 R 4
   -1  1474 D 3
   -1  1475 L 15
   -1  1476 U 6
   -1  1477 D 10
   -1  1478 U 2
   -1  1479 R 6
   -1  1480 U 10
   -1  1481 L 12
   -1  1482 R 8
   -1  1483 D 12
   -1  1484 R 14
   -1  1485 U 10
   -1  1486 D 1
   -1  1487 L 1
   -1  1488 D 8
   -1  1489 U 3
   -1  1490 R 11
   -1  1491 D 7
   -1  1492 L 5
   -1  1493 D 14
   -1  1494 R 1
   -1  1495 D 8
   -1  1496 R 6
   -1  1497 U 6
   -1  1498 D 1
   -1  1499 U 14
   -1  1500 R 12
   -1  1501 L 5
   -1  1502 U 5
   -1  1503 L 14
   -1  1504 U 1
   -1  1505 D 3
   -1  1506 R 6
   -1  1507 U 4
   -1  1508 R 9
   -1  1509 L 13
   -1  1510 R 2
   -1  1511 U 10
   -1  1512 R 11
   -1  1513 U 7
   -1  1514 D 8
   -1  1515 U 14
   -1  1516 L 4
   -1  1517 R 3
   -1  1518 U 6
   -1  1519 R 2
   -1  1520 D 14
   -1  1521 U 10
   -1  1522 D 13
   -1  1523 U 8
   -1  1524 R 12
   -1  1525 L 12
   -1  1526 U 6
   -1  1527 L 4
   -1  1528 U 5
   -1  1529 D 6
   -1  1530 U 8
   -1  1531 L 12
   -1  1532 D 1
   -1  1533 L 3
   -1  1534 R 4
   -1  1535 L 11
   -1  1536 R 5
   -1  1537 D 3
   -1  1538 U 6
   -1  1539 D 15
   -1  1540 R 14
   -1  1541 U 8
   -1  1542 R 10
   -1  1543 U 15
   -1  1544 R 13
   -1  1545 L 13
   -1  1546 U 4
   -1  1547 D 3
   -1  1548 U 4
   -1  1549 D 1
   -1  1550 U 5
   -1  1551 R 5
   -1  1552 D 4
   -1  1553 R 2
   -1  1554 D 13
   -1  1555 R 7
   -1  1556 D 10
   -1  1557 U 3
   -1  1558 R 15
   -1  1559 D 3
   -1  1560 U 13
   -1  1561 R 16
   -1  1562 U 2
   -1  1563 D 6
   -1  1564 L 13
   -1  1565 R 8
   -1  1566 L 5
   -1  1567 R 1
   -1  1568 U 7
   -1  1569 R 6
   -1  1570 U 6
   -1  1571 R 10
   -1  1572 U 5
   -1  1573 L 14
   -1  1574 R 12
   -1  1575 U 8
   -1  1576 R 13
   -1  1577 U 4
   -1  1578 L 10
   -1  1579 R 16
   -1  1580 L 15
   -1  1581 D 7
   -1  1582 R 14
   -1  1583 D 8
   -1  1584 U 8
   -1  1585 L 15
   -1  1586 R 2
   -1  1587 U 11
   -1  1588 L 6
   -1  1589 R 6
   -1  1590 D 2
   -1  1591 U 9
   -1  1592 D 12
   -1  1593 L 10
   -1  1594 U 7
   -1  1595 R 8
   -1  1596 L 4
   -1  1597 D 5
   -1  1598 R 13
   -1  1599 L 9
   -1  1600 U 15
   -1  1601 D 11
   -1  1602 R 11
   -1  1603 D 8
   -1  1604 L 10
   -1  1605 R 14
   -1  1606 D 3
   -1  1607 R 10
   -1  1608 U 1
   -1  1609 R 11
   -1  1610 L 16
   -1  1611 R 12
   -1  1612 D 15
   -1  1613 L 13
   -1  1614 U 2
   -1  1615 L 11
   -1  1616 U 15
   -1  1617 D 9
   -1  1618 R 1
   -1  1619 D 13
   -1  1620 L 16
   -1  1621 U 9
   -1  1622 D 2
   -1  1623 R 5
   -1  1624 U 9
   -1  1625 R 11
   -1  1626 L 16
   -1  1627 U 5
   -1  1628 R 11
   -1  1629 U 8
   -1  1630 L 15
   -1  1631 U 1
   -1  1632 L 11
   -1  1633 U 3
   -1  1634 L 4
   -1  1635 U 9
   -1  1636 L 5
   -1  1637 U 11
   -1  1638 D 9
   -1  1639 U 4
   -1  1640 L 14
   -1  1641 U 8
   -1  1642 L 16
   -1  1643 D 9
   -1  1644 U 5
   -1  1645 L 14
   -1  1646 R 13
   -1  1647 U 8
   -1  1648 L 4
   -1  1649 R 9
   -1  1650 L 4
   -1  1651 R 7
   -1  1652 D 15
   -1  1653 U 14
   -1  1654 D 8
   -1  1655 U 6
   -1  1656 R 11
   -1  1657 L 15
   -1  1658 D 10
   -1  1659 R 2
   -1  1660 L 12
   -1  1661 R 11
   -1  1662 D 7
   -1  1663 R 11
   -1  1664 L 4
   -1  1665 R 4
   -1  1666 D 4
   -1  1667 R 3
   -1  1668 U 15
   -1  1669 L 6
   -1  1670 R 8
   -1  1671 L 5
   -1  1672 U 13
   -1  1673 D 6
   -1  1674 R 1
   -1  1675 D 15
   -1  1676 L 9
   -1  1677 U 2
   -1  1678 L 13
   -1  1679 R 10
   -1  1680 U 8
   -1  1681 R 15
   -1  1682 D 16
   -1  1683 L 13
   -1  1684 U 13
   -1  1685 L 12
   -1  1686 R 10
   -1  1687 U 16
   -1  1688 L 10
   -1  1689 R 14
   -1  1690 D 17
   -1  1691 R 4
   -1  1692 D 16
   -1  1693 U 17
   -1  1694 R 8
   -1  1695 D 10
   -1  1696 R 11
   -1  1697 L 10
   -1  1698 U 17
   -1  1699 L 11
   -1  1700 U 3
   -1  1701 L 4
   -1  1702 U 2
   -1  1703 D 10
   -1  1704 R 15
   -1  1705 U 1
   -1  1706 R 5
   -1  1707 L 12
   -1  1708 D 4
   -1  1709 R 1
   -1  1710 U 15
   -1  1711 R 13
   -1  1712 L 17
   -1  1713 R 15
   -1  1714 D 4
   -1  1715 L 14
   -1  1716 R 3
   -1  1717 D 1
   -1  1718 U 14
   -1  1719 R 11
   -1  1720 D 12
   -1  1721 L 7
   -1  1722 D 11
   -1  1723 R 12
   -1  1724 U 1
   -1  1725 R 5
   -1  1726 L 11
   -1  1727 D 9
   -1  1728 U 8
   -1  1729 R 1
   -1  1730 U 4
   -1  1731 L 15
   -1  1732 R 12
   -1  1733 U 17
   -1  1734 R 4
   -1  1735 U 14
   -1  1736 L 4
   -1  1737 D 16
   -1  1738 R 9
   -1  1739 U 9
   -1  1740 D 11
   -1  1741 L 7
   -1  1742 D 16
   -1  1743 R 10
   -1  1744 L 10
   -1  1745 R 15
   -1  1746 U 10
   -1  1747 R 6
   -1  1748 L 4
   -1  1749 R 6
   -1  1750 L 12
   -1  1751 U 9
   -1  1752 R 15
   -1  1753 D 12
   -1  1754 L 14
   -1  1755 U 14
   -1  1756 D 6
   -1  1757 U 4
   -1  1758 R 17
   -1  1759 U 2
   -1  1760 L 5
   -1  1761 R 13
   -1  1762 D 15
   -1  1763 U 13
   -1  1764 L 5
   -1  1765 D 3
   -1  1766 L 7
   -1  1767 U 12
   -1  1768 R 13
   -1  1769 D 15
   -1  1770 U 15
   -1  1771 L 17
   -1  1772 U 17
   -1  1773 L 6
   -1  1774 R 2
   -1  1775 U 17
   -1  1776 R 7
   -1  1777 L 15
   -1  1778 U 17
   -1  1779 R 11
   -1  1780 L 2
   -1  1781 U 1
   -1  1782 D 4
   -1  1783 U 2
   -1  1784 R 10
   -1  1785 L 9
   -1  1786 D 18
   -1  1787 U 5
   -1  1788 D 7
   -1  1789 R 18
   -1  1790 L 11
   -1  1791 D 2
   -1  1792 U 13
   -1  1793 D 12
   -1  1794 R 10
   -1  1795 D 2
   -1  1796 R 9
   -1  1797 L 3
   -1  1798 D 9
   -1  1799 R 9
   -1  1800 L 17
   -1  1801 R 4
   -1  1802 L 7
   -1  1803 D 16
   -1  1804 L 5
   -1  1805 R 3
   -1  1806 L 8
   -1  1807 U 7
   -1  1808 R 8
   -1  1809 L 1
   -1  1810 D 12
   -1  1811 U 13
   -1  1812 R 8
   -1  1813 D 18
   -1  1814 U 7
   -1  1815 R 6
   -1  1816 D 7
   -1  1817 L 7
   -1  1818 D 8
   -1  1819 R 16
   -1  1820 L 13
   -1  1821 R 6
   -1  1822 U 1
   -1  1823 L 9
   -1  1824 U 9
   -1  1825 L 12
   -1  1826 D 13
   -1  1827 R 18
   -1  1828 L 7
   -1  1829 D 18
   -1  1830 U 17
   -1  1831 R 18
   -1  1832 D 11
   -1  1833 R 1
   -1  1834 D 4
   -1  1835 U 3
   -1  1836 L 7
   -1  1837 D 17
   -1  1838 R 8
   -1  1839 U 11
   -1  1840 D 7
   -1  1841 L 4
   -1  1842 R 12
   -1  1843 U 10
   -1  1844 L 15
   -1  1845 R 14
   -1  1846 U 16
   -1  1847 D 4
   -1  1848 L 10
   -1  1849 U 6
   -1  1850 D 18
   -1  1851 R 7
   -1  1852 U 13
   -1  1853 R 11
   -1  1854 D 14
   -1  1855 L 5
   -1  1856 U 5
   -1  1857 L 7
   -1  1858 R 15
   -1  1859 L 16
   -1  1860 U 6
   -1  1861 D 9
   -1  1862 L 17
   -1  1863 R 4
   -1  1864 L 16
   -1  1865 D 10
   -1  1866 U 16
   -1  1867 D 17
   -1  1868 R 7
   -1  1869 L 16
   -1  1870 U 6
   -1  1871 L 15
   -1  1872 R 13
   -1  1873 U 8
   -1  1874 L 14
   -1  1875 R 12
   -1  1876 U 5
   -1  1877 D 17
   -1  1878 R 13
   -1  1879 D 12
   -1  1880 U 12
   -1  1881 L 16
   -1  1882 R 8
   -1  1883 U 4
   -1  1884 D 6
   -1  1885 U 10
   -1  1886 D 14
   -1  1887 R 18
   -1  1888 L 17
   -1  1889 U 15
   -1  1890 L 5
   -1  1891 U 7
   -1  1892 D 15
   -1  1893 U 10
   -1  1894 R 18
   -1  1895 L 11
   -1  1896 D 10
   -1  1897 R 12
   -1  1898 U 15
   -1  1899 D 11
   -1  1900 U 7
   -1  1901 D 3
   -1  1902 R 2
   -1  1903 U 5
   -1  1904 R 12
   -1  1905 U 15
   -1  1906 R 12
   -1  1907 U 19
   -1  1908 L 6
   -1  1909 U 18
   -1  1910 D 8
   -1  1911 L 7
   -1  1912 D 2
   -1  1913 R 1
   -1  1914 L 16
   -1  1915 D 5
   -1  1916 L 9
   -1  1917 U 11
   -1  1918 L 6
   -1  1919 U 7
   -1  1920 L 2
   -1  1921 D 18
   -1  1922 L 1
   -1  1923 U 19
   -1  1924 D 15
   -1  1925 U 8
   -1  1926 R 5
   -1  1927 U 13
   -1  1928 L 7
   -1  1929 R 14
   -1  1930 U 2
   -1  1931 D 10
   -1  1932 U 16
   -1  1933 D 3
   -1  1934 R 8
   -1  1935 L 10
   -1  1936 D 17
   -1  1937 U 16
   -1  1938 D 6
   -1  1939 R 18
   -1  1940 D 5
   -1  1941 L 5
   -1  1942 D 4
   -1  1943 L 6
   -1  1944 U 17
   -1  1945 D 7
   -1  1946 R 15
   -1  1947 D 5
   -1  1948 R 18
   -1  1949 L 6
   -1  1950 U 15
   -1  1951 L 3
   -1  1952 U 13
   -1  1953 L 15
   -1  1954 R 5
   -1  1955 D 9
   -1  1956 R 11
   -1  1957 U 15
   -1  1958 L 19
   -1  1959 D 11
   -1  1960 L 8
   -1  1961 D 14
   -1  1962 R 7
   -1  1963 L 16
   -1  1964 D 5
   -1  1965 R 13
   -1  1966 D 5
   -1  1967 L 9
   -1  1968 D 3
   -1  1969 L 3
   -1  1970 R 12
   -1  1971 U 17
   -1  1972 R 8
   -1  1973 L 11
   -1  1974 U 2
   -1  1975 R 9
   -1  1976 L 3
   -1  1977 D 6
   -1  1978 L 9
   -1  1979 U 11
   -1  1980 R 6
   -1  1981 U 19
   -1  1982 R 6
   -1  1983 L 12
   -1  1984 U 5
   -1  1985 R 4
   -1  1986 U 4
   -1  1987 L 16
   -1  1988 R 17
   -1  1989 D 12
   -1  1990 U 11
   -1  1991 R 4
   -1  1992 D 11
   -1  1993 U 4
   -1  1994 R 8
   -1  1995 U 9
   -1  1996 R 12
   -1  1997 U 13
   -1  1998 L 2
   -1  1999 D 9
   -1  2000 L 2

diff --git a/2022/09/solution.rs b/2022/09/solution.rs

@@ -0,0 +1,47 @@
   -1     1 #[path = "../lib.rs"] mod lib;
   -1     2 
   -1     3 use std::collections::HashSet;
   -1     4 
   -1     5 fn simulate(len: usize) -> usize {
   -1     6     let mut rope: Vec<(i64, i64)> = vec![(0, 0); len];
   -1     7     let mut visited = HashSet::new();
   -1     8 
   -1     9     for line in lib::iter_input() {
   -1    10         let (dir, steps_s) = lib::split_once(&line, ' ').unwrap();
   -1    11         let steps = steps_s.parse::<u64>().unwrap();
   -1    12 
   -1    13         for _ in 0..steps {
   -1    14             match dir {
   -1    15                 "U" => { rope[len - 1].1 += 1; },
   -1    16                 "D" => { rope[len - 1].1 -= 1; },
   -1    17                 "L" => { rope[len - 1].0 -= 1; },
   -1    18                 "R" => { rope[len - 1].0 += 1; },
   -1    19                 _ => unreachable!(),
   -1    20             }
   -1    21 
   -1    22             for i1 in (0..len - 1).rev() {
   -1    23                 let i2 = i1 + 1;
   -1    24                 if (rope[i2].0 - rope[i1].0).abs() > 1 || (rope[i2].1 - rope[i1].1).abs() > 1 {
   -1    25                     if rope[i1].0 < rope[i2].0 {
   -1    26                         rope[i1].0 += 1;
   -1    27                     } else if rope[i1].0 > rope[i2].0 {
   -1    28                         rope[i1].0 -= 1;
   -1    29                     }
   -1    30                     if rope[i1].1 < rope[i2].1 {
   -1    31                         rope[i1].1 += 1;
   -1    32                     } else if rope[i1].1 > rope[i2].1 {
   -1    33                         rope[i1].1 -= 1;
   -1    34                     }
   -1    35                 }
   -1    36             }
   -1    37 
   -1    38             visited.insert(rope[0]);
   -1    39         }
   -1    40     }
   -1    41     return visited.len();
   -1    42 }
   -1    43 
   -1    44 fn main() {
   -1    45     println!("part1: {}", simulate(2));
   -1    46     println!("part2: {}", simulate(10));
   -1    47 }

diff --git a/2022/09/test.txt b/2022/09/test.txt

@@ -0,0 +1,8 @@
   -1     1 R 4
   -1     2 U 4
   -1     3 L 3
   -1     4 D 1
   -1     5 R 4
   -1     6 D 1
   -1     7 L 5
   -1     8 R 2

diff --git a/2022/09/test2.txt b/2022/09/test2.txt

@@ -0,0 +1,8 @@
   -1     1 R 5
   -1     2 U 8
   -1     3 L 8
   -1     4 D 3
   -1     5 R 17
   -1     6 D 10
   -1     7 L 25
   -1     8 U 20