Yksikkömurtolukujen desimaalikehitelmien jakson pituuksista 1 – pohdittavaa, ongelmia

Olen jo jokusen vuoden ajan ollut ihastunut desimaalilukuihin, lähinnä rationaalilukujen desimaalikehitelmiin. Aloin pohdiskella jaksojen pituuksia. Yksinkertaisuuden vuoksi keskityn tässä yksikkömurtolukuihin, eli tyyppiä 1/1, ½, ⅓, ¼, … oleviin murtolukuihin. Jos olet riittävän vanha, niin olet jakanut lukuja jakokulmassa riittävän paljon muistaaksesi, että jakso toistuu, kun jakokulmaan tulee jakojäännökseksi aiemmin jakojäännöksenä ollut luku.

Yritin luoda algoritmin, jonka avulla olisin voinut tutkia yksikkömurtolukujen desimaalikehitelmien jaksojen pituuksia GeoGebralla. Omassa päässäni ja paperilla onnistuinkin, mutta en osaa tarpeeksi hyvin käyttää GeoGebraa, jotta saisin algoritmin toimimaan. Tämä johtuu lähinnä siitä syystä, että GeoGebralla virheiden etsintä pitkästä komentorivistä on erittäin hankalaa minun aivoilleni ja sormilleni.

Lopulta tein Python koodinpätkän, joka tuottaa minulle vaikkapa listan sadan tai 10000 ensimmäisen yksikkömurtoluvun jaksojen pituuksista.

Solmu lehden Porasen ja Laukkasen artikkelissa (linkki liitteissä) on hyviä ehdotuksia, miten tällaista aihetta voisi käsitellä koulumatematiikassa ala-asteelta lukioon.

määritelmiä/sopimuksia

Alla olevassa taulukossa on 15 ensimmäistä yksikkömurtolukua ja likiarvot 15 numeron tarkkuudella, GeoGebra katkaisee päättyvät desimaalit eikä näytä lopun nollia. Desimaalikehitelmät voidaan jakaa päättyviin ja päättymättömiin. 

Oheisessa taulukossa 1/1, ½, ¼, ⅕,  ⅛, ja 1/10 ovat päättyviä. Sovitaan, että niiden jakson pituus on nolla.

Päättymättömien desimaalilukujen jaksojen pituudet vaihtelevat. Ykkösen mittaisia saadaan n:n arvoilla 3, 6, 9, 12, 15. Kahden mittaisia n:n arvolla 11, kuuden mittaisia n:n arvoilla 7, 13 ja 14

Sovitaan, että funktio f(n) = yksikkömurtoluvun 1/ n desimaalikehitelmän jakson pituus. Jokainen jakolaskua harrastanut varmaankin osaa vastata oikein seuraaviin kysymyksiin pelkästään intuitiolla tai sitten voimallisella matemaattisella pohdiskelulla.

1. ongelma – päättyvät desimaalit

Millaiset n:n arvot tuottavat päättyviä desimaalilukuja eli millaisilla n:n arvoilla f(n) = 0?

2. ongelma – pisin mahdollinen jakso

Mikä on suurin mahdollinen jakson pituus jollain n:n arvolla. Onko se n, 2n, n^2, n-1, n/2 vai mitä?

Eli onko olemassa n:n arvoja, joilla f(n) = n^2, f(n) = 2n, f(n) = n, … Millainen n:n lauseke on mahdollinen yläraja?

2. ongelma – yleisin jakso

Jos tutkitaan 15 ensimmäistä f(n):n arvoa, niin saadaan seuraavan näköinen jakauma jaksojen pituuksien arvoista.

Mikä on yleisin jaksojen lukumäärä eli moodi, kun tutkitaan 100 ensimmäistä f(n):n arvoa, entä 1000 tai 10000? 

3. ongelma – koordinaatisto

Alla olevassa kuvaajassa on jakson pituus n:n funktiona.

Tuosta kuvaajasta ei  näe sen kummempaa kommentoitavaa, katsotaan tilannetta kun n on hieman isompi.

Kuvaajiin ilmestyy suoria. Millaisia ovat kyseisien suorien yhtälöt?

Mitä ihmeen lukuja ovat nuo eri väreillä merkityt?

Lähipäivinä lähetän lisää tarinaa tähän liittyen. Jos haluat itse leikkiä kyseisillä luvuilla, niin alla on 10000 ensimmäistä f(n):n arvoa. Jos haluat ne GeoGebran listaksi, niin korvaa hakasulkeet [] aaltosulkeiksi {}. Tämä lista on tuotettu sivun https://oeis.org/A051626 linkistä T. D. Noe, Table of n, a(n) for n = 1..10000 Käytän tätä testatakseni omaa algoritmiani.              

lähteet

Poranen, Haukkanen, Solmu. Jaksolliset desimaaliesitykset algebrallisesta
näkökulmasta https://matematiikkalehtisolmu.fi/2011/Poranen-Haukkanen.pdf

Repeating decimal Wikipediassa https://en.wikipedia.org/wiki/Repeating_decimal    

T. D. Noe, Table of n, a(n) for n = 1..10000  


oikeat = [0, 0, 1, 0, 0, 1, 6, 0, 1, 0, 2, 1, 6, 6, 1, 0, 16, 1, 18, 0, 6, 2, 22, 1, 0, 6, 3, 6, 28, 1, 15, 0, 2, 16, 6, 1, 3, 18, 6, 0, 5, 6, 21, 2, 1, 22, 46, 1, 42, 0, 16, 6, 13, 3, 2, 6, 18, 28, 58, 1, 60, 15, 6, 0, 6, 2, 33, 16, 22, 6, 35, 1, 8, 3, 1, 18, 6, 6, 13, 0, 9, 5, 41, 6, 16, 21, 28, 2, 44, 1, 6, 22, 15, 46, 18, 1, 96, 42, 2, 0, 4, 16, 34, 6, 6, 13, 53, 3, 108, 2, 3, 6, 112, 18, 22, 28, 6, 58, 48, 1, 22, 60, 5, 15, 0, 6, 42, 0, 21, 6, 130, 2, 18, 33, 3, 16, 8, 22, 46, 6, 46, 35, 6, 1, 28, 8, 42, 3, 148, 1, 75, 18, 16, 6, 15, 6, 78, 13, 13, 0, 66, 9, 81, 5, 2, 41, 166, 6, 78, 16, 18, 21, 43, 28, 6, 2, 58, 44, 178, 1, 180, 6, 60, 22, 3, 15, 16, 46, 6, 18, 95, 1, 192, 96, 6, 42, 98, 2, 99, 0, 33, 4, 84, 16, 5, 34, 22, 6, 18, 6, 30, 13, 35, 53, 21, 3, 30, 108, 8, 2, 48, 3, 222, 6, 1, 112, 113, 18, 228, 22, 6, 28, 232, 6, 46, 58, 13, 48, 7, 1, 30, 22, 27, 60, 42, 5, 18, 15, 41, 0, 50, 6, 22, 42, 16, 0, 256, 21, 6, 6, 28, 130, 262, 2, 13, 18, 44, 33, 268, 3, 5, 16, 6, 8, 2, 22, 69, 46, 15, 6, 28, 46, 141, 35, 18, 6, 30, 1, 272, 28, 96, 8, 146, 42, 58, 3, 6, 148, 66, 1, 42, 75, 4, 18, 60, 16, 153, 6, 34, 15, 155, 6, 312, 78, 6, 13, 79, 13, 28, 0, 53, 66, 144, 9, 6, 81, 108, 5, 138, 2, 110, 41, 3, 166, 33, 6, 336, 78, 112, 16, 30, 18, 294, 21, 22, 43, 173, 28, 116, 6, 6, 2, 32, 58, 35, 44, 48, 178, 179, 1, 342, 180, 22, 6, 8, 60, 366, 22, 5, 3, 78, 15, 186, 16, 1, 46, 84, 6, 378, 18, 42, 95, 382, 1, 6, 192, 21, 96, 388, 6, 176, 42, 130, 98, 13, 2, 99, 99, 18, 0, 200, 33, 30, 4, 9, 84, 6, 16, 204, 5, 8, 34, 174, 22, 41, 6, 46, 18, 418, 6, 140, 30, 46, 13, 16, 35, 60, 53, 6, 21, 215, 3, 432, 30, 28, 108, 198, 8, 219, 2, 42, 48, 221, 3, 44, 222, 148, 6, 32, 1, 10, 112, 75, 113, 6, 18, 152, 228, 48, 22, 460, 6, 154, 28, 15, 232, 233, 6, 66, 46, 78, 58, 42, 13, 18, 48, 13, 7, 239, 1, 6, 30, 66, 22, 96, 27, 486, 60, 81, 42, 490, 5, 112, 18, 2, 15, 210, 41, 498, 0, 166, 50, 502, 6, 4, 22, 78, 42, 508, 16, 24, 0, 18, 256, 34, 21, 46, 6, 43, 6, 52, 28, 261, 130, 6, 262, 240, 2, 506, 13, 58, 18, 30, 44, 53, 33, 178, 268, 42, 3, 540, 5, 180, 16, 108, 6, 91, 8, 60, 2, 252, 22, 78, 69, 3, 46, 278, 15, 42, 6, 16, 28, 281, 46, 112, 141, 18, 35, 284, 18, 570, 6, 95, 30, 22, 1, 576, 272, 192, 28, 246, 96, 26, 8, 6, 146, 293, 42, 90, 58, 98, 3, 592, 6, 48, 148, 99, 66, 299, 1, 300, 42, 33, 75, 22, 4, 202, 18, 84, 60, 138, 16, 51, 153, 5, 6, 88, 34, 618, 15, 66, 155, 132, 6, 0, 312, 18, 78, 48, 6, 315, 13, 30, 79, 42, 13, 42, 28, 35, 0, 32, 53, 107, 66, 21, 144, 646, 9, 58, 6, 30, 81, 326, 108, 130, 5, 8, 138, 658, 2, 220, 110, 48, 41, 18, 3, 308, 166, 222, 33, 60, 6, 224, 336, 3, 78, 338, 112, 96, 16, 113, 30, 341, 18, 8, 294, 228, 21, 78, 22, 230, 43, 6, 173, 46, 28, 80, 116, 232, 6, 700, 6, 18, 2, 46, 32, 12, 58, 708, 35, 13, 44, 330, 48, 6, 178, 7, 179, 359, 1, 102, 342, 30, 180, 28, 22, 726, 6, 81, 8, 336, 60, 61, 366, 42, 22, 66, 5, 246, 3, 18, 78, 742, 15, 148, 186, 41, 16, 318, 1, 125, 46, 50, 84, 75, 6, 27, 378, 22, 18, 380, 42, 108, 95, 16, 382, 174, 1, 192, 6, 256, 192, 193, 21, 15, 96, 6, 388, 90, 6, 70, 176, 84, 42, 78, 130, 393, 98, 262, 13, 336, 2, 60, 99, 13, 99, 199, 18, 368, 0, 44, 200, 8, 33, 66, 30, 268, 4, 202, 9, 810, 84, 5, 6, 81, 16, 126, 204, 6, 5, 820, 8, 822, 34, 2, 174, 413, 22, 276, 41, 69, 6, 336, 46, 166, 18, 15, 418, 419, 6, 812, 140, 28, 30, 78, 46, 66, 13, 141, 16, 66, 35, 213, 60, 18, 53, 856, 6, 26, 21, 30, 215, 862, 3, 43, 432, 272, 30, 26, 28, 66, 108, 96, 198, 6, 8, 438, 219, 146, 2, 440, 42, 441, 48, 58, 221, 886, 3, 42, 44, 18, 222, 414, 148, 178, 6, 66, 32, 420, 1, 208, 10, 42, 112, 180, 75, 151, 113, 4, 6, 455, 18, 82, 152, 60, 228, 390, 48, 459, 22, 153, 460, 210, 6, 3, 154, 34, 28, 464, 15, 126, 232, 155, 233, 16, 6, 936, 66, 312, 46, 940, 78, 110, 58, 6, 42, 473, 13, 24, 18, 79, 48, 952, 13, 95, 7, 28, 239, 24, 1, 465, 6, 53, 30, 192, 66, 322, 22, 144, 96, 970, 27, 138, 486, 6, 60, 976, 81, 44, 42, 108, 490, 982, 5, 98, 112, 138, 18, 462, 2, 495, 15, 110, 210, 99, 41, 166, 498, 3, 0, 6, 166, 464, 50, 33, 502, 234, 6, 252, 4, 336, 22, 253, 78, 84, 42, 112, 508, 1018, 16, 1020, 24, 30, 0, 5, 18, 78, 256, 294, 34, 103, 21, 1032, 46, 22, 6, 240, 43, 519, 6, 173, 52, 444, 28, 18, 261, 116, 130, 524, 6, 1050, 262, 18, 240, 30, 2, 150, 506, 32, 13, 212, 58, 1062, 18, 35, 30, 96, 44, 1068, 53, 48, 33, 84, 178, 21, 268, 179, 42, 246, 3, 506, 540, 342, 5, 30, 180, 1086, 16, 22, 108, 1090, 6, 273, 91, 8, 8, 1096, 60, 78, 2, 366, 252, 1102, 22, 48, 78, 15, 69, 1108, 3, 4, 46, 78, 278, 222, 15, 558, 42, 186, 6, 522, 16, 561, 28, 1, 281, 462, 46, 564, 112, 84, 141, 34, 18, 113, 35, 378, 284, 528, 18, 162, 570, 42, 6, 228, 95, 15, 30, 382, 22, 575, 1, 1152, 576, 6, 272, 132, 192, 180, 28, 21, 246, 581, 96, 232, 26, 388, 8, 498, 6, 1170, 146, 176, 293, 46, 42, 106, 90, 130, 58, 1180, 98, 78, 3, 13, 592, 593, 6, 140, 48, 99, 148, 1192, 99, 7, 66, 18, 299, 108, 1, 200, 300, 200, 42, 30, 33, 560, 75, 30, 22, 258, 4, 202, 202, 27, 18, 1216, 84, 286, 60, 6, 138, 1222, 16, 42, 51, 204, 153, 1228, 5, 41, 6, 8, 88, 18, 34, 206, 618, 174, 15, 16, 66, 112, 155, 41, 132, 84, 6, 208, 0, 46, 312, 534, 18, 50, 78, 418, 48, 1258, 6, 96, 315, 140, 13, 22, 30, 180, 79, 138, 42, 15, 13, 198, 42, 16, 28, 638, 35, 639, 0, 60, 32, 641, 53, 256, 107, 6, 66, 92, 21, 1290, 144, 215, 646, 6, 9, 1296, 58, 432, 6, 1300, 30, 1302, 81, 28, 326, 653, 108, 48, 130, 198, 5, 12, 8, 262, 138, 219, 658, 659, 2, 55, 220, 42, 110, 13, 48, 1326, 41, 221, 18, 242, 3, 105, 308, 44, 166, 570, 222, 102, 33, 148, 60, 208, 6, 268, 224, 32, 336, 630, 3, 192, 78, 10, 338, 5, 112, 638, 96, 75, 16, 680, 113, 644, 30, 6, 341, 1366, 18, 111, 8, 152, 294, 686, 228, 2, 21, 144, 78, 294, 22, 1380, 230, 460, 43, 69, 6, 72, 173, 154, 46, 318, 28, 198, 80, 15, 116, 42, 232, 699, 6, 233, 700, 660, 6, 28, 18, 66, 2, 32, 46, 656, 32, 78, 12, 141, 58, 108, 708, 42, 35, 84, 13, 158, 44, 18, 330, 713, 48, 1428, 6, 39, 178, 1432, 7, 30, 179, 239, 359, 719, 1, 130, 102, 6, 342, 272, 30, 1446, 180, 66, 28, 290, 22, 726, 726, 96, 6, 690, 81, 162, 8, 486, 336, 18, 60, 146, 61, 81, 366, 336, 42, 735, 22, 490, 66, 58, 5, 30, 246, 112, 3, 740, 18, 247, 78, 6, 742, 1486, 15, 248, 148, 210, 186, 373, 41, 66, 16, 498, 318, 214, 1, 234, 125, 166, 46, 42, 50, 8, 84, 502, 75, 755, 6, 176, 27, 4, 378, 15, 22, 210, 18, 78, 380, 761, 42, 60, 108, 508, 95, 46, 16, 1530, 382, 24, 174, 153, 1, 364, 192, 18, 6, 66, 256, 1542, 192, 34, 193, 48, 21, 1548, 15, 46, 96, 1552, 6, 155, 388, 43, 90, 779, 6, 222, 70, 52, 176, 312, 84, 1566, 42, 261, 78, 1570, 130, 66, 393, 6, 98, 738, 262, 1578, 13, 240, 336, 1582, 2, 79, 60, 506, 99, 678, 13, 21, 99, 174, 199, 28, 18, 133, 368, 30, 0, 200, 44, 228, 200, 53, 8, 1606, 33, 201, 66, 178, 30, 403, 268, 144, 4, 42, 202, 1618, 9, 1620, 810, 540, 84, 6, 5, 271, 6, 180, 81, 696, 16, 770, 126, 108, 204, 409, 6, 148, 5, 91, 820, 195, 8, 138, 822, 60, 34, 96, 2, 42, 174, 252, 413, 110, 22, 552, 276, 78, 41, 150, 69, 1662, 6, 3, 336, 833, 46, 556, 166, 278, 18, 42, 15, 33, 418, 42, 419, 88, 6, 205, 812, 16, 140, 336, 28, 30, 30, 281, 78, 396, 46, 423, 66, 112, 13, 1696, 141, 566, 16, 54, 66, 390, 35, 30, 213, 284, 60, 1708, 18, 812, 53, 570, 856, 294, 6, 16, 26, 95, 21, 430, 30, 287, 215, 22, 862, 78, 3, 18, 43, 576, 432, 866, 272, 173, 30, 192, 26, 138, 28, 1740, 66, 246, 108, 116, 96, 291, 198, 26, 6, 272, 8, 584, 438, 6, 219, 150, 146, 879, 2, 293, 440, 105, 42, 32, 441, 90, 48, 420, 58, 66, 221, 98, 886, 35, 3, 1776, 42, 592, 44, 24, 18, 1782, 222, 48, 414, 893, 148, 1788, 178, 99, 6, 162, 66, 179, 32, 299, 420, 768, 1, 900, 208, 300, 10, 342, 42, 138, 112, 33, 180, 1810, 75, 42, 151, 22, 113, 286, 4, 848, 6, 202, 455, 1822, 18, 8, 82, 84, 152, 870, 60, 305, 228, 138, 390, 366, 48, 166, 459, 51, 22, 786, 153, 288, 460, 5, 210, 1846, 6, 903, 3, 88, 154, 432, 34, 78, 28, 618, 464, 78, 15, 1860, 126, 198, 232, 186, 155, 933, 233, 132, 16, 935, 6, 1872, 936, 1, 66, 938, 312, 313, 46, 18, 940, 804, 78, 84, 110, 48, 58, 118, 6, 60, 42, 315, 473, 378, 13, 30, 24, 30, 18, 380, 79, 86, 48, 42, 952, 953, 13, 902, 95, 42, 7, 1912, 28, 382, 239, 105, 24, 36, 1, 112, 465, 32, 6, 6, 53, 230, 30, 107, 192, 386, 66, 21, 322, 21, 22, 444, 144, 138, 96, 646, 970, 924, 27, 388, 138, 58, 486, 1948, 6, 195, 60, 30, 976, 176, 81, 306, 44, 326, 42, 39, 108, 150, 490, 130, 982, 84, 5, 178, 98, 24, 112, 986, 138, 13, 18, 658, 462, 1978, 2, 282, 495, 220, 15, 99, 110, 331, 210, 48, 99, 180, 41, 664, 166, 18, 498, 998, 3, 999, 0, 308, 6, 1001, 166, 200, 464, 222, 50, 210, 33, 670, 502, 60, 234, 30, 6, 2016, 252, 224, 4, 966, 336, 816, 22, 9, 253, 1013, 78, 2028, 84, 338, 42, 954, 112, 6, 508, 96, 1018, 1019, 16, 78, 1020, 113, 24, 204, 30, 44, 0, 341, 5, 438, 18, 342, 78, 8, 256, 176, 294, 140, 34, 228, 103, 2062, 21, 174, 1032, 78, 46, 2068, 22, 108, 6, 230, 240, 41, 43, 165, 519, 6, 6, 1040, 173, 1041, 52, 46, 444, 298, 28, 1044, 18, 80, 261, 66, 116, 418, 130, 232, 524, 2098, 6, 190, 1050, 700, 262, 140, 18, 42, 240, 18, 30, 1055, 2, 2112, 150, 46, 506, 56, 32, 162, 13, 12, 212, 192, 58, 16, 1062, 708, 18, 532, 35, 710, 30, 39, 96, 60, 44, 2136, 1068, 330, 53, 2140, 48, 2142, 33, 6, 84, 1008, 178, 306, 21, 7, 268, 2152, 179, 215, 42, 359, 246, 336, 3, 30, 506, 102, 540, 432, 342, 98, 5, 30, 30, 498, 180, 65, 1086, 28, 16, 930, 22, 2178, 108, 726, 1090, 174, 6, 198, 273, 243, 91, 198, 8, 312, 8, 336, 1096, 219, 60, 1014, 78, 61, 2, 105, 366, 1101, 252, 42, 1102, 2206, 22, 2162, 48, 66, 78, 553, 15, 221, 69, 246, 1108, 474, 3, 2220, 4, 18, 46, 44, 78, 1040, 278, 742, 222, 1056, 15, 84, 558, 148, 42, 1118, 186, 1119, 6, 123, 522, 1121, 16, 32, 561, 318, 28, 258, 1, 2250, 281, 125, 462, 10, 46, 60, 564, 50, 112, 144, 84, 120, 141, 75, 34, 1133, 18, 2268, 113, 27, 35, 2272, 378, 6, 284, 22, 528, 273, 18, 228, 162, 380, 570, 152, 42, 762, 6, 108, 228, 364, 95, 1146, 15, 48, 30, 2296, 382, 198, 22, 174, 575, 966, 1, 460, 1152, 192, 576, 2308, 6, 231, 272, 256, 132, 154, 192, 330, 180, 193, 28, 30, 21, 44, 246, 15, 581, 534, 96, 16, 232, 6, 26, 583, 388, 233, 8, 90, 498, 2338, 6, 2340, 1170, 70, 146, 66, 176, 1173, 293, 252, 46, 1175, 42, 180, 106, 78, 90, 1178, 130, 336, 58, 393, 1180, 368, 98, 42, 78, 262, 3, 374, 13, 2370, 592, 336, 593, 18, 6, 264, 140, 60, 48, 476, 99, 2382, 148, 13, 1192, 30, 99, 2388, 7, 199, 66, 184, 18, 239, 299, 368, 108, 1199, 1, 2058, 200, 132, 300, 6, 200, 1148, 42, 8, 30, 2410, 33, 126, 560, 66, 75, 2416, 30, 290, 22, 268, 258, 2422, 4, 96, 202, 202, 202, 1038, 27, 48, 18, 810, 1216, 486, 84, 1218, 286, 5, 60, 305, 6, 348, 138, 81, 1222, 2446, 16, 195, 42, 126, 51, 222, 204, 490, 153, 6, 1228, 2458, 5, 1166, 41, 820, 6, 112, 8, 137, 88, 822, 18, 96, 34, 2472, 206, 2, 618, 619, 174, 33, 15, 413, 16, 570, 66, 210, 112, 276, 155, 1170, 41, 598, 132, 69, 84, 498, 6, 226, 208, 336, 0, 60, 46, 278, 312, 166, 534, 1188, 18, 192, 50, 45, 78, 1074, 418, 502, 48, 419, 1258, 228, 6, 630, 96, 812, 315, 4, 140, 342, 13, 28, 22, 46, 30, 592, 180, 78, 79, 1218, 138, 2538, 42, 66, 15, 2542, 13, 508, 198, 141, 42, 2548, 16, 425, 28, 66, 638, 24, 35, 639, 639, 213, 0, 294, 60, 232, 32, 18, 641, 1200, 53, 366, 256, 856, 107, 615, 6, 34, 66, 26, 92, 2578, 21, 308, 1290, 30, 144, 46, 215, 198, 646, 862, 6, 259, 9, 2592, 1296, 43, 58, 546, 432, 1232, 6, 272, 1300, 72, 30, 52, 1302, 26, 81, 1304, 28, 186, 326, 66, 653, 261, 108, 2616, 48, 96, 130, 2620, 198, 420, 5, 6, 12, 105, 8, 14, 262, 438, 138, 2632, 219, 240, 658, 146, 659, 84, 2, 414, 55, 440, 220, 506, 42, 882, 110, 441, 13, 30, 48, 378, 1326, 58, 41, 2656, 221, 886, 18, 886, 242, 2662, 3, 30, 105, 42, 308, 624, 44, 1335, 166, 54, 570, 53, 222, 223, 102, 414, 33, 1146, 148, 447, 60, 178, 208, 2686, 6, 42, 268, 66, 224, 1346, 32, 42, 336, 420, 630, 2698, 3, 24, 192, 208, 78, 540, 10, 1353, 338, 42, 5, 1355, 112, 2712, 638, 180, 96, 18, 75, 1359, 16, 151, 680, 1164, 113, 108, 644, 12, 30, 682, 6, 2730, 341, 455, 1366, 91, 18, 528, 111, 82, 8, 2740, 152, 30, 294, 60, 686, 165, 228, 916, 2, 390, 21, 2752, 144, 252, 78, 459, 294, 660, 22, 50, 1380, 153, 230, 78, 460, 2766, 43, 210, 69, 1296, 6, 1334, 72, 3, 173, 2776, 154, 198, 46, 102, 318, 22, 28, 278, 198, 464, 80, 2788, 15, 31, 116, 126, 42, 42, 232, 699, 699, 155, 6, 1400, 233, 1401, 700, 16, 660, 600, 6, 689, 28, 936, 18, 672, 66, 281, 2, 312, 32, 2818, 46, 30, 656, 940, 32, 112, 78, 256, 12, 110, 141, 1332, 58, 2832, 108, 18, 708, 709, 42, 1328, 35, 473, 84, 1421, 13, 284, 158, 24, 44, 6, 18, 2850, 330, 79, 713, 570, 48, 408, 1428, 952, 6, 2860, 39, 204, 178, 95, 1432, 1380, 7, 450, 30, 28, 179, 624, 239, 22, 359, 24, 719, 1439, 1, 231, 130, 465, 102, 576, 6, 2886, 342, 159, 272, 1218, 30, 262, 1446, 192, 180, 2896, 66, 222, 28, 322, 290, 2902, 22, 246, 726, 144, 726, 2908, 96, 35, 6, 970, 690, 26, 81, 1458, 162, 138, 8, 462, 486, 39, 336, 6, 18, 2926, 60, 28, 146, 976, 61, 1254, 81, 293, 366, 44, 336, 2938, 42, 688, 735, 108, 22, 90, 490, 420, 66, 982, 58, 678, 5, 984, 30, 98, 246, 1478, 112, 268, 3, 138, 740, 1481, 18, 592, 247, 462, 78, 371, 6, 2970, 742, 495, 1486, 48, 15, 228, 248, 110, 148, 10, 210, 234, 186, 99, 373, 476, 41, 420, 66, 166, 16, 40, 498, 299, 318, 9, 214, 1499, 1, 1500, 234, 6, 125, 300, 166, 480, 46, 464, 42, 3010, 50, 1430, 8, 33, 84, 1290, 502, 3018, 75, 234, 755, 3022, 6, 22, 176, 252, 27, 696, 4, 432, 378, 336, 15, 202, 22, 253, 210, 253, 18, 380, 78, 1424, 380, 84, 761, 138, 42, 508, 60, 336, 108, 105, 508, 138, 95, 1018, 46, 198, 16, 204, 1530, 1020, 382, 51, 24, 1533, 174, 30, 153, 123, 1, 438, 364, 5, 192, 720, 18, 1539, 6, 78, 66, 1541, 256, 88, 1542, 294, 192, 1544, 34, 28, 193, 103, 48, 618, 21, 162, 1548, 1032, 15, 1326, 46, 1484, 96, 66, 1552, 42, 6, 148, 155, 240, 388, 282, 43, 132, 90, 519, 779, 1559, 6, 156, 222, 173, 70, 0, 52, 754, 176, 444, 312, 60, 84, 30, 1566, 18, 42, 3136, 261, 168, 78, 116, 1570, 96, 130, 48, 66, 524, 393, 1518, 6, 88, 98, 1050, 738, 315, 262, 30, 1578, 54, 13, 756, 240, 1581, 336, 30, 1582, 3166, 2, 72, 79, 150, 60, 1494, 506, 42, 99, 32, 678, 272, 13, 636, 21, 212, 99, 42, 174, 177, 199, 1062, 28, 29, 18, 510, 133, 35, 368, 506, 30, 456, 0, 96, 200, 1601, 44, 32, 228, 1068, 200, 1604, 53, 234, 8, 48, 1606, 107, 33, 1072, 201, 84, 66, 3220, 178, 146, 30, 21, 403, 1380, 268, 1076, 144, 179, 4, 780, 42, 646, 202, 246, 1618, 65, 9, 462, 1620, 506, 810, 58, 540, 1520, 84, 342, 6, 3250, 5, 542, 271, 30, 6, 3256, 180, 3258, 81, 1086, 696, 150, 16, 326, 770, 66, 126, 1398, 108, 1635, 204, 1090, 409, 130, 6, 112, 148, 273, 5, 192, 91, 462, 820, 8, 195, 774, 8, 66, 138, 1096, 822, 132, 60, 658, 34, 78, 96, 3298, 2, 3300, 42, 366, 174, 220, 252, 1653, 413, 1102, 110, 42, 22, 3312, 552, 48, 276, 795, 78, 553, 41, 45, 150, 1661, 69, 18, 1662, 1108, 6, 832, 3, 3330, 336, 4, 833, 308, 46, 1610, 556, 78, 166, 768, 278, 3342, 18, 222, 42, 1673, 15, 784, 33, 558, 418, 1434, 42, 60, 419, 186, 88, 1679, 6, 1680, 205, 522, 812, 224, 16, 6, 140, 561, 336, 3370, 28, 843, 30, 3, 30, 306, 281, 540, 78, 462, 396, 1584, 46, 338, 423, 564, 66, 3388, 112, 1695, 13, 84, 1696, 96, 141, 273, 566, 34, 16, 1602, 54, 205, 66, 113, 390, 3406, 35, 486, 30, 378, 213, 1706, 284, 341, 60, 528, 1708, 786, 18, 310, 812, 162, 53, 8, 570, 1628, 856, 42, 294, 184, 6, 3432, 16, 228, 26, 1470, 95, 180, 21, 15, 430, 312, 30, 78, 287, 382, 215, 431, 22, 336, 862, 575, 78, 230, 3, 384, 18, 1152, 43, 3460, 576, 3462, 432, 6, 866, 1733, 272, 3468, 173, 132, 30, 1650, 192, 46, 26, 180, 138, 210, 28, 3422, 1740, 63, 66, 80, 246, 158, 108, 581, 116, 698, 96, 498, 291, 232, 198, 804, 26, 318, 6, 388, 272, 1680, 8, 700, 584, 498, 438, 308, 6, 1755, 219, 1170, 150, 18, 146, 879, 879, 176, 2, 1506, 293, 30, 440, 46, 105, 3526, 42, 1764, 32, 106, 441, 1766, 90, 12, 48, 390, 420, 3538, 58, 20, 66, 1180, 221, 708, 98, 1773, 886, 78, 35, 429, 3, 144, 1776, 13, 42, 254, 592, 1779, 44, 593, 24, 1524, 18, 330, 1782, 140, 222, 861, 48, 3570, 414, 99, 893, 6, 148, 168, 1788, 1192, 178, 3580, 99, 1194, 6, 7, 162, 240, 66, 96, 179, 18, 32, 3592, 299, 359, 420, 108, 768, 1740, 1, 138, 900, 200, 208, 102, 300, 3606, 10, 200, 342, 858, 42, 602, 138, 30, 112, 3616, 33, 138, 180, 560, 1810, 3622, 75, 28, 42, 30, 151, 1710, 22, 1815, 113, 258, 286, 726, 4, 909, 848, 202, 6, 110, 202, 1821, 455, 81, 1822, 156, 18, 220, 8, 1216, 82, 84, 84, 336, 152, 286, 870, 3658, 60, 522, 305, 6, 228, 61, 138, 576, 390, 1222, 366, 367, 48, 3672, 166, 42, 459, 1838, 51, 282, 22, 204, 786, 84, 153, 66, 288, 1228, 460, 240, 5, 1230, 210, 41, 1846, 246, 6, 1232, 903, 24, 3, 3700, 88, 1518, 154, 18, 432, 336, 34, 3708, 78, 206, 28, 598, 618, 742, 464, 174, 78, 1859, 15, 3660, 1860, 16, 126, 148, 198, 3726, 232, 112, 186, 30, 155, 933, 933, 41, 233, 12, 132, 1246, 16, 84, 935, 882, 6, 318, 1872, 208, 936, 1782, 1, 330, 66, 138, 938, 125, 312, 816, 313, 534, 46, 1880, 18, 455, 940, 50, 804, 3766, 78, 1884, 84, 418, 110, 294, 48, 75, 58, 1258, 118, 3778, 6, 198, 60, 96, 42, 27, 315, 540, 473, 140, 378, 1776, 13, 1264, 30, 22, 24, 949, 30, 1820, 18, 180, 380, 1901, 79, 380, 86, 414, 48, 438, 42, 102, 952, 15, 953, 108, 13, 346, 902, 198, 95, 3820, 42, 1274, 7, 16, 1912, 924, 28, 546, 382, 638, 239, 3832, 105, 174, 24, 639, 36, 116, 1, 1826, 112, 60, 465, 192, 32, 3846, 6, 641, 6, 770, 53, 963, 230, 256, 30, 252, 107, 1808, 192, 6, 386, 3862, 66, 193, 21, 92, 322, 104, 21, 546, 22, 1290, 444, 15, 144, 969, 138, 215, 96, 1940, 646, 32, 970, 6, 924, 858, 27, 1944, 388, 1296, 138, 912, 58, 90, 486, 432, 1948, 834, 6, 1886, 195, 1300, 60, 70, 30, 1953, 976, 1302, 176, 1955, 81, 42, 306, 84, 44, 1958, 326, 653, 42, 653, 39, 1961, 108, 78, 150, 48, 490, 491, 130, 1310, 982, 198, 84, 393, 5, 210, 178, 12, 98, 1686, 24, 3942, 112, 262, 986, 1973, 138, 358, 13, 219, 18, 1914, 658, 336, 462, 659, 1978, 159, 2, 464, 282, 55, 495, 60, 220, 3966, 15, 126, 99, 342, 110, 56, 331, 13, 210, 480, 48, 946, 99, 1326, 180, 852, 41, 199, 664, 221, 166, 3988, 18, 306, 498, 242, 998, 368, 3, 570, 999, 105, 0, 500, 308, 87, 6, 44, 1001, 4006, 166, 90, 200, 570, 464, 34, 222, 8, 50, 102, 210, 4018, 33, 268, 670, 444, 502, 66, 60, 2013, 234, 208, 30, 644, 6, 108, 2016, 268, 252, 366, 224, 576, 4, 32, 966, 930, 336, 202, 816, 630, 22, 2024, 9, 4050, 253, 192, 1013, 810, 78, 4056, 2028, 10, 84, 390, 338, 112, 42, 5, 954, 1722, 112, 312, 6, 638, 508, 4072, 96, 81, 1018, 75, 1019, 2039, 16, 78, 78, 680, 1020, 126, 113, 660, 24, 644, 204, 4090, 30, 22, 44, 6, 0, 240, 341, 4098, 5, 1366, 438, 186, 18, 820, 342, 111, 78, 1758, 8, 2055, 256, 152, 176, 822, 294, 1958, 140, 686, 34, 474, 228, 90, 103, 2, 2062, 4126, 21, 2064, 174, 432, 1032, 1033, 78, 413, 46, 294, 2068, 4138, 22, 20, 108, 1380, 6, 276, 230, 84, 240, 460, 41, 1776, 43, 4152, 165, 69, 519, 2078, 6, 693, 6, 72, 1040, 1980, 173, 336, 1041, 154, 52, 378, 46, 672, 444, 318, 298, 166, 28, 4176, 1044, 198, 18, 336, 80, 1012, 261, 15, 66, 13, 116, 2030, 418, 42, 130, 1794, 232, 419, 524, 699, 2098, 144, 6, 75, 190, 233, 1050, 812, 700, 300, 262, 660, 140, 4210, 18, 382, 42, 28, 240, 4216, 18, 4218, 30, 66, 1055, 170, 2, 78, 2112, 32, 150, 4228, 46, 2115, 506, 656, 56, 66, 32, 666, 162, 78, 13, 1060, 12, 2121, 212, 141, 192, 120, 58, 606, 16, 108, 1062, 1063, 708, 66, 18, 42, 532, 4258, 35, 4260, 710, 84, 30, 213, 39, 400, 96, 158, 60, 2135, 44, 1424, 2136, 18, 1068, 138, 330, 388, 53, 713, 2140, 2141, 48, 856, 2142, 1428, 33, 2144, 6, 102, 84, 117, 1008, 26, 178, 1432, 306, 1432, 21, 176, 7, 330, 268, 30, 2152, 232, 179, 690, 215, 239, 42, 2034, 359, 862, 246, 719, 336, 264, 3, 1036, 30, 130, 506, 43, 102, 4326, 540, 6, 432, 420, 342, 618, 98, 272, 5, 4336, 30, 4338, 30, 1446, 498, 84, 180, 26, 65, 66, 1086, 4348, 28, 684, 16, 290, 930, 66, 22, 242, 2178, 726, 108, 924, 726, 2181, 1090, 96, 174, 198, 6, 256, 198, 690, 273, 1093, 243, 6, 91, 162, 198, 2100, 8, 336, 312, 486, 8, 438, 336, 265, 1096, 18, 219, 2195, 60, 2090, 1014, 146, 78, 314, 61, 533, 2, 81, 105, 48, 366, 440, 1101, 336, 252, 551, 42, 200, 1102, 735, 2206, 441, 22, 630, 2162, 490, 48, 4420, 66, 4422, 78, 58, 553, 2088, 15, 714, 221, 30, 69, 30, 246, 886, 1108, 112, 474, 2112, 3, 2220, 2220, 740, 4, 42, 18, 4446, 46, 247, 44, 4450, 78, 120, 1040, 18, 278, 4456, 742, 294, 222, 1486, 1056, 4462, 15, 414, 84, 248, 558, 540, 148, 2096, 42, 210, 1118, 178, 186, 66, 1119, 373, 6, 2240, 123, 249, 522, 66, 1121, 96, 16, 2211, 32, 498, 561, 1123, 318, 420, 28, 214, 258, 204, 1, 642, 2250, 234, 281, 208, 125, 751, 462, 498, 10, 1038, 46, 1504, 60, 42, 564, 2258, 50, 753, 112, 8, 144, 2261, 84, 180, 120, 502, 141, 1938, 75, 1078, 34, 755, 1133, 151, 18, 348, 2268, 176, 113, 126, 27, 174, 35, 4, 2272, 2273, 378, 1516, 6, 15, 284, 1092, 22, 455, 528, 210, 273, 2208, 18, 2280, 228, 78, 162, 82, 380, 4566, 570, 761, 152, 978, 42, 1072, 762, 60, 6, 198, 108, 90, 228, 508, 364, 4582, 95, 390, 1146, 46, 15, 96, 48, 2295, 30, 1530, 2296, 459, 382, 2298, 198, 24, 22, 1113, 174, 2301, 575, 153, 966, 80, 1, 418, 460, 364, 1152, 1974, 192, 210, 576, 54, 2308, 2220, 6, 924, 231, 66, 272, 3, 256, 660, 132, 1542, 154, 140, 192, 560, 330, 34, 180, 61, 193, 2319, 28, 48, 30, 2321, 21, 464, 44, 1548, 246, 7, 15, 4650, 581, 46, 534, 126, 96, 1552, 16, 1552, 232, 754, 6, 222, 26, 155, 583, 1074, 388, 924, 233, 129, 8, 4672, 90, 16, 498, 779, 2338, 2339, 6, 75, 2340, 222, 1170, 936, 70, 756, 146, 52, 66, 4690, 176, 342, 1173, 312, 293, 60, 252, 42, 46, 1566, 1175, 4702, 42, 940, 180, 261, 106, 1104, 78, 672, 90, 1570, 1178, 110, 130, 572, 336, 66, 58, 2360, 393, 2361, 1180, 6, 368, 2268, 98, 1182, 42, 738, 78, 1183, 262, 473, 3, 1578, 374, 1014, 13, 430, 2370, 240, 592, 24, 336, 92, 593, 1582, 18, 2375, 6, 672, 264, 79, 140, 1155, 60, 2379, 48, 506, 476, 432, 99, 952, 2382, 678, 148, 450, 13, 366, 1192, 21, 30, 95, 99, 112, 2388, 522, 7, 2046, 199, 4782, 66, 28, 184, 2393, 18, 228, 239, 133, 299, 4792, 368, 24, 108, 30, 1199, 2399, 1, 800, 2058, 200, 200, 465, 132, 198, 300, 228, 6, 2256, 200, 802, 1148, 53, 42, 4816, 8, 780, 30, 1606, 2410, 78, 33, 192, 126, 201, 560, 438, 66, 805, 75, 534, 2416, 322, 30, 690, 290, 403, 22, 782, 268, 2324, 258, 144, 2422, 390, 4, 186, 96, 42, 202, 330, 202, 970, 202, 1618, 1038, 336, 27, 972, 48, 1620, 18, 138, 810, 390, 1216, 540, 486, 2435, 84, 442, 1218, 6, 286, 1219, 5, 240, 60, 271, 305, 2304, 6, 976, 348, 180, 138, 2444, 81, 264, 1222, 696, 2446, 44, 16, 2378, 195, 770, 42, 1092, 126, 1634, 51, 108, 222, 2100, 204, 1636, 490, 409, 153, 4624, 6, 982, 1228, 148, 2458, 2459, 5, 18, 1166, 91, 41, 98, 820, 378, 6, 195, 112, 4930, 8, 2466, 137, 138, 88, 4936, 822, 32, 18, 180, 96, 4942, 34, 462, 2472, 96, 206, 84, 2, 2475, 618, 42, 619, 495, 174, 413, 33, 252, 15, 110, 413, 708, 16, 110, 570, 4966, 66, 828, 210, 552, 112, 226, 276, 99, 155, 78, 1170, 1146, 41, 1168, 598, 150, 132, 166, 69, 2493, 84, 1662, 498, 330, 6, 1664, 226, 3, 208, 2358, 336, 357, 0, 833, 60, 2501, 46, 6, 278, 556, 312, 626, 166, 1670, 534, 278, 1188, 464, 18, 1204, 192, 42, 50, 5020, 45, 1674, 78, 33, 1074, 152, 418, 2438, 502, 42, 48, 2154, 419, 234, 1258, 88, 228, 2519, 6, 2485, 630, 205, 96, 252, 812, 714, 315, 48, 4, 50, 140, 405, 342, 336, 13, 1164, 28, 5058, 22, 30, 46, 2460, 30, 253, 592, 281, 180, 24, 78, 460, 79, 396, 1218, 84, 138, 2538, 2538, 423, 42, 1270, 66, 528, 15, 112, 2542, 5086, 13, 726, 508, 1696, 198, 154, 141, 1018, 42, 566, 2548, 5098, 16, 1700, 425, 162, 28, 1020, 66, 2553, 638, 390, 24, 2412, 35, 1704, 639, 30, 639, 336, 213, 853, 0, 284, 294, 2484, 60, 5, 232, 1708, 32, 2442, 18, 366, 641, 812, 1200, 78, 53, 466, 366, 570, 256, 1248, 856, 138, 107, 294, 615, 2573, 6, 90, 34, 16, 66, 5152, 26, 103, 92, 285, 2578, 66, 21, 198, 308, 430, 1290, 1032, 30, 5166, 144, 287, 46, 110, 215, 246, 198, 22, 646, 2490, 862, 5178, 6, 78, 259, 280, 9, 240, 2592, 18, 1296, 5188, 43, 2492, 58, 576, 546, 519, 432, 433, 1232, 866, 6, 2226, 272, 462, 1300, 173, 72, 210, 30, 372, 52, 192, 1302, 600, 26, 444, 81, 138, 1304, 2448, 28, 2486, 186, 1740, 326, 18, 66, 2613, 653, 246, 261, 2615, 108, 5232, 2616, 116, 48, 77, 96, 390, 130, 291, 2620, 2226, 198, 524, 420, 26, 5, 1260, 6, 1276, 12, 272, 105, 1050, 8, 750, 14, 584, 262, 1052, 438, 414, 138, 18, 2632, 2508, 219, 478, 240, 150, 658, 5272, 146, 30, 659, 879, 84, 2639, 2, 2640, 414, 293, 55, 150, 440, 2480, 220, 105, 506, 6, 42, 429, 882, 32, 110, 5296, 441, 54, 13, 90, 30, 5302, 48, 212, 378, 420, 1326, 5308, 58, 2576, 41, 66, 2656, 1062, 221, 204, 886, 294, 18, 624, 886, 2661, 242, 35, 2662, 1140, 3, 584, 30, 1776, 105, 1333, 42, 96, 308, 592, 624, 252, 44, 756, 1335, 24, 166, 1068, 54, 2673, 570, 1782, 53, 2675, 222, 52, 223, 48, 102, 486, 414, 2552, 33, 893, 1146, 645, 148, 84, 447, 1788, 60, 174, 178, 130, 208, 99, 2686, 21, 6, 846, 42, 162, 268, 5380, 66, 192, 224, 179, 1346, 2693, 32, 1264, 42, 299, 336, 5392, 420, 246, 630, 768, 2698, 2699, 3, 490, 24, 900, 192, 506, 208, 1802, 78, 300, 540, 1158, 10, 2706, 1353, 342, 338, 5416, 42, 5418, 5, 138, 1355, 112, 112, 30, 2712, 99, 638, 660, 180, 2715, 96, 1810, 18, 1086, 75, 1359, 1359, 42, 16, 2720, 151, 907, 680, 22, 1164, 1254, 113, 2724, 108, 286, 644, 90, 12, 1090, 30, 848, 682, 442, 6, 42, 2730, 202, 341, 273, 455, 210, 1366, 1822, 91, 547, 18, 420, 528, 8, 111, 1369, 82, 2739, 8, 84, 2740, 2741, 152, 1096, 30, 870, 294, 498, 60, 2448, 686, 305, 165, 78, 228, 154, 916, 138, 2, 5500, 390, 5502, 21, 366, 2752, 2753, 144, 786, 252, 166, 78, 444, 459, 1102, 294, 51, 660, 2759, 22, 345, 50, 786, 1380, 48, 153, 5526, 230, 288, 78, 5530, 460, 502, 2766, 15, 43, 336, 210, 2660, 69, 1846, 1296, 330, 6, 1108, 1334, 903, 72, 2670, 3, 60, 173, 88, 2776, 4, 154, 926, 198, 432, 46, 1353, 102, 2781, 318, 78, 22, 1314, 28, 1392, 278, 618, 198, 2786, 464, 222, 80, 78, 2788, 1194, 15, 5580, 31, 1860, 116, 558, 126, 75, 42, 594, 42, 2795, 232, 1104, 699, 186, 699, 1344, 155, 508, 6, 933, 1400, 1290, 233, 522, 1401, 132, 700, 455, 16, 180, 660, 935, 600, 561, 6, 40, 689, 1872, 28, 24, 936, 5622, 18, 1, 672, 880, 66, 432, 281, 938, 2, 2730, 312, 462, 32, 313, 2818, 2819, 46, 470, 30, 18, 656, 564, 940, 1882, 32, 804, 112, 5650, 78, 2826, 256, 84, 12, 5656, 110, 5658, 141, 48, 1332, 606, 58, 34, 2832, 118, 108, 5668, 18, 689, 708, 60, 709, 113, 42, 810, 1328, 315, 35, 198, 473, 2841, 84, 378, 1421, 506, 13, 316, 284, 30, 158, 1423, 24, 528, 44, 30, 6, 230, 18, 5700, 2850, 380, 330, 162, 79, 438, 713, 86, 570, 571, 48, 196, 408, 42, 1428, 1429, 952, 126, 6, 953, 2860, 2784, 39, 228, 204, 902, 178, 336, 95, 52, 1432, 42, 1380, 15, 7, 5736, 450, 1912, 30, 5740, 28, 5742, 179, 382, 624, 2460, 239, 5748, 22, 315, 359, 522, 24, 575, 719, 36, 1439, 1326, 1, 822, 231, 112, 130, 1152, 465, 104, 102, 32, 576, 2772, 6, 550, 2886, 6, 342, 1404, 159, 5778, 272, 230, 1218, 5782, 30, 132, 262, 107, 1446, 2478, 192, 965, 180, 386, 2896, 180, 66, 240, 222, 21, 28, 1450, 322, 276, 290, 21, 2902, 5806, 22, 78, 246, 444, 726, 2906, 144, 581, 726, 138, 2908, 506, 96, 5820, 35, 646, 6, 232, 970, 2913, 690, 924, 26, 2352, 81, 306, 1458, 388, 162, 96, 138, 2919, 8, 58, 462, 2921, 486, 498, 39, 1948, 336, 1462, 6, 1950, 18, 195, 2926, 1170, 60, 5856, 28, 30, 146, 5860, 976, 30, 61, 176, 1254, 2933, 81, 5868, 293, 306, 366, 2514, 44, 46, 336, 326, 2938, 2939, 42, 2940, 688, 39, 735, 106, 108, 2436, 22, 150, 90, 168, 490, 1435, 420, 130, 66, 5896, 982, 2768, 58, 84, 678, 5902, 5, 1180, 984, 178, 30, 2790, 98, 2816, 246, 72, 1478, 78, 112, 480, 268, 986, 3, 285, 138, 2961, 740, 13, 1481, 5926, 18, 462, 592, 658, 247, 464, 462, 593, 78, 1978, 371, 5938, 6, 456, 2970, 282, 742, 140, 495, 936, 1486, 220, 48, 540, 15, 1984, 228, 99, 248, 66, 110, 116, 148, 331, 10, 132, 210, 1192, 234, 48, 186, 966, 99, 426, 373, 180, 476, 7, 41, 966, 420, 664, 66, 5980, 166, 960, 16, 18, 40, 2993, 498, 1456, 299, 998, 318, 1380, 9, 108, 214, 999, 1499, 2568, 1, 32, 1500, 308, 234, 200, 6, 858, 125, 1001, 300, 6010, 166, 78, 480, 200, 46, 182, 464, 462, 42, 222, 3010, 1422, 50, 30, 1430, 210, 8, 6028, 33, 81, 84, 670, 1290, 560, 502, 3018, 3018, 60, 75, 2586, 234, 3021, 755, 30, 3022, 6046, 6, 2882, 22, 2016, 176, 3026, 252, 258, 27, 224, 696, 328, 4, 252, 432, 966, 378, 202, 336, 3033, 15, 816, 202, 1398, 22, 6072, 253, 27, 210, 986, 253, 1013, 18, 1013, 380, 78, 78, 1216, 1424, 2028, 380, 761, 84, 2030, 761, 338, 138, 286, 42, 66, 508, 954, 60, 1220, 336, 2864, 108, 6, 105, 1470, 508, 740, 138, 96, 95, 6112, 1018, 1222, 46, 1019, 198, 420, 16, 3060, 204, 78, 1530, 42, 1020, 278, 382, 339, 51, 6130, 24, 1533, 1533, 204, 174, 2736, 30, 438, 153, 44, 123, 6142, 1, 1228, 438, 341, 364, 42, 5, 1025, 192, 438, 720, 41, 18, 2990, 1539, 342, 6, 60, 78, 79, 66, 8, 1541, 1320, 256, 495, 88, 176, 1542, 3086, 294, 18, 192, 140, 1544, 498, 34, 882, 28, 228, 193, 206, 103, 2948, 48, 2062, 618, 75, 21, 562, 162, 174, 1548, 3098, 1032, 3099, 15, 78, 1326, 443, 46, 16, 1484, 2068, 96, 2658, 66, 6210, 1552, 108, 42, 112, 6, 6216, 148, 230, 155, 6220, 240, 42, 388, 41, 282, 1434, 43, 2076, 132, 165, 90, 110, 519, 84, 779, 18, 1559, 2928, 6, 1027, 156, 1040, 222, 208, 173, 6246, 70, 1041, 0, 414, 52, 78, 754, 46, 176, 6256, 444, 284, 312, 298, 60, 6262, 84, 534, 30, 1044, 1566, 6268, 18, 1045, 42, 80, 3136, 50, 261, 1569, 168, 66, 78, 570, 116, 1020, 1570, 418, 96, 6286, 130, 990, 48, 696, 66, 420, 524, 1258, 393, 2098, 1518, 94, 6, 6300, 88, 190, 98, 96, 1050, 624, 738, 700, 315, 3155, 262, 3074, 30, 140, 1578, 3158, 54, 1540, 13, 42, 756, 3161, 240, 22, 1581, 18, 336, 3164, 30, 486, 1582, 1055, 3166, 180, 2, 6336, 72, 2112, 79, 1488, 150, 6342, 60, 138, 1494, 576, 506, 906, 42, 56, 99, 6352, 32, 15, 678, 162, 272, 3179, 13, 1590, 636, 12, 21, 198, 212, 6366, 99, 192, 42, 1518, 174, 1062, 177, 16, 199, 2730, 1062, 2126, 28, 708, 29, 1470, 18, 638, 510, 532, 133, 6388, 35, 246, 368, 710, 506, 639, 30, 78, 456, 117, 0, 129, 96, 1008, 200, 60, 1601, 3108, 44, 336, 32, 2136, 228, 286, 1068, 641, 200, 330, 1604, 2730, 53, 2140, 234, 2140, 8, 256, 48, 1071, 1606, 2142, 107, 3132, 33, 918, 1072, 6, 201, 390, 84, 184, 66, 1008, 3220, 3024, 178, 92, 146, 306, 30, 1612, 21, 2150, 403, 21, 1380, 1290, 268, 586, 1076, 2152, 144, 210, 179, 308, 4, 215, 780, 3108, 42, 924, 646, 359, 202, 6472, 246, 6, 1618, 336, 65, 90, 9, 270, 462, 30, 1620, 1296, 506, 498, 810, 102, 58, 1298, 540, 525, 1520, 432, 84, 88, 342, 1056, 6, 98, 3250, 1392, 5, 1300, 542, 30, 271, 3102, 30, 3056, 6, 498, 3256, 1302, 180, 882, 3258, 65, 81, 815, 1086, 592, 696, 28, 150, 3180, 16, 1088, 326, 930, 770, 46, 66, 653, 126, 2178, 1398, 1506, 108, 30, 1635, 726, 204, 48, 1090, 1091, 409, 174, 130, 3275, 6, 6552, 112, 198, 148, 533, 273, 936, 5, 729, 192, 3281, 91, 12, 462, 198, 820, 1642, 8, 6570, 195, 312, 774, 262, 8, 2192, 66, 336, 138, 1316, 1096, 3164, 822, 219, 132, 2820, 60, 598, 658, 1014, 34, 3114, 78, 659, 96, 61, 3298, 3299, 2, 330, 3300, 105, 42, 55, 366, 2202, 174, 1101, 220, 300, 252, 1552, 1653, 42, 413, 1524, 1102, 6618, 110, 2206, 42, 534, 22, 13, 3312, 2162, 552, 2838, 48, 1044, 276, 66, 795, 1326, 78, 474, 553, 553, 41, 1596, 45, 24, 150, 221, 1661, 2992, 69, 540, 18, 246, 1662, 3326, 1108, 242, 6, 474, 832, 6658, 3, 6660, 3330, 2220, 336, 105, 4, 3248, 833, 18, 308, 2856, 46, 6672, 1610, 44, 556, 202, 78, 3339, 166, 1040, 768, 405, 278, 570, 3342, 742, 18, 1672, 222, 6690, 42, 1056, 1673, 102, 15, 180, 784, 84, 33, 6700, 558, 6702, 418, 148, 1434, 288, 42, 6708, 60, 1118, 419, 168, 186, 208, 88, 1119, 1679, 3359, 6, 138, 1680, 369, 205, 268, 522, 930, 812, 1121, 224, 546, 16, 3366, 6, 32, 140, 6736, 561, 1606, 336, 318, 3370, 102, 28, 630, 843, 258, 30, 1584, 3, 546, 30, 2250, 306, 192, 281, 1624, 540, 125, 78, 1690, 462, 161, 396, 10, 1584, 132, 46, 966, 338, 60, 423, 156, 564, 5, 66, 150, 3388, 6778, 112, 1356, 1695, 144, 13, 638, 84, 88, 1696, 120, 96, 679, 141, 6792, 273, 75, 566, 2910, 34, 522, 16, 1133, 1602, 3401, 54, 680, 205, 2268, 66, 618, 113, 966, 390, 27, 3406, 644, 35, 400, 486, 2272, 30, 3222, 378, 6822, 213, 6, 1706, 3413, 284, 6828, 341, 66, 60, 6832, 528, 1366, 1708, 273, 786, 2928, 18, 855, 310, 228, 812, 111, 162, 830, 53, 380, 8, 240, 570, 132, 1628, 152, 856, 6856, 42, 6498, 294, 762, 184, 6862, 6, 686, 3432, 108, 16, 6868, 228, 3435, 26, 364, 1470, 2, 95, 1518, 180, 1146, 21, 2946, 15, 3441, 430, 144, 312, 3360, 30, 3403, 78, 2296, 287, 1680, 382, 294, 215, 198, 431, 6898, 22, 1122, 336, 174, 862, 1380, 575, 1151, 78, 966, 230, 3455, 3, 1110, 384, 460, 18, 3458, 1152, 48, 43, 192, 3460, 462, 576, 69, 3462, 2308, 432, 390, 6, 28, 866, 231, 1733, 72, 272, 990, 3468, 768, 173, 630, 132, 130, 30, 154, 1650, 3473, 192, 6948, 46, 330, 26, 816, 180, 318, 138, 193, 210, 3479, 28, 3480, 3422, 30, 1740, 198, 63, 6966, 66, 44, 80, 6970, 246, 1098, 158, 15, 108, 6976, 581, 498, 116, 534, 698, 6982, 96, 42, 498, 16, 291, 420, 232, 3495, 198, 6, 804, 699, 26, 1749, 318, 583, 6, 1750, 388, 3404, 272, 233, 1680, 42, 8, 567, 700, 90, 584, 3506, 498, 660, 438, 2338, 308, 7018, 6, 1392, 1755, 2340, 219, 28, 1170, 1171, 150, 70, 18, 572, 146, 540, 879, 66, 879, 1695, 176, 391, 2, 1173, 1506, 503, 293, 32, 30, 756, 440, 234, 46, 32, 105, 1175, 3526, 656, 42, 7056, 1764, 180, 32, 3366, 106, 252, 441, 78, 1766, 285, 90, 7068, 12, 1178, 48, 214, 390, 141, 420, 336, 3538, 3539, 58, 96, 20, 393, 66, 108, 1180, 558, 221, 368, 708, 1518, 98, 215, 1773, 42, 886, 3450, 78, 1140, 35, 786, 429, 7102, 3, 84, 144, 374, 1776, 7108, 13, 546, 42, 2370, 254, 158, 592, 646, 1779, 336, 44, 3560, 593, 3344, 24, 18, 1524, 1018, 18, 594, 330, 264, 1782, 3054, 140, 713, 222, 60, 861, 638, 48, 192, 3570, 476, 414, 1428, 99, 1020, 893, 2382, 6, 275, 148, 3410, 168, 39, 1788, 560, 1192, 3579, 178, 30, 3580, 252, 99, 1432, 1194, 2388, 6, 1749, 7, 140, 162, 199, 240, 30, 66, 7176, 96, 184, 179, 3486, 18, 326, 32, 239, 3592, 3593, 299, 78, 359, 368, 420, 7192, 108, 719, 768, 1199, 1740, 3432, 1, 378, 138, 2058, 900, 130, 200, 7206, 208, 396, 102, 1030, 300, 1803, 3606, 6, 10, 618, 200, 7218, 342, 1148, 858, 3480, 42, 272, 602, 8, 138, 7228, 30, 1032, 112, 2410, 3616, 1446, 33, 402, 138, 126, 180, 834, 560, 3621, 1810, 66, 3622, 7246, 75, 658, 28, 2416, 42, 74, 30, 290, 151, 290, 1710, 240, 22, 104, 1815, 804, 113, 726, 258, 546, 286, 2422, 726, 220, 4, 1038, 909, 96, 848, 3438, 202, 700, 6, 202, 110, 3641, 202, 690, 1821, 1038, 455, 294, 81, 1738, 1822, 48, 156, 162, 18, 2432, 220, 810, 8, 3108, 1216, 1188, 82, 486, 84, 3653, 84, 7308, 336, 1218, 152, 1190, 286, 18, 870, 15, 3658, 1686, 60, 3660, 522, 305, 305, 146, 6, 3440, 228, 348, 61, 1466, 138, 611, 576, 81, 390, 308, 1222, 890, 366, 2446, 367, 1572, 48, 336, 3672, 195, 166, 7348, 42, 1225, 459, 126, 1838, 735, 51, 1050, 282, 222, 22, 432, 204, 99, 786, 490, 84, 598, 153, 1842, 66, 18, 288, 8, 1228, 58, 460, 2458, 240, 1794, 5, 660, 1230, 1166, 210, 30, 41, 1804, 1846, 820, 246, 3492, 6, 7392, 1232, 112, 903, 852, 24, 1050, 3, 137, 3700, 224, 88, 740, 1518, 822, 154, 105, 18, 7410, 432, 96, 336, 247, 34, 2472, 3708, 2472, 78, 180, 206, 570, 28, 6, 598, 636, 618, 1584, 742, 619, 464, 7432, 174, 1486, 78, 33, 1859, 903, 15, 1062, 3660, 413, 1860, 248, 16, 338, 126, 570, 148, 7450, 198, 1792, 3726, 210, 232, 7456, 112, 7458, 186, 276, 30, 3504, 155, 373, 933, 1170, 933, 96, 41, 30, 233, 598, 12, 66, 132, 3738, 1246, 69, 16, 748, 84, 1068, 935, 498, 882, 7486, 6, 1872, 318, 226, 1872, 1218, 208, 214, 936, 336, 1782, 7498, 1, 576, 330, 60, 66, 234, 138, 3753, 938, 278, 125, 84, 312, 682, 816, 166, 313, 3758, 534, 136, 46, 1188, 1880, 3761, 18, 42, 455, 192, 940, 1882, 50, 3536, 804, 135, 3766, 8, 78, 2512, 1884, 1074, 84, 7540, 418, 198, 110, 502, 294, 3773, 48, 2516, 75, 419, 58, 246, 1258, 755, 118, 228, 3778, 3779, 6, 1890, 198, 630, 60, 176, 96, 1518, 42, 812, 27, 3696, 315, 631, 540, 4, 473, 7576, 140, 78, 378, 342, 1776, 7582, 13, 15, 1264, 84, 30, 1084, 22, 3795, 24, 46, 949, 210, 30, 1855, 1820, 592, 18, 230, 180, 1267, 380, 78, 1901, 7606, 79, 1086, 380, 1218, 86, 110, 414, 761, 48, 2538, 438, 1800, 42, 508, 102, 66, 952, 60, 15, 3668, 953, 2542, 108, 1758, 13, 32, 346, 508, 902, 3270, 198, 3819, 95, 141, 3820, 3821, 42, 46, 1274, 2548, 7, 1912, 16, 546, 1912, 425, 924, 1530, 28, 90, 546, 66, 382, 3726, 638, 1248, 239, 24, 3832, 80, 105, 284, 174, 639, 24, 7672, 639, 153, 36, 213, 116, 3288, 1, 1920, 1826, 294, 112, 364, 60, 7686, 465, 232, 192, 7690, 32, 546, 3846, 18, 6, 3738, 641, 7698, 6, 1200, 770, 7702, 53, 66, 963, 366, 230, 1776, 256, 700, 30, 856, 252, 1542, 107, 1929, 1808, 615, 192, 3306, 6, 1287, 386, 34, 3862, 7726, 66, 3770, 193, 26, 21, 18, 92, 48, 322, 2578, 104, 3780, 21, 860, 546, 308, 22, 1548, 1290, 420, 444, 30, 15, 3696, 144, 7752, 969, 46, 138, 1939, 215, 3879, 96, 198, 1940, 3324, 646, 1552, 32, 862, 970, 304, 6, 612, 924, 259, 858, 155, 27, 12, 1944, 2592, 388, 150, 1296, 1260, 138, 43, 912, 1794, 58, 2596, 90, 546, 486, 7792, 432, 779, 1948, 1232, 834, 708, 6, 1876, 1886, 816, 195, 222, 1300, 30, 60, 72, 70, 424, 30, 300, 1953, 52, 976, 7816, 1302, 558, 176, 26, 1955, 7822, 81, 312, 42, 1304, 306, 7828, 84, 95, 44, 186, 1958, 1566, 326, 1840, 653, 66, 42, 56, 653, 330, 39, 261, 1961, 522, 108, 3818, 78, 2616, 150, 3926, 48, 1570, 490, 288, 491, 140, 130, 1122, 1310, 2620, 982, 66, 198, 3933, 84, 420, 393, 1232, 5, 7872, 210, 6, 178, 3938, 12, 3939, 98, 105, 1686, 3941, 24, 738, 3942, 14, 112, 3234, 262, 606, 986, 438, 1973, 1578, 138, 1924, 358, 2632, 13, 7900, 219, 564, 18, 240, 1914, 3953, 658, 718, 336, 438, 462, 960, 659, 1582, 1978, 84, 159, 3959, 2, 3916, 464, 414, 282, 79, 55, 7926, 495, 440, 60, 102, 220, 3966, 3966, 506, 15, 7936, 126, 3728, 99, 882, 342, 1794, 110, 678, 56, 441, 331, 7948, 13, 3975, 210, 30, 480, 21, 48, 216, 946, 378, 99, 3762, 1326, 3981, 180, 174, 852, 3840, 41, 102, 199, 2656, 664, 528, 221, 28, 166, 886, 3988, 52, 18, 3806, 306, 886, 498, 133, 242, 1134, 998, 2662, 368, 780, 3, 2664, 570, 30, 999, 726, 105, 1260, 0, 42, 500, 975, 308, 200, 87, 624, 6, 2002, 44, 2670, 1001, 1335, 4006, 228, 166, 8016, 90, 162, 200, 264, 570, 560, 464, 53, 34, 1276, 222, 30, 8, 223, 50, 1932, 102, 1606, 210, 414, 4018, 4019, 33, 336, 268, 1146, 670, 201, 444, 618, 502, 447, 66, 3936, 60, 4026, 2013, 178, 234, 3450, 208, 8058, 30, 2686, 644, 122, 6, 403, 108, 42, 2016, 8068, 268, 1152, 252, 66, 366, 144, 224, 490, 576, 1346, 4, 2020, 32, 232, 966, 42, 930, 8086, 336, 1348, 202, 420, 816, 4046, 630, 1618, 22, 2698, 2024, 132, 9, 1620, 4050, 24, 253, 1620, 192, 66, 1013, 208, 810, 811, 78, 180, 4056, 540, 2028, 2029, 10, 352, 84, 1353, 390, 4061, 338, 6, 112, 42, 42, 246, 5, 1978, 954, 1355, 1722, 271, 112, 442, 312, 2712, 6, 3486, 638, 3824, 508, 180, 4072, 4073, 96, 28, 81, 18, 1018, 3930, 75, 696, 1019, 1359, 2039, 495, 16, 1020, 78, 151, 78, 770, 680, 2722, 1020, 1164, 126, 8170, 113, 742, 660, 108, 24, 48, 644, 8178, 204, 36, 4090, 3486, 30, 409, 22, 682, 44, 3870, 6, 1365, 0, 2730, 240, 148, 341, 1170, 4098, 455, 5, 1334, 1366, 630, 438, 91, 186, 3948, 18, 4104, 820, 528, 342, 1995, 111, 195, 78, 82, 1758, 8218, 8, 2740, 2055, 2740, 256, 138, 152, 432, 176, 30, 822, 4115, 294, 8232, 1958, 60, 140, 4118, 686, 318, 34, 165, 474, 4121, 228, 96, 90, 916, 103, 112, 2, 222, 2062, 390, 4126, 42, 21, 3938, 2064, 2752, 174, 250, 432, 8262, 1032, 252, 1033, 3540, 78, 8268, 413, 459, 46, 8272, 294, 110, 2068, 660, 4138, 3888, 22, 546, 20, 50, 108, 552, 1380, 8286, 6, 153, 276, 8290, 230, 2073, 84, 78, 240, 8296, 460, 1344, 41, 2766, 1776, 3762, 43, 150, 4152, 210, 165, 3558, 69, 4155, 519, 1296, 2078, 1662, 6, 462, 693, 1334, 6, 78, 72, 420, 1040, 3, 1980, 54, 173, 1041, 336, 2776, 1041, 96, 154, 833, 52, 198, 378, 4020, 46, 1314, 672, 306, 444, 556, 318, 3920, 298, 22, 166, 3576, 28, 8352, 4176, 278, 1044, 120, 198, 642, 18, 464, 336, 4181, 80, 42, 1012, 2788, 261, 4184, 15, 380, 66, 31, 13, 33, 116, 8376, 2030, 126, 418, 1904, 42, 164, 130, 42, 1794, 599, 232, 8388, 419, 699, 524, 108, 699, 88, 2098, 465, 144, 339, 6, 15, 75, 1400, 190, 205, 233, 600, 1050, 1401, 812, 1938, 700, 4094, 300, 16, 262, 3978, 660, 2806, 140, 600, 4210, 8422, 18, 336, 382, 689, 42, 8428, 28, 4215, 240, 936, 4216, 30, 18, 174, 4218, 672, 30, 4026, 66, 4221, 1055, 281, 170, 8446, 2, 1680, 78, 312, 2112, 689, 32, 396, 150, 2818, 4228, 192, 46, 2820, 2115, 30, 506, 423, 656, 4233, 56, 940, 66, 294, 32, 228, 666, 112, 162, 1806, 78, 1380, 13, 256, 1060, 3984, 12, 1696, 2121, 110, 212, 978, 141, 606, 192, 1332, 120, 566, 58, 2044, 606, 2832, 16, 8500, 108, 386, 1062, 54, 1063, 4140, 708, 462, 66, 709, 18, 8512, 42, 390, 532, 1328, 4258, 3648, 35, 710, 4260, 473, 710, 30, 84, 2842, 30, 1421, 213, 288, 39, 858, 400, 284, 96, 8536, 158, 2846, 60, 24, 2135, 8542, 44, 1708, 1424, 6, 2136, 1394, 18, 4016, 1068, 2850, 138, 812, 330, 693, 388, 237, 53, 3666, 713, 4281, 2140, 570, 2141, 1974, 48, 90, 856, 408, 2142, 4286, 1428, 294, 33, 952, 2144, 2046, 6, 2860, 102, 2860, 84, 16, 117, 345, 1008, 204, 26, 770, 178, 660, 1432, 95, 306, 2149, 1432, 1433, 21, 1380, 176, 3684, 7, 430, 330, 450, 268, 1076, 30, 1404, 2152, 84, 232, 287, 179, 246, 690, 624, 215, 696, 239, 8622, 42, 22, 2034, 4313, 359, 2876, 862, 24, 246, 1056, 719, 78, 336, 1439, 264, 1053, 3, 4320, 1036, 231, 30, 18, 130, 8646, 506, 465, 43, 30, 102, 2032, 4326, 576, 540, 786, 6, 618, 432, 2886, 420, 8662, 342, 866, 618, 477, 98, 8668, 272, 924, 5, 1218, 4336, 173, 30, 723, 4338, 262, 30, 868, 1446, 1368, 498, 192, 84, 48, 180, 2172, 26, 2896, 65, 4346, 66, 138, 1086, 222, 4348, 8698, 28, 336, 684, 322, 16, 1740, 290, 4353, 930, 2902, 66, 420, 22, 8712, 242, 246, 2178, 4158, 726, 4359, 108, 144, 924, 60, 726, 116, 2181, 2908, 1090, 84, 96, 8730, 174, 35, 198, 291, 6, 2912, 256, 970, 198, 8740, 690, 624, 273, 26, 1093, 4373, 243, 672, 6, 1458, 91, 8752, 162, 272, 198, 138, 2100, 4140, 8, 876, 336, 462, 312, 584, 486, 398, 8, 39, 438, 3738, 336, 705, 265, 6, 1096, 4290, 18, 22, 219, 2926, 2195, 8782, 60, 150, 2090, 28, 1014, 368, 146, 4292, 78, 976, 314, 879, 61, 1386, 533, 1254, 2, 1014, 81, 1467, 105, 293, 48, 8806, 366, 4202, 440, 44, 1101, 3774, 336, 105, 252, 2938, 551, 8818, 42, 8820, 200, 688, 1102, 32, 735, 96, 2206, 108, 441, 4415, 22, 88, 630, 90, 2162, 4418, 490, 4419, 48, 420, 4420, 21, 66, 420, 4422, 982, 78, 553, 58, 2158, 553, 678, 2088, 66, 15, 208, 714, 984, 221, 8860, 30, 8862, 69, 98, 30, 4433, 246, 1260, 886, 1478, 1108, 4194, 112, 35, 474, 268, 2112, 2046, 3, 2173, 2220, 138, 2220, 1776, 740, 8886, 4, 1481, 42, 4176, 18, 2223, 4446, 592, 46, 30, 247, 202, 44, 462, 4450, 4284, 78, 24, 120, 371, 1040, 4350, 18, 198, 278, 2970, 4456, 1782, 742, 30, 294, 495, 222, 810, 1486, 1487, 1056, 48, 4462, 1456, 15, 144, 414, 228, 84, 2233, 248, 893, 558, 330, 540, 1914, 148, 2980, 2096, 10, 42, 1788, 210, 4268, 1118, 234, 178, 4475, 186, 1278, 66, 99, 1119, 78, 373, 4080, 6, 476, 2240, 4481, 123, 162, 249, 420, 522, 4484, 66, 8970, 1121, 166, 96, 179, 16, 4370, 2211, 40, 32, 3846, 498, 690, 561, 299, 1123, 126, 318, 44, 420, 27, 28, 4048, 214, 768, 258, 1499, 204, 4499, 1, 1125, 642, 1500, 2250, 900, 234, 3002, 281, 6, 208, 9010, 125, 2253, 751, 300, 462, 210, 498, 4340, 10, 480, 1038, 276, 46, 342, 1504, 464, 60, 9028, 42, 820, 564, 3010, 2258, 138, 50, 1290, 753, 1430, 112, 1130, 8, 4521, 144, 33, 2261, 4428, 84, 4524, 180, 1290, 120, 822, 502, 1810, 141, 3018, 1938, 9058, 75, 240, 1078, 234, 34, 42, 755, 4533, 1133, 3022, 151, 4416, 18, 210, 348, 22, 2268, 2184, 176, 1296, 113, 252, 126, 2190, 27, 286, 174, 696, 35, 2220, 4, 10, 2272, 432, 2273, 848, 378, 826, 1516, 336, 6, 4302, 15, 9102, 284, 202, 1092, 3900, 22, 9108, 455, 253, 528, 2100, 210, 1822, 273, 253, 2208, 276, 18, 1302, 2280, 380, 228, 8, 78, 3042, 162, 1424, 82, 198, 380, 1522, 4566, 84, 570, 9136, 761, 18, 152, 138, 978, 1110, 42, 870, 1072, 508, 762, 3918, 60, 1525, 6, 1008, 198, 305, 108, 4578, 90, 105, 228, 229, 508, 336, 364, 138, 4582, 748, 95, 559, 390, 1018, 1146, 4586, 46, 366, 15, 198, 96, 264, 48, 3060, 2295, 204, 30, 166, 1530, 4593, 2296, 1020, 459, 12, 382, 2212, 2298, 51, 198, 2160, 24, 4599, 22, 1533, 1113, 4601, 174, 786, 2301, 30, 575, 2302, 153, 300, 966, 123, 80, 288, 1, 708, 418, 438, 460, 9220, 364, 2200, 1152, 5, 1974, 4613, 192, 838, 210, 720, 576, 3954, 54, 1846, 2308, 1539, 2220, 4619, 6, 4620, 924, 78, 231, 903, 66, 330, 272, 1541, 3, 812, 256, 486, 660, 88, 132, 9256, 1542, 2254, 154, 294, 140, 2262, 192, 432, 560, 1544, 330, 330, 34, 168, 180, 28, 61, 78, 193, 4638, 2319, 103, 28, 928, 48, 1547, 30, 618, 2321, 150, 21, 1326, 464, 162, 44, 2323, 1548, 78, 246, 1032, 7, 1456, 15, 910, 4650, 1326, 581, 1860, 46, 565, 534, 1484, 126, 4655, 96, 1518, 1552, 198, 16, 726, 1552, 4659, 232, 42, 754, 4661, 6, 186, 222, 148, 26, 4410, 155, 210, 583, 240, 1074, 933, 388, 3112, 924, 282, 233, 9340, 129, 9342, 8, 132, 4672, 2154, 90, 3116, 16, 519, 498, 4554, 779, 935, 2338, 1559, 2339, 3990, 6, 66, 75, 156, 2340, 1872, 222, 1008, 1170, 519, 936, 9370, 70, 102, 756, 1, 146, 9376, 52, 4592, 66, 754, 4690, 426, 176, 938, 342, 444, 1173, 1140, 312, 4695, 293, 60, 60, 313, 252, 81, 42, 30, 46, 624, 1566, 1567, 1175, 18, 4702, 2244, 42, 9312, 940, 3136, 180, 4706, 261, 804, 106, 168, 1104, 554, 78, 9420, 672, 348, 90, 84, 1570, 856, 1178, 96, 110, 4715, 130, 1048, 572, 48, 336, 4718, 66, 1573, 58, 524, 2360, 630, 393, 118, 2361, 1518, 1180, 26, 6, 726, 368, 88, 2268, 60, 98, 1344, 1182, 1050, 42, 9460, 738, 3154, 78, 315, 1183, 4733, 262, 2224, 473, 30, 3, 9472, 1578, 378, 374, 162, 1014, 4739, 13, 1494, 430, 756, 2370, 30, 240, 2314, 592, 1581, 24, 9490, 336, 862, 92, 30, 593, 9496, 1582, 1914, 18, 3166, 2375, 336, 6, 380, 672, 72, 264, 768, 79, 1585, 140, 150, 1155, 86, 60, 765, 2379, 1494, 48, 595, 506, 2332, 476, 42, 432, 2040, 99, 366, 952, 96, 2382, 2383, 678, 953, 148, 272, 450, 9538, 13, 1932, 366, 636, 1192, 902, 21, 4773, 30, 212, 95, 955, 99, 1160, 112, 42, 2388, 4518, 522, 286, 7, 177, 2046, 520, 199, 1912, 4782, 1062, 66, 4098, 28, 4496, 184, 29, 2393, 382, 18, 780, 228, 510, 239, 66, 133, 222, 299, 105, 4792, 4793, 368, 1554, 24, 506, 108, 2340, 30, 36, 1199, 456, 2399, 1540, 1, 4800, 800, 96, 2058, 112, 200, 246, 200, 1601, 465, 2058, 132, 267, 198, 32, 300, 4698, 228, 3206, 6, 1068, 2256, 9622, 200, 6, 802, 1604, 1148, 9628, 53, 4815, 42, 234, 4816, 230, 8, 418, 780, 144, 30, 465, 1606, 4821, 2410, 107, 78, 438, 33, 603, 192, 1072, 126, 294, 201, 386, 560, 84, 438, 2226, 66, 1380, 805, 3220, 75, 21, 534, 1380, 2416, 146, 322, 4572, 30, 1136, 690, 21, 290, 2419, 403, 1613, 22, 1380, 782, 1540, 268, 444, 2324, 1076, 258, 346, 144, 440, 2422, 537, 390, 138, 4, 9696, 186, 780, 96, 1188, 42, 1560, 202, 646, 330, 4560, 202, 72, 970, 246, 202, 882, 1618, 924, 1038, 65, 336, 4859, 27, 4860, 972, 462, 48, 388, 1620, 280, 18, 506, 138, 786, 810, 2433, 390, 58, 1216, 318, 540, 9738, 486, 1520, 2435, 9742, 84, 1948, 442, 342, 1218, 9748, 6, 1386, 286, 3250, 1219, 195, 5, 886, 240, 542, 60, 2373, 271, 750, 305, 30, 2304, 9766, 6, 4884, 976, 3256, 348, 336, 180, 176, 138, 3258, 2444, 42, 81, 9780, 264, 1086, 1222, 306, 696, 4893, 2446, 150, 44, 4895, 16, 1398, 2378, 326, 195, 96, 770, 35, 42, 198, 1092, 4901, 126, 39, 1634, 1398, 51, 576, 108, 9810, 222, 1635, 2100, 150, 204, 9816, 1636, 1090, 490, 660, 409, 414, 153, 130, 4624, 1185, 6, 9828, 982, 112, 1228, 9832, 148, 84, 2458, 273, 2459, 4919, 5, 54, 18, 192, 1166, 178, 91, 1596, 41, 462, 98, 9850, 820, 4814, 378, 24, 6, 9856, 195, 3286, 112, 774, 4930, 96, 8, 986, 2466, 66, 137, 1610, 138, 4935, 88, 1096, 4936, 13, 822, 1968, 32, 132, 18, 30, 180, 4941, 96, 658, 4942, 9886, 34, 420, 462, 78, 2472, 1140, 96, 1978, 206, 3298, 84, 468, 2, 12, 2475, 3300, 618, 282, 42, 4953, 619, 366, 495, 208, 174, 4730, 413, 220, 33, 690, 252, 108, 15, 1653, 110, 4961, 413, 99, 708, 1102, 16, 1241, 110, 9930, 570, 42, 4966, 331, 66, 522, 828, 3312, 210, 1988, 552, 1620, 112, 48, 226, 588, 276, 9948, 99, 795, 155, 804, 78, 180, 1170, 553, 1146, 4752, 41, 474, 1168, 135, 598, 664, 150, 9966, 132, 1661, 166, 2262, 69, 554, 2493, 18, 84, 302, 1662, 4688, 498, 1108, 330, 4884, 6, 998, 1664, 832, 226, 4278, 3, 1632, 208, 3330, 2358, 999, 336, 192, 357, 4, 0]

Tongan tulivuori -tehtävä fyysikoille

Tähdet ja Avaruus-lehden sivuilla on mielenkiintoinen artikkeli liittyen Tongan tulivuorenpurkauksen paineaaltoon, joka kuului/näkyi mittausdatassa täällä Pohjan perukoillakin.

Artikkeliin liittyvän kuvaajan ja animaation tietojen pohjalta voi päätellä kuinka kaukana vaikkapa Helsingistä tai Ivalosta tulivuoren purkaus tapahtui. Itse asiassa mittaustiedot määrittävät myös purkauksen paikan. Teinpä tästä tehtävän lukiofyysikoilleni.

Tehtävä

Oletetaan, että tiedämme Suomen pituuden (tai esim. etäisyys Utsjoelta Helsinki tai Ivalo – Maarianhamina) ja Maan säteen suuruuden, niin päättele kuinka kaukana Maan pintaa pitkin Tongan tulivuoren purkaus tapahtui. Mihin aikaan se tapahtui?

Oheisessa artikkelissa on animaatio ja painekuvaajat.  Esitä siisti ratkaisu perusteluineen. Etsi itse tarvittavat tiedot.

Arvioi tuloksesi virheen suuruutta ja mistä mahdollinen virhe johtuu. Tarvittavia kaavoja:

nopeus v = matka/aika, ympyrän kehän pituus = 2* pii * säde

https://www.avaruus.fi//uutiset/maa-ja-lahiavaruus/tongan-tulivuorenpurkauksen-paineaalto-tuntui-myoes-suomessa.html

Monty Hall Pythonilla – osa 2

Pari viikkoa sitten käsittelin Monty Hall -probleemaa Python ohjelmoinnin avulla. Jatkan tässä tarinaa aiheesta. Yleistetään ongelmaa hieman ja saadaan uusia ongelmia ratkaistavaksi. Aiempi artikkeli löytyy täältä.

Ongelma sanallisesti

Wikipediassa perinteinen Monty Hall -ongelma esitetään seuraavasti: ”Monty Hallin ongelmassa kilpailijalla on edessään kolme ovea. Yhden oven takana on palkintona auto, kahden muun takana vuohi. Kilpailija, joka ei tiedä minkä oven takana mikin palkinto on, saa valita ovista yhden. Valittuaan oven hän ei vielä avaa sitä. Jäljelle jääneistä kahdesta ovesta avataan toinen, ja sen takana on aina vuohi. Tämän jälkeen kilpailija saa valita, vaihtaako ensin valitsemansa oven toiseen jäljellä olevaan suljettuun oveen, vai pitääkö ensin valitsemansa oven.”

Yleistetään ongelmaa siten, että vuohien ja autojen määrää voi vaihtaa. Ongelma olisi nyt tämän kaltainen. ”Olkoon v vuohien määrä (v > 1) ja a autojen määrä ( a ≥ 1). Ovien määrä on v + a.  Vuohet ja autot laitetaan satunnaisesti, yksi kunkin suljetun oven taakse. Kilpailija valitsee jonkin oven. Sen jälkeen lopuista ovista poistetaan yksi sellainen ovi, jonka takana on vuohi. Tämän jälkeen kilpailija saa valita, vaihtaako ensin valitsemansa oven johonkin jäljellä olevaan suljettuun oveen, vai pitääkö ensin valitsemansa oven.”

Ratkaisu Pythonilla

Tehdään Pythonilla simulaatio, jossa pelaaja aina vaihtaa valintansa. Tutkitaan aluksi sellaista erikoistapausta, jossa on kolme ovea ja kaksi autoa. Yritän tässä jäljitellä minun tapaani tuottaa ohjelmia, ensin yritän saada ohjelman toimimaan yksinkertaisella versiolla, sitten siirryn monimutkaisempaan tapaukseen. Pyrin myös välttämään kovin pitkiä, vaikeasti luettavia koodirivejä. En myöskään pyri tässä mahdollisimman tehokkaaseen koodin. Tämä on tarkoitettu opiskelumateriaaliksi opettajille ja ohjelmoinnista kiinnostuneille koululaisille ja opiskelijoille.

Koodi

Alla olevat kuvankaappaukset ovat Spyder ohjelmointiympäristön editorin ja konsolin kuvia. Eli kuvassa näkyy ohjelma ja sen tuotos.

Jos olet lukenut edellisen tarinan ja ymmärtänyt sen, niin koodi taitaa olla aika itsestään selvä. Muutamia kommentteja silti. 

Rivit 1-7: Spyderin tuottamaa metatietoa, tämä on ”turhaa”. Toki rivi 2 takaa, että ääkkösten pitäisi toimia.

9-10: Random kirjaston funktiot, shuffle sekoittaa listan ja randint arpoo kokonaisluvun.

13: Luodaan ovet, nollat vuohia ja ykköset autoja eli voittoja.

16: Sekoitetaan ovet-lista.

20: Arvotaan luku väliltä 0, …, 4. Tässä pitää muistaa, että Pythonissa listan ensimmäisen jäsenen järjestysluku on 0. Funktio len(lista) tulostaa lista pituuden eli sen jäsenten lukumäärän. 

28: pop-metodi poistaa olion listasta ja antaa sen tulosteena.  Jos lista  = [13, 42, 666, 42], niin lista.pop(1) antaa tulokseksi luvun 42 ja samalla listasta katoaa jäsen 42, eli nyt lista on [13, 666, 42].

32: remove-metodi poistaa ensimmäisen esiintymän syötteestään. Jos lista  = [13, 42, 42, 666, 42], niin lista.remove(42) muuttaa sen listaksi [13, 42, 666, 42].

37: Sekoitetaan jäljelle jääneet ovet uudestaan.

42: Valitaan ensimmäinen ovi. En enää jaksa arpoa jotain ovea ja sen jälkeen avata sitä, avaan eina ekan oven. Rivin 37 sekoittaminen takaa, että ovi on satunnainen. Saman olisi tietysti voinut tehdä jo rivillä 20, mutta siellä yritin noudattaa alkuperäistä reseptiä.

46-49 Päätöksentekoa voitosta.

Kuva, joka sisältää kohteen teksti

Kuvaus luotu automaattisesti

Alla pari suorituskertaa.

Kuva, joka sisältää kohteen teksti

Kuvaus luotu automaattisesti

Iterointia

Toistetaan peliä muutaman kerran ja lasketaan kuinka suuri osa tuottaa voittoja.

Kuva, joka sisältää kohteen teksti

Kuvaus luotu automaattisesti
Kuva, joka sisältää kohteen teksti

Kuvaus luotu automaattisesti

Ongelmia

Palannen yleiseen ongelmaan lähiaikoina. Nyt varmaankin valistunut lukija pystyy itsekin tuottamaan oman ratkaisunsa tämän kaltaisiin ongelmiin.

1 Jos vuohia on x kpl ja autoja y, niin määritä P(x, y).

2 Milloin P(x, y) > ½? Millainen tasoalue on kyseessä?

3 Kun sinulla on lauseke P:lle. Miten esittäisit sitä fiksuimmin kuvaajana?

4 Etsi pilkkuvirhe artikkelista.

koodi colabissa

täshätää

Jos edellä oleva linkki ei toimi, niin koita toisella selaimella.