content: import Aoc
  import Data.Function
  import Data.Map (Map)
  import qualified Data.Map as Map
  
  input = "aj dec -520 if icd < 9\nz dec -500 if b <= 2\nzz dec 628 if z >= 499\ndb dec -818 if u >= 0\nzmq inc -787 if fhy <= -7\nicd dec 770 if z <= 502\nykm dec -317 if uol == 8\nu dec 940 if u != 0\naw dec 633 if zsx <= -5\nu dec -178 if qvk == 0\nb inc -62 if cc <= 1\nbol dec 490 if zsx < -1\ncc inc -575 if aj > 525\nz inc -800 if icd > -775\nw inc 431 if fhy >= -6\naj dec 799 if jt >= -1\njt inc -369 if db > 809\nxdp dec 681 if db <= 816\nykm inc -302 if zsx > -4\ncc dec -636 if cc < 8\nx dec -652 if xdp >= 6\ndb dec -517 if jt < -363\nb dec -157 if kcr > -6\nw inc 688 if y == 0\ncc inc 350 if db > 1328\naj inc -458 if x == 0\ny inc 661 if icd > -767\ndb inc 661 if kcr != -9\ndb inc 266 if z < -297\nuol dec 227 if zmq > -6\ngl inc -675 if esh != 6\nuol dec -664 if esh < 6\ntft dec 822 if zsx <= -10\nuol inc -715 if w >= 1110\ntft dec 330 if aj < -730\nfhy inc -915 if w > 1117\nkcr dec 275 if db < 2268\naw dec -301 if y <= 1\nesh inc 825 if db > 2255\nb inc -729 if zz > -638\naj dec 13 if w < 1122\nicd inc 997 if uol > -282\nkcr dec 836 if xdp != -8\nicd dec 561 if u <= 178\nqvk inc 590 if ykm >= -307\ngl inc -914 if esh == 831\ncc inc -5 if xdp == 0\nz inc 827 if u != 185\naw inc -505 if kcr > -1119\nqvk inc -443 if gl < -671\nzz dec -73 if fhy != -915\nu inc -721 if qvk == 147\nuol dec -830 if icd == -334\nls inc 410 if icd != -344\ny dec 551 if b > -642\nesh dec 907 if uol > 551\nxdp inc 632 if x < 5\naj inc 21 if fhy > -906\nx inc 881 if aj <= -753\nw dec -735 if kcr <= -1109\nesh inc -807 if ls == 410\nz inc -558 if u < -541\nqvk dec -761 if qvk != 151\nx inc -619 if uol >= 544\nzsx dec -530 if db <= 2269\nesh inc 806 if fhy != -909\nuol inc -961 if jt >= -374\ngl dec 934 if u >= -547\nb dec 145 if gl > -1610\nw dec 488 if ykm > -298\nbol inc 803 if aw < -195\ny dec -645 if b < -772\nw dec 235 if xdp <= 636\nx inc -641 if aj > -755\nfhy dec 64 if y <= 98\nqvk inc 107 if ykm < -299\nzmq inc 612 if zz >= -618\ntft dec 13 if esh <= -82\nzz dec -306 if qvk >= 1012\ndb dec 528 if fhy == -979\ntft inc 124 if w == 1619\nkcr inc 339 if zsx > 530\nkcr dec -709 if ykm >= -304\nbol dec 831 if xdp >= 626\nzz dec 45 if z == -31\nzz dec 999 if ykm == -302\nz dec 969 if uol < -406\nz inc 348 if aw >= -206\ndb dec 388 if gl >= -1610\nxdp dec -628 if aj != -743\nuol inc 414 if cc == 981\naj inc 642 if uol != -4\nzmq dec -163 if icd <= -334\nls dec -199 if tft >= -222\nbol dec -775 if ykm != -302\ny inc 43 if z < -650\nz dec 239 if xdp > 1250\nzz dec 961 if ykm == -302\nesh inc 295 if kcr == -402\nbol dec -897 if bol > -31\nu inc -252 if ls != 610\nbol inc -379 if xdp > 1252\nb inc -521 if xdp > 1262\nzmq dec -244 if z < -881\nuol inc -210 if uol >= 3\nesh inc 210 if zmq < 417\naj inc -888 if ykm == -302\ny dec -515 if fhy < -978\nzsx inc 23 if ls >= 610\njt dec -810 if fhy == -979\ny inc 620 if zz != -2327\nykm dec 766 if w < 1621\njt dec -817 if db == 1346\nzmq dec 237 if aj <= -993\nqvk dec -587 if zz > -2330\naj dec 856 if qvk >= 1595\nzz dec -316 if y != 647\nuol dec 992 if kcr <= -397\njt inc 806 if esh < 424\njt dec -276 if ls == 613\nb inc -154 if aj < -1851\naj inc 132 if jt != 2059\nx dec 618 if jt >= 2074\ntft dec 26 if uol == -1197\ngl dec 505 if xdp < 1268\nykm inc 847 if fhy < -969\nu inc 510 if x <= -1260\nicd inc 970 if zsx <= 535\ngl dec -387 if tft < -238\nb dec 207 if xdp < 1266\naj inc 757 if aj > -1718\ndb dec 330 if qvk == 1602\nqvk dec 589 if u > -290\ngl dec 94 if tft <= -237\nz dec 699 if kcr <= -403\nbol inc -82 if xdp >= 1258\ny inc -422 if qvk <= 1018\nzz dec -13 if zmq < 175\nxdp dec 967 if zsx <= 539\nkcr inc -290 if aj > -1727\naj inc 714 if w > 1615\nu inc -984 if bol != 418\nykm inc -572 if icd >= 628\nicd dec 955 if jt > 2055\ndb inc -83 if bol < 417\nw inc 882 if uol != -1190\nx inc -945 if db <= 924\nls inc 207 if gl >= -1830\ntft dec -178 if esh != 429\njt dec -845 if y == 230\nx dec 842 if ykm >= -788\naj dec -943 if aj > -1009\ndb inc 785 if z == -889\nzsx inc -917 if icd < -318\nls inc -757 if ls != 816\nfhy dec 872 if xdp <= 294\nxdp dec 937 if gl == -1821\nz dec 771 if fhy != -1851\nuol inc 227 if fhy >= -1852\nuol dec -225 if db > 926\naj inc -60 if gl == -1821\nzz inc 494 if kcr == -695\nkcr inc 270 if zmq == 170\nxdp inc -702 if db > 935\ncc inc -158 if kcr != -413\nykm inc 351 if cc <= 832\nzmq inc 784 if ls <= 818\njt inc -222 if jt <= 2910\nxdp dec 495 if cc < 833\nzmq dec 759 if jt > 2678\nb dec -425 if w == 2501\nykm dec 280 if uol == -745\nuol dec -461 if gl != -1828\njt dec -791 if jt <= 2690\nqvk dec 334 if zz == -1998\naj dec 905 if tft >= -74\nfhy dec -537 if y >= 221\nx dec 183 if qvk != 684\nu dec 524 if aw == -204\nz dec 537 if xdp >= -1145\nuol inc -806 if zz > -1993\nu inc -54 if zmq > 186\ngl inc -715 if kcr >= -423\njt inc -816 if esh >= 417\nesh inc -499 if tft != -66\ny inc -269 if qvk >= 670\nuol inc -563 if gl < -2526\naw dec -396 if zsx > -388\njt inc 237 if kcr <= -415\nu inc -700 if xdp < -1136\nesh inc 109 if ls != 806\ndb inc -58 if b > -719\nuol inc -975 if b < -711\nuol inc -374 if ls != 816\ndb dec 24 if esh > 34\nxdp inc 15 if x <= -1448\nzmq inc -399 if jt >= 2900\nkcr inc -778 if uol < -1823\naj inc 47 if u != -2552\ngl inc -803 if aw != 184\nuol inc 185 if gl == -3339\nfhy inc 147 if esh >= 41\nw dec 442 if zsx != -386\nw dec 416 if fhy > -1306\nicd dec -917 if icd > -324\njt inc -42 if esh >= 26\naw inc 184 if bol > 402\nls inc -845 if uol >= -1639\nbol inc -276 if zz >= -1992\nkcr inc 183 if zmq != 195\naw dec 496 if ls <= -24\nw inc -358 if aw > -128\njt dec 954 if x >= -1435\nxdp inc -682 if zz > -2004\nqvk inc -781 if db >= 870\ncc dec 883 if uol < -1627\nfhy inc 313 if ykm >= -724\nzmq dec -5 if db == 875\nu inc 663 if db != 885\nxdp dec 423 if bol < 411\naw dec -740 if bol == 408\ncc inc 184 if xdp > -2248\nxdp dec 129 if tft < -57\naw inc 647 if xdp <= -2366\nicd inc 711 if xdp <= -2369\nu dec 268 if esh < 23\nb inc -506 if bol >= 402\nuol inc -642 if fhy >= -1004\nesh inc 97 if ykm > -732\nx dec 678 if fhy != -998\nw dec -304 if cc == 124\nz dec 386 if gl == -3339\nesh dec -686 if y <= -33\nz inc -302 if u >= -1888\naw dec 39 if gl >= -3346\nuol inc 24 if b == -1221\nb inc 764 if z != -2116\nzz inc -910 if tft >= -70\nuol inc 317 if zz < -2907\nz inc 5 if aj >= -983\ncc dec -927 if bol != 413\nbol dec 802 if jt != 2859\nls inc -308 if b != -1221\nbol dec 571 if icd <= 1310\naw dec -198 if qvk >= -108\naw dec 787 if x < -2117\njt dec 329 if gl <= -3330\nw dec 364 if kcr != -429\nxdp dec -879 if zz >= -2915\ncc dec -991 if cc == 1051\nicd dec -248 if aj > -973\njt dec -39 if jt > 2525\nz inc -546 if x < -2113\nb dec 772 if gl > -3334\nuol inc 961 if y > -33\njt dec -64 if tft > -68\nw inc 366 if gl <= -3331\ntft inc 455 if y == -39\nu dec 387 if jt > 2638\nuol inc 305 if icd >= 1301\nx inc 41 if y == -39\ncc inc -968 if xdp <= -1494\ngl inc -579 if uol < -1629\nxdp dec -290 if ls == -29\nx inc -971 if z != -2667\nu inc 666 if gl < -3910\nfhy dec 394 if qvk > -101\ny dec -927 if fhy != -997\nuol inc 593 if esh >= 808\nx inc 982 if x <= -3049\nuol inc -38 if ykm >= -730\ny inc -499 if zsx > -396\nesh inc -299 if zsx == -387\nbol inc 442 if uol == -1076\nbol dec 93 if zsx <= -397\nw dec 195 if aj > -990\njt inc -612 if uol == -1078\naj inc -391 if ykm != -727\nykm inc -222 if jt < 2011\nkcr inc 138 if aj >= -1362\nzmq dec -962 if w == 1812\nzmq inc -769 if zsx < -396\ncc dec -843 if tft <= 396\nykm inc 915 if db != 873\ncc inc -684 if zsx == -387\ny dec -586 if uol == -1073\ncc dec 944 if y >= 388\naw dec -757 if aw == 639\ngl inc 515 if zmq == 1162\nfhy inc -87 if u <= -1209\nicd inc 954 if ls <= -20\nls inc -267 if zz > -2916\nbol inc -97 if ykm <= 202\nu inc 224 if xdp >= -1212\nxdp inc 306 if aw >= 1398\nls dec 86 if kcr < -417\nkcr inc -482 if bol == -1062\nxdp dec -461 if aw < 1398\naj dec 380 if jt != 2019\ndb inc -382 if zmq != 1162\naw dec -702 if qvk < -92\ncc inc 445 if bol == -1062\nqvk dec -339 if kcr > -912\ndb inc 85 if b != -1228\nzsx inc -418 if ls == -382\nxdp dec -46 if ls < -379\ngl dec -803 if icd <= 2269\njt inc -670 if icd > 2260\nz inc -515 if qvk != 237\nxdp dec 630 if db <= 952\nesh inc 360 if zmq != 1162\nuol dec 237 if x >= -2075\nuol inc 548 if db <= 967\nxdp dec 868 if zmq >= 1166\ny inc 970 if esh != 509\nkcr dec -870 if uol >= -772\naw inc -396 if zz < -2903\nykm inc -1 if ykm != 187\naj inc -942 if y < 1363\nicd inc 721 if ykm < 195\nb dec 840 if zmq >= 1156\nuol dec 765 if w < 1813\nbol dec 436 if fhy != -1086\ny inc 519 if zsx == -805\nz inc 1 if icd <= 2993\nzmq dec 76 if zsx <= -796\nxdp dec -286 if tft > 380\ncc dec -854 if xdp <= -410\nesh inc 663 if zsx != -800\nicd dec -575 if db > 957\ncc dec 558 if db != 962\nu dec 158 if zmq < 1087\nxdp inc -173 if qvk == 237\ndb dec 366 if aw != 1697\ny inc -392 if zz < -2900\nb dec 657 if tft != 391\ngl dec 622 if fhy <= -1095\nls dec -852 if w > 1810\naj inc -640 if u <= -1161\nykm dec 754 if w < 1819\ndb dec -406 if ls != 479\nz dec 285 if qvk <= 235\ny inc 663 if cc < 1031\nfhy dec 423 if icd < 3566\nx dec 499 if esh > 1177\nuol inc -777 if qvk == 237\nw inc -536 if z == -2656\nfhy dec -834 if aj == -2314\naj inc -383 if ykm >= -564\naw inc -397 if jt >= 1343\njt inc 675 if bol == -1498\nesh inc 579 if u == -1152\nbol dec 428 if zz <= -2900\nqvk dec 565 if icd != 3557\ndb dec 36 if b != -2715\nw dec 334 if u > -1160\nykm inc 109 if cc >= 1034\nu inc -461 if db == 964\nz inc -624 if gl > -2610\nw dec -264 if aj != -2691\ncc inc -871 if qvk <= -322\nesh dec 383 if x > -2574\njt dec -695 if zsx >= -814\naj dec 943 if esh < 1378\ntft dec -604 if x != -2568\nzmq dec -912 if y <= 2150\nzmq inc 428 if jt < 2727\nbol dec -712 if aj > -3646\naw dec -140 if ykm <= -561\ncc dec 265 if tft <= 380\nkcr inc -202 if fhy <= -670\nqvk dec 732 if kcr < -233\nykm dec -788 if y > 2144\nb dec -901 if fhy >= -683\nzsx dec 378 if bol <= -1212\nls inc 311 if b >= -1824\ntft dec -354 if icd < 3568\naj dec 732 if icd > 3556\nzmq inc 594 if zz > -2913\nw inc -255 if tft < 752\nykm dec 805 if y < 2155\nls inc -48 if ls <= 790\nu dec 607 if fhy <= -683\nb dec -616 if ls > 728\nbol inc -406 if tft <= 746\nx inc 753 if w < 945\nxdp dec 831 if aw < 1438\nbol dec -760 if uol < -2307\ncc dec 640 if tft > 735\nzsx inc 317 if b >= -1204\nqvk inc 966 if u == -1613\nx dec -201 if ls < 738\naj dec -358 if gl != -2594\ntft inc -629 if b > -1194\nqvk inc -603 if zsx <= -859\nykm inc 361 if zsx >= -870\nuol dec -349 if bol < -855\nz dec -770 if fhy <= -668\ngl inc 707 if zsx != -864\nx dec -635 if w <= 949\nw dec 888 if ls >= 729\ngl inc -131 if icd == 3559\ntft inc 313 if esh == 1375\naj dec 383 if fhy < -674\naw inc 503 if zsx != -872\nkcr dec 747 if zz <= -2912\nls dec 600 if db == 968\nzsx dec 627 if u != -1612\nykm dec 83 if u <= -1615\ngl dec -853 if gl <= -2016\nx dec -385 if db != 968\ntft dec -191 if ls != 733\nw inc 931 if aj != -4397\nuol inc 362 if icd != 3569\nbol dec -420 if zz > -2910\nb inc 788 if uol > -1599\nxdp dec -603 if ls != 738\naw inc -247 if icd <= 3568\nykm inc -384 if kcr < -230\nicd inc -264 if x <= -1974\nb inc -673 if esh < 1375\nbol inc -997 if qvk > -699\nb inc -948 if uol > -1608\ny inc 522 if zz != -2916\nls inc 129 if tft != 1050\ngl dec -379 if w > 57\nx dec -562 if icd >= 3291\nb inc 83 if gl != -790\nzmq inc 899 if bol != -1437\ntft inc 950 if b == -1278\nzz dec 689 if zz >= -2912\nicd dec 107 if jt != 2719\nbol inc 608 if w >= 64\nxdp dec 433 if ykm >= -603\ntft dec 809 if zmq > 3011\nz dec 41 if u >= -1604\nqvk inc 274 if x < -1416\nx inc -223 if fhy <= -675\nkcr dec 362 if fhy == -677\ncc inc 72 if db >= 956\nesh inc -197 if icd < 3302\nxdp inc -258 if esh >= 1178\ny inc 764 if aj > -4399\njt dec -269 if qvk >= -432\nfhy inc -648 if bol < -1443\ncc inc 41 if fhy <= -671\nesh dec -991 if icd >= 3287\nqvk inc 883 if u >= -1622\naw inc -611 if u <= -1604\nls dec -353 if zz > -3607\nx dec 731 if y == 3435\nesh dec 129 if aj >= -4392\ngl dec 0 if y == 3435\ncc dec 818 if qvk == 460\nykm dec 859 if db >= 962\nuol inc -277 if fhy >= -671\nzsx dec 255 if zz == -3597\ndb inc -431 if zz < -3589\naw inc -736 if ls < 1221\nkcr dec 522 if xdp == -675\nw dec -27 if icd <= 3298\ntft dec 3 if uol == -1598\nls inc 809 if fhy != -678\nls dec -675 if b > -1279\njt dec 127 if x == -2364\naw dec -627 if jt > 2979\ny inc -947 if zz < -3598\nykm inc -594 if kcr >= -606\nbol dec -150 if ls > 2698\nbol dec 162 if b <= -1275\naw inc 497 if aw <= 984\ntft dec 596 if jt == 2988\nzsx dec -116 if uol != -1594\nbol dec 115 if bol == -1449\ntft inc -222 if x >= -2380\nzmq dec -334 if qvk != 469\nbol dec -282 if cc > -1188\nls dec 232 if ls < 2709\nx dec -984 if z >= -2518\naj inc -153 if gl != -800\ngl dec 635 if aw == 1478\nicd dec -503 if y < 3442\njt inc -788 if z < -2507\nb inc 221 if icd == 3798\ntft dec 998 if uol == -1598\naj inc 79 if xdp >= -677\nesh dec 528 if qvk >= 453\nw dec -591 if ykm != -2057\nfhy inc -12 if cc <= -1182\nykm inc 9 if x >= -1399\nqvk dec 827 if zsx != -1641\naw dec 735 if gl > -1418\nzsx inc 736 if y < 3437\ndb inc 123 if fhy > -693\ny inc 570 if tft <= -614\nicd inc 689 if z < -2505\nzsx dec 66 if gl != -1432\nicd inc 879 if db >= 655\naw inc -423 if zsx >= -968\ntft inc -896 if x != -1388\njt dec 70 if zsx <= -961\ncc dec -696 if z > -2503\nxdp inc -937 if jt == 2130\njt dec 670 if cc > -1188\nw dec 67 if gl < -1419\nqvk dec 727 if zz == -3597\nesh dec -916 if w == 614\nqvk inc 810 if db < 663\nzmq dec -298 if fhy >= -690\ny inc -276 if z > -2511\nfhy inc -768 if aj >= -4476\nzsx dec 825 if cc != -1185\nz inc 844 if zsx < -1777\naw inc 279 if aw == 1055\nqvk dec 101 if u == -1613\ntft dec -134 if cc <= -1188\ny dec 364 if aj == -4471\nzz dec -436 if y <= 3372\nu inc -367 if aw < 1336\nw dec -699 if aj > -4478\nz dec -759 if u != -1985\nykm inc -36 if qvk < -384\nls dec 3 if fhy != -1447\nw dec -604 if w == 1313\nu inc 249 if tft != -1516\nuol inc -353 if gl >= -1435\njt dec -684 if qvk == -385\nls inc 481 if icd >= 5362\nb dec -182 if gl >= -1429\nu dec 670 if ykm > -2084\nzsx inc 818 if fhy <= -1449\nx dec -786 if ls == 2945\nzsx dec 664 if xdp == -1609\nb inc -784 if w == 1917\nb dec -860 if bol <= -1291\nesh dec -906 if z < -898\nykm inc 766 if aw < 1336\ncc dec -81 if b != -1667\nz dec 374 if y <= 3365\nb dec -360 if jt == 2146\nicd dec -818 if zmq < 3662\nu dec -199 if bol == -1276\nbol inc 179 if cc <= -1102\ny inc -950 if zmq <= 3660\nzmq inc -525 if u >= -2404\nfhy inc -54 if zmq > 3119\nz inc 366 if cc <= -1097\nls inc -232 if tft < -1517\ny inc -447 if x >= -606\nkcr inc -593 if xdp >= -1607\ncc dec -722 if z >= -909\nqvk inc 751 if uol > -1956\nz dec -699 if gl <= -1428\nw inc 205 if b > -1652\nx inc -833 if uol > -1961\nz inc -299 if aj >= -4472\nw inc 985 if db < 654\nuol dec 528 if zz <= -3159\nw inc 286 if uol == -2479\ngl inc 180 if kcr == -598\nxdp inc 94 if bol <= -1098\naj inc -171 if x != -1445\naj inc -551 if aj < -4638\ndb dec 426 if u == -2398\nw inc 591 if aw <= 1343\njt dec -806 if tft == -1519\nxdp inc -392 if bol > -1109\nzz dec 642 if uol >= -2481\ntft dec 908 if db > 648\nqvk dec 264 if jt == 2950\nesh inc -650 if gl <= -1242\nzsx dec 971 if bol != -1111\ny inc -355 if kcr <= -598\nbol dec -741 if xdp > -1915\nz inc -225 if icd >= 6184\nykm inc -262 if zz != -3802\nzmq inc 102 if aj <= -5188\nesh dec 442 if zsx >= -2610\nz inc 501 if w < 2801\nuol inc 138 if icd >= 6179\nx dec -203 if uol >= -2345\nzz inc 3 if fhy <= -1511\nzmq dec -78 if tft >= -2433\nbol inc -798 if b != -1669\nfhy inc -916 if jt <= 2952\ncc dec -360 if uol != -2341\nz inc -603 if jt >= 2944\nesh dec -363 if fhy >= -2433\nzmq inc 430 if uol != -2343\nykm inc -896 if u > -2404\nfhy inc 265 if bol != -1168\nz dec -390 if icd < 6188\nzmq dec -432 if bol > -1164\nykm inc 878 if jt <= 2950\ncc dec 850 if zsx < -2601\nicd dec -82 if ykm < -1592\nxdp inc 219 if u > -2411\naw dec 203 if xdp != -1689\ny inc -351 if aw != 1133\nbol dec -634 if gl > -1250\nb dec 97 if cc >= -1963\naw dec -462 if zmq < 4175\nfhy inc 439 if zmq > 4176\nfhy dec 120 if cc <= -1954\nbol dec -539 if gl <= -1245\nykm inc -165 if esh > 2730\nzmq dec 420 if b <= -1750\nicd dec -304 if z >= -1160\nicd dec -666 if z > -1156\nykm dec -845 if fhy < -2272\nbol dec -664 if jt >= 2944\nu dec 998 if u != -2404\nzsx dec -798 if fhy < -2277\nykm inc 318 if uol != -2332\nfhy dec 49 if ls >= 2707\nu inc 795 if zz >= -3806\ntft dec 261 if jt == 2950\nkcr dec -168 if u <= -2604\nqvk dec 69 if aw > 1592\nicd dec -74 if gl < -1239\nx dec 564 if esh < 2736\ncc dec 745 if uol != -2351\nykm dec -821 if db > 654\ntft inc -778 if u == -2597\nbol inc -346 if gl < -1240\nqvk inc -900 if bol != 340\nicd dec 603 if tft != -2698\nqvk inc 189 if kcr == -430\nbol inc 532 if qvk >= -680\nicd inc -430 if tft >= -2696\nzsx inc 105 if x == -1798\nx inc 503 if esh > 2728\nx inc -108 if esh > 2731\nkcr inc -691 if icd >= 6273\nw inc -426 if z < -1158\ngl dec -636 if zsx < -1700\nbol inc -787 if xdp < -1680\nw dec 131 if gl == -611\nuol dec -303 if gl > -613\nbol dec 987 if aj == -5193\ndb dec 17 if aw != 1597\nzz inc -52 if jt == 2950\nu inc 869 if x >= -1407\njt inc 793 if kcr == -1121\ngl dec -917 if b == -1752\nbol inc -161 if kcr > -1131\nesh dec -3 if zsx != -1698\naj inc 84 if w <= 2671\nykm inc -265 if w > 2667\nzsx inc -292 if qvk == -678\nicd inc 988 if qvk == -678\nls inc 727 if w == 2663\nesh inc -481 if fhy == -2331\nuol inc -106 if esh > 2253\nfhy inc 728 if aj >= -5118\nu dec -745 if y >= 1269\nz inc 769 if ls == 3440\ny dec -203 if tft > -2689\nzmq dec 886 if fhy > -1608\nykm inc -988 if zsx <= -1994\ngl dec 797 if xdp <= -1684\nicd dec 186 if ykm >= 216\naw dec -840 if qvk > -676\ncc dec -937 if aw == 1593\naj inc 684 if kcr != -1112\nxdp inc 545 if z > -383\njt dec -521 if z == -382\nqvk dec -108 if u < -1725\nz dec 672 if tft == -2688\njt inc 288 if uol <= -2138\nykm inc 829 if xdp < -1137\nzz inc 87 if fhy > -1604\nkcr dec 354 if aw == 1593\nz dec 230 if fhy != -1603\nxdp inc 505 if ls < 3442\nqvk inc -356 if u == -1735\nuol dec -415 if fhy <= -1602\ndb dec -850 if z == -1054\nfhy inc -597 if tft >= -2691\nbol inc 764 if ykm < 1061\nb dec -555 if ykm <= 1054\ngl inc 665 if w >= 2662\ny dec 489 if kcr < -1467\naw inc -883 if gl == -735\nw dec 62 if u != -1727\ndb dec 672 if gl <= -739\nzsx dec 905 if ykm == 1052\nx dec -158 if esh < 2260\nxdp dec -417 if u <= -1740\nfhy inc -597 if aj >= -4431\ngl inc 873 if db < 818\ncc dec 176 if aw > 1587\nuol inc 509 if zmq == 2863\nxdp dec -463 if tft > -2691\ntft inc 840 if tft <= -2684\naj inc -284 if zsx < -2897\nzsx dec 940 if gl != 124\nw dec 691 if zmq > 2870\nx inc -371 if y > 968\nykm inc -953 if qvk == -926\ncc inc -775 if u <= -1733\nz dec 526 if icd < 7085\ntft dec -176 if zz == -3765\nb dec 601 if z > -1590\nzsx dec 600 if zsx < -3837\nzmq dec -655 if zmq != 2858\ny inc 940 if qvk >= -933\nbol inc 534 if zz != -3765\nw inc -625 if b <= -1799\nx inc 242 if ykm != 107\nzz inc -797 if zz == -3765\naj inc -831 if esh > 2251\njt inc 593 if tft >= -1678\nls inc -634 if b < -1800\naj inc -828 if zz == -4562\nls dec 490 if u != -1735\naw dec -351 if qvk > -932\nzmq inc -846 if esh != 2252\nzsx dec 908 if esh == 2256\nz dec -726 if z == -1580\njt dec 919 if xdp < -175\nb dec -74 if ls <= 2807\njt dec 372 if esh != 2257\nls inc -704 if qvk == -928\nuol inc -484 if ls != 2800\nesh inc -658 if zmq >= 2680\nw dec -464 if y == 1916\nw inc -363 if zsx > -5352\nfhy dec -960 if jt == 4773\njt inc -362 if aw <= 1951\nesh inc 757 if y < 1918\nu dec 534 if y != 1907\nxdp inc -708 if w >= 2080\nykm inc -552 if xdp <= -173\ngl inc 184 if aw > 1945\nxdp inc -347 if aj == -6376\nuol inc -416 if y < 1919\nykm inc 766 if kcr > -1483\nb inc 890 if zsx > -5339\nx dec -801 if db == 817\nicd inc -735 if aw < 1948\nx dec 865 if z <= -851\nw dec -379 if kcr == -1475\nls dec 657 if icd < 6346\nykm dec -288 if gl <= 138\nbol dec -306 if b != -1730\nu dec -734 if zmq > 2670\naj dec -401 if zmq <= 2681\ndb inc 141 if uol > -2125\nbol dec 746 if db != 953\nzz dec -850 if kcr > -1478\nesh inc 914 if aw >= 1939\nfhy inc -420 if qvk <= -917\nz dec -455 if b < -1721\naw dec 620 if b <= -1721\nzmq inc 447 if esh <= 3930\nykm dec -241 if db != 958\nicd dec -223 if w != 2456\njt inc -412 if gl < 132\nesh inc -185 if xdp == -175\ntft inc -392 if zz < -3711\nx inc 610 if tft != -2064\nzmq inc -261 if aw < 1333\nqvk dec -606 if fhy == -2257\nuol inc -717 if fhy != -2261\ny dec 878 if zz >= -3719\ndb dec -246 if uol == -2838\ndb dec -331 if x > -1441\nzsx inc 595 if cc == -2714\naw inc -118 if xdp != -175\ny dec -828 if bol == -748\naj inc 135 if jt < 4001\nesh inc -512 if fhy <= -2250\nzz dec -43 if jt >= 3991\ngl inc -244 if icd == 6344\nzz dec -875 if aj != -5832\nzz dec -182 if esh <= 3225\nuol inc 98 if u > -1538\nzz inc 157 if zmq < 2862\ncc inc -371 if kcr == -1475\njt inc 807 if jt < 3995\nu inc -76 if qvk != -313\nkcr dec 134 if fhy <= -2254\ndb inc -724 if fhy >= -2264\nicd inc -985 if kcr == -1609\ngl dec -159 if aw != 1316\nzmq dec -15 if b != -1718\naw inc -608 if zsx > -4745\ny inc 455 if zmq == 2873\ncc inc 360 if ls != 2153\nzmq inc -602 if esh < 3221\ngl inc -940 if ls < 2154\naj inc -922 if z >= -391\nls inc -532 if icd >= 5368\nw inc 416 if zmq == 2873\njt inc 941 if jt <= 4003\nzmq dec 826 if tft == -2064\nzsx dec -864 if gl > -903\nxdp dec 29 if esh == 3230\nzsx dec -543 if tft == -2064\nxdp dec -811 if jt <= 4945\ny inc -557 if zz <= -3511\ncc dec -134 if zsx <= -3340\nfhy inc 704 if ls < 2153\ngl dec 927 if uol == -2739\nw dec -967 if x == -1438\ngl dec -743 if zsx >= -3347\nw dec 852 if db != 561\nkcr inc -217 if zz != -3507\nuol dec -920 if y >= 1774\nls dec 426 if w != 2987\nicd dec -51 if kcr != -1819\nxdp dec 173 if y != 1757\nzmq inc -306 if zz != -3519\nfhy dec -194 if kcr == -1826\njt inc 827 if y < 1759\nb dec -391 if zsx != -3342\ny dec -934 if uol > -2745\nqvk inc -803 if zmq > 1733\nuol dec -818 if gl >= -1084\nz inc -776 if jt <= 4944\nb dec -145 if zsx == -3344\nzz inc 493 if aj != -5830\nfhy inc 376 if fhy >= -1368\njt inc 292 if gl > -1089\nu inc -58 if kcr > -1831\nx inc -611 if bol == -748\ny dec -509 if db == 565\nzsx dec 922 if cc < -2585\nzmq dec -994 if z > -1179\njt inc 3 if gl == -1079\nu inc 726 if xdp != 437\nu inc -771 if icd == 5415\nw dec 382 if w <= 2987\nb dec 474 if z == -1175\nbol dec -307 if ls != 2149\nqvk inc 351 if xdp != 434\nfhy inc 236 if fhy >= -986\nx dec -791 if jt < 5245\ny inc 744 if bol != -744\nykm dec 558 if z > -1183\nxdp dec -997 if kcr < -1816\ngl dec 741 if b != -1666\nb dec 851 if b <= -1657\nu dec 962 if zz <= -3010\naw dec 266 if ls >= 2145\nzz inc 157 if zmq > 2729\nkcr inc -416 if cc > -2589\ngl dec 174 if xdp > 1425\nu dec -179 if jt > 5234\ny inc 759 if icd < 5409\nykm dec -195 if jt >= 5233\nb dec 528 if zmq > 2742\ndb inc -145 if ykm < 247\ndb dec -937 if fhy > -747\nu dec -621 if kcr != -1835\ngl inc 652 if zsx != -4271\nb inc 941 if qvk == -1123\nls dec 636 if gl >= -601\nb inc -571 if fhy == -747\ndb inc 121 if y >= 3946\nzsx dec -622 if u == -1105\nb inc 804 if aw != 1058\ngl dec -429 if qvk == -1123\ntft inc 852 if aj != -5829\nesh inc -56 if tft < -1209\naj inc 287 if zz != -2862\nb inc 925 if zsx >= -3648\nb dec 938 if cc == -2589\nfhy inc 441 if aj < -5824\ny dec -326 if uol != -1914\nb dec -499 if kcr >= -1828\nicd inc -837 if kcr != -1829\nesh dec 807 if u == -1105\nicd dec 925 if w <= 2611\nu dec 100 if z < -1173\njt dec 227 if esh <= 2374\nb dec 531 if w >= 2612\nkcr dec 730 if esh < 2371\nz dec 520 if zsx < -3640\nqvk dec 793 if w >= 2600\nykm dec 964 if zz >= -2870\nkcr dec -977 if fhy <= -312\nu inc 757 if xdp < 1441\nls inc -209 if ykm < -718\nw dec -396 if jt == 5008\nuol inc -480 if ykm < -720\ngl dec 792 if tft >= -1220\nz dec -208 if bol < -745\nxdp dec 407 if zz == -2858\nqvk dec 744 if kcr > -2559\ndb inc 355 if fhy > -313\ncc inc -961 if z >= -1496\ngl dec 607 if z <= -1480\nuol dec 121 if zsx != -3635\nqvk dec 512 if cc == -3552\nbol inc 698 if zz != -2861\nicd inc -729 if icd < 3657\ncc inc 589 if zz > -2858\nicd inc -272 if ls != 1308\nw inc 20 if qvk >= -3174\nkcr inc 585 if zmq != 2732\nkcr inc -319 if aj > -5834\nzz dec -136 if b < -721\nls inc 480 if w > 3017\nbol inc -254 if esh != 2375\nzmq dec 850 if zsx != -3648\nxdp inc -799 if db > 899\nu dec 981 if u == -455\nesh dec 546 if zmq <= 1878\nb dec -849 if kcr <= -2290\nqvk inc -805 if ls == 1784\njt dec -180 if jt != 5008\ncc dec -109 if x >= -1254\nzsx inc 306 if xdp == 1431\nzsx inc 763 if zmq <= 1894\naj dec 5 if cc < -3551\nesh inc -506 if zmq == 1885\naw dec -199 if ls != 1789\nx inc -884 if zsx >= -2568\nkcr inc 132 if zmq >= 1888\nbol dec -952 if zsx <= -2577\nz dec -160 if aj < -5834\naj dec 432 if aw != 1251\ncc dec -169 if kcr <= -2287\ncc dec 312 if zsx >= -2583\nb dec -335 if gl > -1564\nzz dec -163 if z == -1327\nls inc -427 if b != 118\nykm dec 298 if aj < -6263\nx inc -442 if gl <= -1571\nykm dec 566 if zsx != -2579\nxdp inc 893 if icd != 2649\nu dec -422 if qvk >= -3977\nz inc -598 if bol >= -297\nzz inc -794 if z >= -1324\nfhy inc 131 if ykm > -1596\nw inc 472 if zmq == 1895\nuol dec 590 if esh != 1867\nz inc -68 if w != 3018\nu inc -636 if w <= 3030\nicd dec 355 if tft <= -1206\ntft inc 290 if x == -1700\ny inc 257 if ls >= 1356\nesh dec -920 if z >= -1401\nx dec -607 if u > -669\nxdp inc 339 if fhy >= -183\nls dec 978 if gl > -1579\nx inc -159 if aw <= 1262\nzz inc 104 if jt == 5008\nqvk inc 606 if xdp < 2666\ntft dec 668 if u > -672\ngl inc 619 if cc != -3687\nqvk dec 314 if y == 4534\nkcr inc 963 if cc == -3695\nqvk inc 38 if u >= -668\nls inc -63 if cc != -3695\nz dec 916 if qvk < -3638\naj dec -649 if jt != 5012\nfhy dec -227 if cc < -3688\nqvk dec -846 if tft >= -1596\nesh dec -886 if fhy <= 55\njt dec -444 if fhy > 42\nesh inc -671 if icd != 2284\nqvk dec 620 if aw < 1258\naj dec -202 if z > -2321\nx dec -318 if u > -664\ngl dec -295 if zz <= -2458\naj dec 878 if aj < -5409\nls inc -918 if z <= -2302\nqvk inc -520 if zmq >= 1883\nzsx dec -459 if db < 898\nzmq inc 840 if zsx > -2122\nqvk inc 351 if aj > -6299\nzmq dec -362 if b == 126\nu dec -833 if ls != -541\nicd dec -858 if cc <= -3694\nuol dec -884 if icd <= 3142\ny dec -274 if cc > -3700\ndb inc 718 if jt <= 5458\njt dec 399 if fhy == 51\ngl dec 562 if qvk <= -3593\ndb inc 491 if kcr > -1328\nxdp inc -760 if jt == 5452\ntft dec -785 if gl >= -651\naw inc -316 if zmq >= 3088\naw dec -107 if db == 2099\njt dec 377 if uol < -3102\ndb inc -208 if tft != -1586\nzmq dec 822 if w != 3011\naj inc -119 if gl >= -660\ncc inc 84 if zsx >= -2125\nzmq inc 396 if ls >= -540\nesh inc 553 if y > 4806\nu dec -659 if kcr > -1330\ndb dec 455 if gl == -657\ndb inc -223 if esh <= 3551\nls inc 245 if w != 3020\nzmq inc 495 if uol >= -3121\ntft inc -704 if icd == 3150"
  
  type Inst = (String,String,Int->Bool,Int)
  
  parseInput :: String -> [Inst]
  parseInput = map parseLine . lines
    where
      parseOp "<"  v = (>)  v
      parseOp "<=" v = (>=) v
      parseOp ">"  v = (<)  v
      parseOp ">=" v = (<=) v
      parseOp "==" v = (==) v
      parseOp "!=" v = (/=) v
      parseLine s = case words s of
        [dst,"inc",v,"if",src,op,cond] -> (dst, src, parseOp op (read cond), read v)
        [dst,"dec",v,"if",src,op,cond] -> (dst, src, parseOp op (read cond), -1 * read v)
        _ -> error "unreachable"
  
  runInst :: (Map String Int, Int) -> Inst -> (Map String Int, Int)
  runInst (regs, totalMax) (dst, src, cond, v) = (newRegs, maximum $ totalMax : Map.elems newRegs)
    where
      shouldExec = cond $ Map.findWithDefault 0 src regs
      newRegs = if shouldExec then Map.insertWith (+) dst v regs else regs
  
  solveParts :: Int -> (Int,Int)
  solveParts _ = (maximum $ Map.elems regs, totalMax)
    where (regs, totalMax) = parseInput input & foldl runInst (Map.empty,0)
  
  main = Aoc.timer solveParts
  