summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--2021/day-01/README.org166
-rw-r--r--2021/day-01/day-01.raku23
-rw-r--r--2021/day-01/input2000
3 files changed, 2189 insertions, 0 deletions
diff --git a/2021/day-01/README.org b/2021/day-01/README.org
new file mode 100644
index 0000000..c1a4870
--- /dev/null
+++ b/2021/day-01/README.org
@@ -0,0 +1,166 @@
+#+title: Day 01 - Sonar Sweep
+#+setupfile: ~/.emacs.d/org-templates/level-3.org
+#+html_link_up: ../../index.html#2021
+#+options: toc:1
+#+export_file_name: index
+
+* Puzzle
+
+- This puzzle is taken from: https://adventofcode.com/2021/day/1
+
+You're minding your own business on a ship at sea when the overboard
+alarm goes off! You rush to see if you can help. Apparently, one of the
+Elves tripped and accidentally sent the sleigh keys flying into the
+ocean!
+
+Before you know it, you're inside a submarine the Elves keep ready for
+situations like this. It's covered in Christmas lights (because of
+course it is), and it even has an experimental antenna that should be
+able to track the keys if you can boost its signal strength high enough;
+there's a little meter that indicates the antenna's signal strength by
+displaying 0-50 stars.
+
+Your instincts tell you that in order to save Christmas, you'll need to
+get all fifty stars by December 25th.
+
+Collect stars by solving puzzles. Two puzzles will be made available on
+each day in the Advent calendar; the second puzzle is unlocked when you
+complete the first. Each puzzle grants one star. Good luck!
+
+As the submarine drops below the surface of the ocean, it automatically
+performs a sonar sweep of the nearby sea floor. On a small screen, the
+sonar sweep report (your puzzle input) appears: each line is a
+measurement of the sea floor depth as the sweep looks further and
+further away from the submarine.
+
+For example, suppose you had the following report:
+
+#+begin_src
+199
+200
+208
+210
+200
+207
+240
+269
+260
+263
+#+end_src
+
+This report indicates that, scanning outward from the submarine, the
+sonar sweep found depths of 199, 200, 208, 210, and so on.
+
+The first order of business is to figure out how quickly the depth
+increases, just so you know what you're dealing with - you never know if
+the keys will get carried into deeper water by an ocean current or a
+fish or something.
+
+To do this, count the number of times a depth measurement increases from
+the previous measurement. (There is no measurement before the first
+measurement.) In the example above, the changes are as follows:
+
+#+begin_src
+199 (N/A - no previous measurement)
+200 (increased)
+208 (increased)
+210 (increased)
+200 (decreased)
+207 (increased)
+240 (increased)
+269 (increased)
+260 (decreased)
+263 (increased)
+#+end_src
+
+In this example, there are 7 measurements that are larger than the
+previous measurement.
+
+How many measurements are larger than the previous measurement?
+
+** Part 2
+
+Considering every single measurement isn't as useful as you expected:
+there's just too much noise in the data.
+
+Instead, consider sums of a three-measurement sliding window. Again
+considering the above example:
+
+#+begin_src
+199  A
+200  A B
+208  A B C
+210    B C D
+200  E   C D
+207  E F   D
+240  E F G
+269    F G H
+260      G H
+263        H
+#+end_src
+
+Start by comparing the first and second three-measurement windows. The
+measurements in the first window are marked A (199, 200, 208); their sum
+is 199 + 200 + 208 = 607. The second window is marked B (200, 208, 210);
+its sum is 618. The sum of measurements in the second window is larger
+than the sum of the first, so this first comparison increased.
+
+Your goal now is to count the number of times the sum of measurements in
+this sliding window increases from the previous sum. So, compare A with
+B, then compare B with C, then C with D, and so on. Stop when there
+aren't enough measurements left to create a new three-measurement sum.
+
+In the above example, the sum of each three-measurement window is as
+follows:
+
+#+begin_src
+A: 607 (N/A - no previous sum)
+B: 618 (increased)
+C: 618 (no change)
+D: 617 (decreased)
+E: 647 (increased)
+F: 716 (increased)
+G: 769 (increased)
+H: 792 (increased)
+#+end_src
+
+In this example, there are 5 sums that are larger than the previous sum.
+
+Consider sums of a three-measurement sliding window. How many sums are
+larger than the previous sum?
+
+* Solution
+
+Slurp all the input values by line and store them as integer:
+
+#+begin_src raku
+my Int @inputs = "input".IO.lines>>.Int;
+#+end_src
+
+Loop over the input elements and compare with previous value,
+~$larger-than-previous~ stores the counter. It's pretty straightforward.
+
+#+begin_src raku
+my Int $larger-than-previous = 0;
+
+for (^@inputs.elems).skip -> $idx {
+    $larger-than-previous++ if @inputs[$idx] > @inputs[$idx - 1];
+}
+
+put "Part 1: ", $larger-than-previous;
+#+end_src
+
+** Part 2
+
+Here, we compare the sum of current set (previous 3 inputs) to the
+previous set.
+
+#+begin_src raku
+my Int $larger-than-previous = 0;
+
+for (^@inputs.elems).skip(3) -> $idx {
+    $larger-than-previous++ if @inputs[$idx - 2 .. $idx].sum > @inputs[$idx - 3 .. $idx - 1].sum;
+}
+
+put "Part 2: ", $larger-than-previous;
+#+end_src
diff --git a/2021/day-01/day-01.raku b/2021/day-01/day-01.raku
new file mode 100644
index 0000000..ae77c28
--- /dev/null
+++ b/2021/day-01/day-01.raku
@@ -0,0 +1,23 @@
+#!/usr/bin/env raku
+
+my Int @inputs = "input".IO.lines>>.Int;
+
+{
+    my Int $larger-than-previous = 0;
+
+    for (^@inputs.elems).skip -> $idx {
+        $larger-than-previous++ if @inputs[$idx] > @inputs[$idx - 1];
+    }
+
+    put "Part 1: ", $larger-than-previous;
+}
+
+{
+    my Int $larger-than-previous = 0;
+
+    for (^@inputs.elems).skip(3) -> $idx {
+        $larger-than-previous++ if @inputs[$idx - 2 .. $idx].sum > @inputs[$idx - 3 .. $idx - 1].sum;
+    }
+
+    put "Part 2: ", $larger-than-previous;
+}
diff --git a/2021/day-01/input b/2021/day-01/input
new file mode 100644
index 0000000..9bc1629
--- /dev/null
+++ b/2021/day-01/input
@@ -0,0 +1,2000 @@
+193
+195
+204
+208
+219
+230
+231
+233
+234
+241
+253
+260
+261
+265
+268
+279
+277
+297
+299
+300
+306
+308
+312
+313
+329
+349
+361
+362
+369
+371
+373
+378
+380
+382
+383
+382
+384
+385
+386
+388
+417
+419
+424
+429
+435
+438
+439
+454
+468
+498
+504
+510
+512
+514
+518
+526
+528
+533
+555
+561
+565
+585
+590
+617
+633
+635
+640
+641
+652
+653
+657
+659
+673
+690
+696
+690
+691
+712
+718
+708
+711
+723
+733
+734
+736
+739
+738
+739
+761
+764
+767
+768
+774
+779
+791
+797
+800
+804
+807
+810
+811
+810
+812
+814
+813
+817
+827
+824
+847
+848
+850
+852
+880
+882
+892
+896
+898
+899
+900
+906
+921
+933
+935
+937
+935
+937
+944
+951
+955
+963
+964
+979
+981
+985
+996
+997
+998
+1005
+1009
+1011
+1015
+1019
+1021
+1022
+1006
+1009
+1017
+1018
+1019
+1022
+1028
+1022
+1023
+1043
+1046
+1047
+1053
+1054
+1078
+1079
+1091
+1111
+1115
+1119
+1127
+1128
+1129
+1130
+1147
+1160
+1161
+1176
+1177
+1171
+1183
+1189
+1190
+1191
+1193
+1195
+1201
+1203
+1215
+1219
+1229
+1222
+1206
+1212
+1232
+1235
+1242
+1257
+1258
+1261
+1267
+1269
+1267
+1265
+1267
+1273
+1275
+1278
+1282
+1285
+1288
+1306
+1330
+1345
+1354
+1355
+1358
+1360
+1358
+1367
+1368
+1366
+1363
+1365
+1366
+1367
+1369
+1371
+1374
+1377
+1378
+1381
+1382
+1387
+1400
+1421
+1425
+1445
+1459
+1461
+1463
+1483
+1487
+1488
+1490
+1491
+1493
+1531
+1544
+1546
+1548
+1549
+1556
+1559
+1563
+1544
+1558
+1577
+1590
+1592
+1599
+1596
+1599
+1617
+1621
+1623
+1624
+1627
+1628
+1631
+1634
+1666
+1696
+1697
+1700
+1699
+1710
+1715
+1717
+1720
+1730
+1726
+1727
+1741
+1739
+1745
+1751
+1754
+1763
+1765
+1767
+1792
+1797
+1798
+1814
+1838
+1852
+1858
+1884
+1889
+1898
+1899
+1898
+1907
+1908
+1921
+1922
+1942
+1944
+1954
+1956
+1961
+1967
+1971
+1972
+1973
+1995
+2021
+2027
+2039
+2045
+2043
+2044
+2048
+2055
+2056
+2058
+2083
+2086
+2093
+2106
+2107
+2110
+2112
+2118
+2121
+2133
+2139
+2146
+2150
+2155
+2160
+2164
+2165
+2166
+2160
+2159
+2158
+2164
+2175
+2179
+2186
+2191
+2192
+2196
+2187
+2207
+2214
+2222
+2223
+2225
+2229
+2231
+2228
+2229
+2230
+2233
+2236
+2238
+2241
+2245
+2225
+2229
+2231
+2235
+2237
+2240
+2243
+2245
+2246
+2249
+2250
+2251
+2256
+2259
+2271
+2272
+2273
+2268
+2269
+2270
+2275
+2272
+2273
+2275
+2276
+2282
+2285
+2289
+2300
+2306
+2337
+2338
+2359
+2353
+2354
+2357
+2364
+2370
+2359
+2360
+2361
+2373
+2384
+2398
+2399
+2395
+2403
+2406
+2408
+2414
+2415
+2420
+2419
+2427
+2443
+2455
+2457
+2477
+2479
+2487
+2488
+2491
+2493
+2496
+2505
+2511
+2513
+2514
+2517
+2546
+2530
+2532
+2533
+2537
+2541
+2542
+2541
+2567
+2576
+2592
+2611
+2616
+2622
+2640
+2665
+2679
+2687
+2693
+2699
+2706
+2715
+2721
+2742
+2739
+2756
+2762
+2771
+2772
+2773
+2770
+2788
+2789
+2798
+2799
+2800
+2801
+2800
+2803
+2807
+2808
+2812
+2815
+2848
+2854
+2855
+2857
+2858
+2868
+2870
+2884
+2888
+2890
+2900
+2901
+2909
+2912
+2918
+2919
+2925
+2939
+2942
+2956
+2963
+2967
+2968
+2972
+2986
+2998
+3001
+3023
+3037
+3047
+3050
+3054
+3062
+3065
+3064
+3066
+3067
+3068
+3082
+3084
+3090
+3097
+3099
+3098
+3094
+3078
+3081
+3083
+3085
+3068
+3076
+3077
+3078
+3080
+3086
+3090
+3102
+3107
+3111
+3114
+3119
+3124
+3125
+3126
+3127
+3131
+3135
+3137
+3138
+3139
+3143
+3173
+3190
+3191
+3192
+3194
+3198
+3199
+3200
+3194
+3196
+3220
+3222
+3223
+3210
+3213
+3214
+3218
+3232
+3243
+3251
+3266
+3267
+3266
+3270
+3273
+3275
+3278
+3283
+3300
+3306
+3307
+3326
+3329
+3332
+3333
+3334
+3340
+3343
+3345
+3359
+3361
+3362
+3373
+3378
+3379
+3380
+3383
+3386
+3409
+3422
+3431
+3433
+3434
+3438
+3454
+3479
+3481
+3490
+3503
+3511
+3516
+3503
+3505
+3530
+3527
+3529
+3532
+3553
+3556
+3557
+3562
+3571
+3572
+3574
+3575
+3584
+3602
+3603
+3606
+3597
+3624
+3644
+3669
+3670
+3676
+3690
+3713
+3714
+3741
+3743
+3725
+3745
+3749
+3758
+3759
+3775
+3796
+3798
+3799
+3805
+3817
+3818
+3829
+3869
+3886
+3881
+3882
+3887
+3888
+3907
+3902
+3901
+3922
+3920
+3897
+3890
+3920
+3937
+3947
+3949
+3953
+3967
+3976
+3977
+3988
+3998
+3999
+4004
+4009
+3973
+3975
+3988
+3990
+3994
+4001
+4005
+4016
+4017
+4018
+4027
+4028
+4023
+4029
+4000
+4001
+4002
+4009
+4010
+4013
+4014
+4029
+4032
+4034
+4039
+4040
+4050
+4055
+4050
+4055
+4058
+4059
+4061
+4064
+4080
+4082
+4081
+4082
+4084
+4085
+4088
+4090
+4091
+4109
+4118
+4119
+4140
+4145
+4150
+4151
+4147
+4150
+4156
+4175
+4177
+4178
+4181
+4182
+4183
+4191
+4190
+4191
+4223
+4225
+4233
+4263
+4270
+4277
+4280
+4302
+4304
+4316
+4319
+4320
+4312
+4320
+4321
+4356
+4354
+4355
+4361
+4374
+4402
+4384
+4389
+4390
+4392
+4390
+4402
+4408
+4409
+4449
+4453
+4454
+4462
+4464
+4465
+4467
+4469
+4470
+4472
+4474
+4473
+4474
+4478
+4490
+4493
+4495
+4503
+4506
+4509
+4512
+4524
+4525
+4526
+4541
+4557
+4558
+4559
+4560
+4561
+4568
+4583
+4584
+4587
+4589
+4598
+4603
+4606
+4607
+4610
+4611
+4612
+4627
+4630
+4653
+4656
+4657
+4659
+4660
+4682
+4684
+4683
+4684
+4685
+4686
+4691
+4692
+4701
+4702
+4706
+4713
+4714
+4745
+4772
+4773
+4781
+4783
+4802
+4807
+4812
+4815
+4821
+4823
+4825
+4831
+4832
+4847
+4848
+4849
+4850
+4858
+4857
+4858
+4874
+4852
+4858
+4869
+4882
+4884
+4886
+4896
+4887
+4888
+4893
+4903
+4907
+4909
+4905
+4915
+4940
+4944
+4961
+4967
+4968
+4960
+4983
+4987
+4986
+4988
+4991
+4993
+4983
+4985
+4987
+4989
+4993
+4994
+4967
+4980
+4975
+4980
+4999
+5000
+5001
+5003
+5005
+5007
+5016
+5024
+5026
+5027
+5028
+5029
+5030
+5045
+5055
+5056
+5066
+5064
+5081
+5083
+5084
+5090
+5061
+5063
+5069
+5091
+5102
+5103
+5106
+5116
+5123
+5141
+5146
+5149
+5150
+5167
+5168
+5170
+5171
+5182
+5181
+5185
+5186
+5191
+5195
+5213
+5232
+5233
+5242
+5251
+5266
+5270
+5268
+5269
+5284
+5290
+5294
+5300
+5302
+5303
+5304
+5332
+5335
+5329
+5332
+5334
+5343
+5346
+5356
+5357
+5363
+5365
+5366
+5367
+5373
+5377
+5384
+5394
+5395
+5392
+5403
+5405
+5394
+5399
+5401
+5412
+5413
+5416
+5418
+5424
+5429
+5402
+5408
+5418
+5420
+5428
+5430
+5437
+5438
+5442
+5444
+5474
+5486
+5488
+5501
+5514
+5520
+5519
+5522
+5547
+5551
+5553
+5557
+5558
+5581
+5583
+5587
+5572
+5575
+5574
+5575
+5578
+5593
+5595
+5596
+5597
+5606
+5612
+5613
+5623
+5624
+5636
+5637
+5646
+5671
+5675
+5680
+5691
+5693
+5720
+5721
+5733
+5738
+5750
+5729
+5730
+5731
+5732
+5734
+5729
+5748
+5750
+5751
+5753
+5756
+5761
+5768
+5771
+5775
+5777
+5791
+5793
+5795
+5798
+5795
+5808
+5809
+5810
+5812
+5813
+5820
+5821
+5824
+5854
+5868
+5869
+5874
+5880
+5886
+5887
+5908
+5909
+5918
+5926
+5931
+5941
+5957
+5967
+5960
+5961
+5958
+5971
+5973
+5975
+5976
+5978
+5979
+5986
+5991
+5994
+5977
+5982
+5983
+5987
+5989
+6013
+6012
+6019
+6022
+6033
+6034
+6037
+6038
+6066
+6068
+6073
+6075
+6077
+6082
+6094
+6108
+6109
+6111
+6113
+6116
+6117
+6121
+6122
+6124
+6129
+6132
+6140
+6141
+6153
+6164
+6185
+6183
+6197
+6198
+6196
+6203
+6204
+6224
+6227
+6230
+6231
+6240
+6257
+6259
+6261
+6280
+6288
+6290
+6291
+6293
+6304
+6306
+6308
+6310
+6316
+6319
+6334
+6335
+6336
+6337
+6345
+6346
+6347
+6350
+6353
+6356
+6364
+6369
+6374
+6380
+6384
+6403
+6410
+6411
+6415
+6416
+6417
+6419
+6420
+6433
+6437
+6443
+6454
+6455
+6458
+6481
+6492
+6496
+6517
+6527
+6532
+6547
+6548
+6552
+6560
+6553
+6568
+6572
+6574
+6575
+6571
+6576
+6580
+6596
+6597
+6624
+6628
+6629
+6642
+6645
+6629
+6634
+6640
+6645
+6646
+6655
+6661
+6673
+6680
+6683
+6674
+6679
+6690
+6691
+6692
+6707
+6713
+6714
+6721
+6741
+6746
+6762
+6766
+6767
+6773
+6784
+6785
+6786
+6790
+6791
+6792
+6824
+6828
+6833
+6835
+6836
+6837
+6838
+6826
+6829
+6864
+6876
+6877
+6878
+6880
+6882
+6883
+6889
+6900
+6901
+6938
+6939
+6943
+6949
+6955
+6959
+6961
+6962
+6965
+6967
+6968
+6969
+6983
+6989
+6997
+6998
+7002
+6981
+6995
+6997
+7005
+7023
+7026
+7036
+7041
+7043
+7052
+7067
+7068
+7069
+7079
+7088
+7098
+7111
+7109
+7119
+7120
+7121
+7129
+7130
+7142
+7144
+7141
+7145
+7150
+7151
+7173
+7179
+7180
+7182
+7191
+7205
+7207
+7209
+7218
+7229
+7239
+7241
+7243
+7271
+7265
+7267
+7269
+7272
+7274
+7276
+7305
+7306
+7307
+7308
+7311
+7313
+7316
+7318
+7320
+7322
+7340
+7343
+7344
+7354
+7360
+7367
+7370
+7371
+7372
+7389
+7391
+7392
+7399
+7418
+7400
+7403
+7404
+7405
+7406
+7411
+7395
+7402
+7417
+7419
+7420
+7424
+7426
+7427
+7414
+7412
+7413
+7417
+7420
+7421
+7422
+7449
+7454
+7459
+7462
+7464
+7463
+7464
+7466
+7481
+7486
+7485
+7487
+7488
+7489
+7494
+7509
+7526
+7529
+7530
+7531
+7538
+7541
+7547
+7550
+7554
+7561
+7562
+7563
+7564
+7566
+7574
+7576
+7577
+7578
+7581
+7609
+7623
+7626
+7627
+7630
+7631
+7653
+7654
+7657
+7658
+7659
+7662
+7664
+7674
+7675
+7677
+7676
+7694
+7696
+7711
+7734
+7735
+7742
+7746
+7749
+7753
+7759
+7760
+7767
+7781
+7805
+7807
+7808
+7826
+7843
+7844
+7845
+7853
+7870
+7871
+7872
+7875
+7876
+7887
+7895
+7896
+7913
+7914
+7916
+7929
+7933
+7935
+7928
+7929
+7930
+7933
+7949
+7976
+7977
+7978
+7998
+7999
+8002
+8010
+8011
+8012
+8015
+8016
+8023
+8028
+8029
+8031
+8035
+8036
+8037
+8056
+8057
+8062
+8067
+8081
+8082
+8096
+8099
+8116
+8121
+8125
+8126
+8128
+8129
+8132
+8119
+8129
+8151
+8181
+8161
+8163
+8184
+8186
+8191
+8192
+8197
+8186
+8184
+8194
+8216
+8219
+8220
+8221
+8223
+8239
+8240
+8241
+8246
+8273
+8274
+8283
+8284
+8285
+8293
+8294
+8300
+8303
+8305
+8336
+8340
+8344
+8347
+8348
+8349
+8356
+8363
+8361
+8362
+8364
+8365
+8383
+8389
+8390
+8405
+8406
+8404
+8410
+8411
+8412
+8413
+8414
+8419
+8422
+8425
+8428
+8448
+8449
+8453
+8464
+8466
+8468
+8469
+8470
+8478
+8483
+8477
+8488
+8489
+8493
+8510
+8520
+8533
+8545
+8547
+8562
+8560
+8555
+8557
+8558
+8559
+8581
+8577
+8578
+8579
+8582
+8590
+8591
+8569
+8570
+8569
+8570
+8573
+8578
+8561
+8558
+8563
+8564
+8575
+8580
+8582
+8593
+8596
+8585
+8588
+8598
+8612
+8613
+8622
+8629
+8639
+8640
+8647
+8655
+8656
+8657
+8671
+8672
+8683
+8690
+8691
+8694
+8693
+8698
+8706
+8713
+8714
+8716
+8718
+8736
+8733
+8741
+8731
+8736
+8737
+8738
+8746
+8747
+8746
+8749
+8761
+8762
+8780
+8784
+8785
+8791
+8793
+8797
+8807
+8818
+8836
+8837
+8838
+8845
+8846
+8849
+8857
+8858
+8877
+8876
+8875
+8883
+8887
+8888
+8892
+8895
+8901
+8915
+8916
+8915
+8921
+8929
+8935
+8944
+8981
+8985
+8990
+8991
+9001
+8995
+8998
+9001
+9002
+9003
+9026
+9036
+9047
+9070
+9080
+9083
+9089
+9098
+9118
+9135
+9123
+9127
+9131
+9117
+9123
+9124
+9131
+9136
+9139
+9141
+9144
+9149
+9156
+9157
+9160
+9163
+9168
+9170
+9177
+9179
+9199
+9200
+9211
+9212
+9222
+9224
+9211
+9224
+9246
+9252
+9277
+9294
+9301
+9302
+9310
+9311
+9313
+9316
+9319
+9320
+9321
+9322
+9323
+9324
+9337
+9340
+9357
+9378
+9379
+9381
+9397
+9398
+9399
+9400
+9405
+9407
+9421
+9437
+9438
+9442
+9440
+9453
+9458
+9459
+9463
+9464
+9465
+9464
+9465
+9468
+9478
+9496
+9498
+9499
+9504
+9509
+9525
+9522
+9523
+9527
+9531
+9533
+9537
+9533
+9546
+9547
+9570
+9576
+9577
+9586
+9604
+9607
+9618
+9621
+9643
+9657
+9665
+9666
+9667
+9668
+9678
+9679
+9680
+9684
+9694
+9697
+9694
+9700
+9705
+9706
+9708
+9728
+9729
+9730
+9732
+9737
+9744
+9745
+9758
+9774
+9776
+9774
+9771
+9776
+9777
+9779
+9780
+9781
+9799
+9802
+9803
+9806
+9824
+9825
+9828
+9837
+9829
+9833
+9836
+9837
+9832
+9834
+9835
+9840
+9848
+9874
+9890
+9917
+9922
+9926
+9928
+9929
+9937
+9940
+9947
+9950
+9949
+9951
+9952
+9963
+9962
+9963
+9997
+10011
+10017
+10038
+10039
+10040
+10086
+10087
+10088
+10089
+10091
+10092
+10103
+10104
+10113
+10115
+10132
+10146
+10148
+10154
+10158
+10166
+10168
+10166
+10167
+10176
+10191
+10185
+10191
+10196
+10206
+10210
+10212
+10213
+10216
+10238
+10254
+10258
+10260
+10261
+10267
+10291
+10305
+10308
+10313
+10315
+10326
+10331
+10339
+10346
+10348
+10358
+10381
+10385
+10386
+10392
+10393
+10394
+10397
+10408
+10431
+10433
+10437
+10438
+10443
+10447
+10449
+10452
+10454
+10456
+10460
+10461
+10462
+10463
+10462
+10463
+10480
+10481
+10489
+10488
+10491
+10493
+10517
+10519
+10537
+10550
+10560
+10573
+10588
+10591
+10597
+10605
+10609
+10610
+10615
+10618
+10620
+10619
+10625
+10640
+10642
+10645
+10651
+10660
+10659
+10673
+10691
+10709
+10711
+10732
+10739
+10743
+10751
+10755
+10757
+10758
+10761
+10777
+10779
+10776
+10783
+10789
+10803
+10806
+10825
+10838
+10851
+10852
+10853
+10854
+10865
+10866
+10876
+10877
+10885
+10887
+10899
+10898
+10897
+10902
+10907
+10909
+10913
+10924
+10950
+10947
+10949
+10954
+10965
+10983
2'>2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212