diff --git a/2024/04/04.py b/2024/04/04.py new file mode 100644 index 0000000..4bf3daa --- /dev/null +++ b/2024/04/04.py @@ -0,0 +1,31 @@ +arr = [] +c = 0 +with open("input04.txt") as file: + for line in file: + arr.append([]) + for a in line: + arr[c].append(a) + c += 1 +ctr = 0 +for i in range (0,len(arr)): + for j in range(0,len(arr[i])): + if arr[i][j] == "X": + if i > 2 and j > 2: + if arr[i-1][j-1] == "M" and arr[i-2][j-2] == "A" and arr[i-3][j-3] == "S": + ctr += 1 + if i > 2: + if arr[i-1][j] == "M" and arr[i-2][j] == "A" and arr[i-3][j] == "S": + ctr += 1 + if j > 2: + if arr[i][j-1] == "M" and arr[i][j-2] == "A" and arr[i][j-3] == "S": + ctr += 1 + if i < len(arr)-3 and j < len(arr[i])-3: + if arr[i+1][j+1] == "M" and arr[i+2][j+2] == "A" and arr[i+3][j+3] == "S": + ctr += 1 + if i < len(arr)-3: + if arr[i+1][j] == "M" and arr[i+2][j] == "A" and arr[i+3][j] == "S": + ctr += 1 + if j < len(arr[i])-3: + if arr[i][j+1] == "M" and arr[i][j+2] == "A" and arr[i][j+3] == "S": + ctr += 1 +print(ctr) diff --git a/2024/04/input04.txt b/2024/04/input04.txt new file mode 100644 index 0000000..8bfa2f5 --- /dev/null +++ b/2024/04/input04.txt @@ -0,0 +1,140 @@ +SMASMXMXSAMXSASXXAMXMAXXXMSXMASAMAXMASXSMXXMXMXAMXXXSAMXMXMSMXSXMASMSAAAXMASXMSMMSSXMMSSMXSMXXXMAXMMMXMXAMXMXAXMASXMMMXAXMAMSAMXAMMAAXXMASAM +AMASAASAMAMSAMMXMSXSAXSMSXMAMXSXMASAAAAAXSXMXMASXMMMSXSMMXMAXAAASMMAMXXMSAMXMASXAAXAXAXSAMXMSMSMSXSAMMSMXXAXMSMSMSASXXXXMXSASXSXSXSSXSAMXSAX +MSAMMMMASAMMAMXSXXAMMMXAAXMSAMXAMASMMMSMMSAMXXAMAAXASMMAASXMSMSMMSMXMAXMXMAMMAMMMMSMMSMXSAMXAAAAXASASAAAMSMXAMAAASAMAASXSAMAMXMAMAMAASAMAXMM +XMASMXSMMXXSAMXSMMMMXAMXMSAXAXSXMASXAXAMASAMXMSSSMMXSAMSMMAXXAMXAXMASMASASMMSAMAAMAXAMMAXMMSMSMXMASAMMMSMAAMSMSMXXAMMMMAAAMSASMSMAMXMXAMMSMS +MMAAAAMXMAMAAXAMMAAXSXSAMXMXMMMAMMXXXMXMASAMXMAMAAXXMMMAASXMMAMMSSSMMXASASAAAXSMXSAMSAMASAMXAMMXSXMAMXXXMMXMXAXXMSAMXAMXMXMXASAMXXMXMSXMXAAA +AMSSMMSAASASXMSXSXSMMMSAXXXASXSMMSXMMSSMASAMAMASMMMXSASMMMAXMMXAMXAAXMXSAMMMXMSXMAXXMAMASMMAMXMASASXMMMMAXAASMMAXMAMSASMMMMMMMXMASXXMAMXSMSM +SAAAAAXMSMMASAAXSAMMSAXMASXMAAAXAMAMXAAMXMAXXSASAAAASXSSSXXXXMMSSSSMMAXMAMXSAAMMXSSMMXMMMAXAMXMASAMMSAAMMXMXAASXMXMXSAXMMAMSSSXSAMXMMAXXAAAX +AAMMMMSMAAASMMMMSAMAAMXMAMAAMSMMMSAMMXSMSSSMAXAXXMMMSXMAXXSMSMAXMAAAASXSXMAXMSMAAMAMSMMAMMXMXXSAMXMAMMXSAXSXSMMMMMSAMXMASASAAAAMAXAMSASXSMSM +MMXXXXAXMMMMAMMMSAMXXXXMAMXMXXXAXXASXMMAMAXMSMSMXXXXXASMMMSAAXSSMSMMSMMMMMMSXXAMXSAMAASMSSXSAAMXMMMMSMXMASMAMXMAAXMASMMASXSMMMMSSSMMSXMAAAXX +XSXMASXXXXSMSMAASXMSMMMSMSXSSSMSSSMAAXMAMXMXMAXSSXSMSXMSAAMMMSXMAXXMAAAXMAMMAXMXMAASMXMAAAAAMSMAMAAAAMXMXMMAMASMSSSMMMMASASXXXXAXXMASAMMMMSA +XMAXAMAMSAMAXSMMMAAAAAAAXAAAAAXAXAMXXMSXMAAAMMMAMASAMXASMSMXMXAMAMAMASXSXSAXMXXMAMMMMSMMMMMMSMMMSSSSSMMSAMSMSXSAMMAMAMSASMSSSMMMSXMASMMXSAMM +SSSMASASMAMAMAMMMMMXXMXMMMXMXMMMSXMSXXMASXXXSAMAMMMSXMAMAAMASMMMAXXMMXMMAMXAMMMMSMMSAMXXXXAXMAXMAAMAAAAMXXAAAXMXMXAMMMMXMXMASASMMMMXSXXAMASX +AAASMMXSMSMXSAMXASXASMSSXSAXASAMAAXAAMSMXSAASXSAXXSMMSSMMMMMXAXSXSAMXAXMXMSAMAAAAAAMASAXASAMMMMMMSMSMMMSMSMSMMMSMMMXMMSSMSSMSXMASAMXMMMMXXMX +MXMMSAMXAXAASXSSMSAMXAAMASASXMASMSMMMAXSAMXMSXSAXXASAAMAMAASMMMAASAMSMMSAMXAXSMSSSMSMMMSMAMMASAASXXXXAAAAAXXXAAASASXSAAAXAAXXAXMAMMAMAAXSSSM +XASXSXSMMMMMMXXAXXMAMSMMAMMMMSMMXAXXXMXMMMMXXXMASXAMMXSMMSMSASXSMSAMXAAXAXSSMMMAXAAMMAXMXAXMXSSSSXAXSMXSXMXSMMXXXXMAMMSMMSSMXXXMAXSASMMMAAAX +MMSASASAXMXSMMMSXSAMMMAMXMMAXAXSXMMSSMAXXAMXMXXAAMMMMXAAAMXSAMAAXSASXMMSSMMMAXMXSMMMSXSXMASXAXXXXXMAXMAXASASXAMSMSMSMMXXXMXXAMMSAMSASMMSMSMM +SXMAMMMXMAAXAAMAAMMXAMAMSMXAMMXMAAAAAMAMSMSAMXMAMMAAASMMMSMXASAMXSXMASAAAAAMSMSAAXSAMMSXMAXMMMMSMMXASXMSAMAXMXXAAMAMXMMMMMMMXSAAAMMMMXXAAAXX +MXMAMMSSSMXMSMSMMMXMMSAMXMASMXAXSMMSSMMMAAXXMAMMXSMSMMAXSXASMMXXXMMSMMSSSMMSMAXMASMAMAXAMMSMMAAAAXMASAASAMSMAMSMXMAMAMASMXAMMMMMMMXMASXMSMMX +SASASXAAMMAAMAMMMMAAASMMSMAMAXMMMAMAMAXSMSMSSMSAAXAXASAMXAMXAAXXMAXSAAXXAAXSMSMXMXMMMSSMMMAMMSMSSMMMMMMMAAXMAMASASASASMSXMAXAXXXSSSMASAXXASX +SASASMMSMMMSMAMAASXSMXMASMAMSMMASAMAXXXMAXXAAXMASAMXAMMXMMMSXMXSXSASMMSMSSMMAAMXMASXAAAMAXXSAXMMXMXMAASXMMMXXSASMSXSASXMXMASXMMAMAMMASMMSAMS +MAMAMAAMAXSXXXMSMSAMXSMASMMXAAAAXASXSSMSASMMSMXMAMSMXXAXAXAXAMAMXMMMXAXAAAAMXMMMMAMMMMMSASMMMSAMMMAMXSXXAAAMXMMSASAMXMAXAXAAAXAAMAMMASAXMMMA +MAMAMMMSAMMAMXMMAMMMMAMASASMXMMSMMMMMXAMASXMAMAMXAXXSXMMSMMSSMASXMMXMASMMSMMMXXAAMSAMAMMASAAASAMASAMMXXSSMMXAAMMMMXMASXMXSXASXSXSASMASMMAAAM +SAMAXAAXXAMAMAAMAMSAMXSXMAMAXSAMASXAAMXMAMASASMSMMAXMASAAXMAXSAMAMSAAMSMMXAXAAXSSMSMXAMMAXMMMSXSMSAASAAMXMASXSMASXMMXASMASMMAAAASMAMXMASXMXX +SAMXSMSMXMMASMSSMMSASMXAMSMSMMASAMXMSMSMSSMMASAXAMAMXASMSXMXMMMSSMSXSAMAMSMMMSMMAAXASMSSMAXAAMMMMMMMSAMSAMXSAAMAMAMXMASXAMASMSMMMSAMXSASMSMS +SAMAXAAXMMSMMXAXMASAMMSXMAAMAMXMXMMSAMXAAMXMXMMSXMSSMMSXMASXMAXAMXMMMMSAMAXASMASMMXXXAAAMMXMMSAAMAMMMAXMAMXXXMMMXAMXMASMAMMMAAXAXMXSMXAMASAM +SAMXSMMSAMASXMASMMSXSXXAXMSMXXMXXAXSASMMMSAMASXMMXXAAASAAXXAXSMMMAAXAAMASXSSMSAMXSMSMMSMAAMXMSMSSMSAMXMSSMSSMMXSMMSXMMSXSSXMSMSMMMSSXMSMAMAM +XMMXSAMXXSAXMAXMXXMASMSMMXXMMMXMSXAXXMXMASASASASASMSMMSMMMMSMMAXSSXMASXXMASAMMSSXMAXAAAXMMSAAMAXAXSXMAMXAAAMAAAXASXXSMMAMSAMMAXXAXAXXXAMMMAM +SXSASXMMXMASXSSMSMMAMAXMAXSAAMSXSMSMSSXMXSAMASAMSAXXSAMXAAAMASXMMMASAMXAXMMXMAXMAMMMMMMXSASMSMSMAMMXSAMSMMMSSMSMMMAXXAMMMMMMMMMSXMASMMMMMSMM +AAMXSAMXMASAAAAAAXMSXSXMASXMASAAXAAAXMASAMXMMMMMMMSMMSSSSSMSAMMAAXMMMMSMMXMAMSSSMMSSSSXAMASXAXAASXMASAXXXAXMMAXXXAMMSXMAAXMAXSAAXSAMAAXAAAAA +MXMXSMMASXXMMSMMSSXXAMXXSXXXSAMXMSMSMSSMMSASMMSAMXSAAAMAMAXMASMSMMSAAMAAXMXAMAAMXAAXAXMXSXMXMSMSMAMMSMMMMMMSMSMXSASMXMSMSMSASMMSMMASXMSMSMSM +XMXMXXMMSAXXMXAAXXAMAMMXMAXMASXAXMMXAMAAMSMSAAMASAXMMSMAMMMMMMAXMASMMSSSMSSSSMMMMMSSMXAAMMMAXXXAXMMAXMASMMMAAAAASAMXAXXMAAMXMXXXASAMMMXAMXMA +MXAAMMSAMXMSSXMMSMXMAMAMMMMXMAMXMXAMAMXMMXASXMMMMMXMMMMXSXAAXMMMSAMAMXMAMAAMSAMXAMMAXAMSMAXMMMSXSXMASMMMAASMSMMMMAMSSXMMSSMSMSXSMMMSAXMAMASM +MSSMSAAAXXXAAXSAMXSMSXSAASXMXSSSMMSSXMASXMXMMSXSASXSAAXSMMSXSAXAMAMMMXMAMMXMSXMSSSXXMMXAMSMMAASAAXSASAAMSMMAXXAAMXMXMASAMXAXXAMSAMXSXXMAMMMM +AAAAMAMSMXMMMMXAMXMAAAASMSAMSXAASMAMASASAMXSAXAMMSASMSMAAAAASAMXXAMAAMXSSXSMXSMAMMMSMSSSMXMXAXMSMAMASMMXAAMXMSSMSAMMSAMASMMMMMMSAMAMSXSAMXAX +MMSMXSMMXMXSAMXAMSMMMSMMXMAMXMXMMMXXAMAXASASMMAMMMXMAMXXMMSXXASMSMSMMSAAXAXAAXMAMAMAAMAMAXXXXXMAXSMAMASMSMMXXMASMXMAMMSSMXASXXAXAMSSSXMASMXS +XXXMAMXXXXAAAMXAXXAMAXAXXSMMMSAMXMMMSSMSMMASXMMSAMAMMSXMAMXMSMMAAAXAAMMMMMMMMMMMSASMSMAMMMMXSASMSMMXSAMMXAAMSSXMMMSAMXMAMMMXXMASXMXAMASMXMAM +ASAMXSXXMMMSAMSSSSXMASAMMAAAAMASAMAAMAMAAMAMAXAXASXSAAASXMAXAAMSMMMMMMXSASAXXAAAMXMMAMASXAAASAMXSAAAMAMAXMMMAAASXAXASASAMASMMMMAMSMMMAAAAMAM +MMASAMXMMSAXMMSAAMAMASASXAMMXSAMAXMXSASMSMMSMMSSMMAMMSXMASXSMSXAMAAMXSMMASXSSMSMSASMXSAMXMMXMXMAMMMXSAMSSMXAMSXMASMXMASASASASXAAXXAMMMXSMSAX +XSXMASMSAMXSASMXMMXMXSAMASMSXMASMMSASMSAMAXAXXXAAMAMXMXMASAMXMXMSSMSAAAMMMMMAAAASAMXAMASMXMMXSMSSXMXMAMXAXMSXMASAXSAMAMMMMSAMXSSSSXMAMMMAXXX +MMXAXXXMASAMXAXMASMXAMAMXMASXMASAMMAMAMAMXSASMSMMSMSAMASAMMMASMMAMAMXSMMAAAMMMMMMAMXMSAMMASXAXAXXMSASAMMMMAAASMMMASXMMMSAXXXMAMMAAMSASMMMMSA +XMASXMSSMMMSSXSASAMMMSAMMMAMXMAXXMXMMSMSMXMAMAXXAAXMASMMMSMSASASASASAMASXXMSSMXSSXMAMMXXSASMXMMMMMSASASASMSMXMXXMASAMSASMSMXMXSMMMMMASXAAAAM +AMAMAXMASMXAAASMMMAAXMASAMAMXSSMSSSXXXAASAMAMXMMSSXMAMAAAAAMAXMSASMSASXMMXSAMXAXMASXSAMMMASASAMAAMMAMASASAXXMMXXMASMMMASAAAAXXMXMASAMXMXMAXX +XMASAMSMMSMMMXMASXSSMMMSXMASAAAAAAMMMSSMSMSSSMMAMXAXSXSMSSSMSSXMXMASAMMMXMMASMMXSAMAMMSXMXMMXAXSMSMXMMMMMXMAMAMMAMXXAMXMXMSASXSASMXMSSXMXSXM +XMASAMXXAXXXMASMMAMAMSAMMSMMMSMMMSXSAAAXXAAXAMMASMSMMAMMAAAAAMXMXMXMMMSMAASXMASXMMSXXAAAAAMXSSMXAMMMXXSXSASXMAXMAMXSXSXSAMXAAASAXXAMAAASAMAS +XMASMMXMASXSXXXXMXMAMMASAAAAAAXXXXAMMSSMMMMSSMSXXXAAMXMXMSMMMSAMXSAAAAAMAMXAXSMAAAMAMXSXSMSAAMAMAMSMSASXSMSAMASMASXAMMMMAMMMMMMSMXMMMSMMASAM +SMASMSMSMMAAMSSMMAMAXSSMMSSMMXMXAMXMXMAMXAMXAASAMSSSMSMSXMMSAMXSASMSMSSSSSSSMMSSMMMSAMXAXAMMSMXMAMAAMXMAMMSAMASMAMXMASASMMSASXAAXASAMAXMXMMS +XMASMXAAXMMMMAAASMSMMMAAAMAXXASMSAASMXASMSSSMMMAMXAMAAAAASAMMSMMASAMXMAXMAAXMXAXXMAMXMMMMMMMAMAMXXMMMAMAMASAMXMMAMAMXMAXXAMASMSSSXSASASMXMAS +SMMXMMMMXXXAMMMMMXAMASMMMSAMMAMAASASAMASAXMAMAXAMMMMSMMMMMAMXAAMXMAMAMXSMMMMSMMMSMMSASAMASMSASASXMSASASASMSAMSMSMSMSMMSMSSMAMAAAMXSAMASAXMAS +SASMMAAXXMMSSSXSXSXSASASAMAXMAMXMMXXMXMMMMXXSXSSMSXMASXMXXMMMSSSMSSXMSAMXSMAAAAASAASASMSASXSASXSAMSAMAXASXSMMXAAAAAAXXAAAAMSMMMSAMMSMAMMMMAS +SAMXSMSMMAXAAMAMAMXMASAMXMAXMAMSXSMMSMXAMXMASAAMASASASXMSMASXAMAAXMASMASAMSSMSMMMSMMMMXMASAXAXASAMMMMSMMMASAMXMMXMXAMSMMMSAMXMAXMXAXMXSXXXAX +MAMMMMMAMSMMSMXMAMSMMMMMSSMMSAMSAXAAAAMMMXAAMMMMAMAMXMXAAXAXMXSMMMMXMAXMXMAXAXMAMASXXXXMAMMMXMMMAMXAAXAMMXMSMAMSASASAMASAMAXXAMXSMMXSAMXAMXM +MAMASASAMMAXAAASAMAXXAMAMAMAMXSMSMMSSSSMMSSSMAXMMSAXAAMSMSMXAMXXAAXSMSSSMSASXMAXSASXMXMAMASMAAXSSMMMXSSMXMMAMMSMAMAMXSAMASASXXMAXAMAMASAXXSA +XAXXSASXMXSSMSMSASMSSMMMSAMMSMMAXXMAMMAAAAXAXSMSASASXXAAAAMASXMSMSMSAAAAAMAMXSMAMAMASMMMSMASXSAXAAXSXAAXXXMAMMAMAMSMAMASAMAXMAMMSSMXSAMXSXSS +SSXMMXMAMAXXMAMXAMAAXXAAXMXMAMMAMXMXSXSMMSSMMMAMXMAXASMMSMSAMAMXAMXMMMMMMMAMMAMXMAMMMAAAAMMXMMMSMSMSMMMMMMSSSSXXAXXMAMAMAMAMMAMXAAMMMASXMAMA +AAASXSMXMSSMSSSMSMSMSSMSMSASAXMXSMSMSAXXXMMXAMMMASMMAMSMAMMXSMMMSMASXSXAXXASXXXXSASXSSMSSSXAXAAXXXAXXMAAXXAMXAMSSSXSXSSSXMAMMAXMXSMAMMMXMAMM +MSMMAAXSXMAAAAAXAAXAXXAAAXAXXMMMMAAAMAMSMMMSXSXSAAAMXAXXASAMXAAAAAMAAMMSSSMMMXAMMAAAMMMXAAMMSMMSSMMMXXXSSMSSMXMAXMMMMMXAASASXSMSXMMSMASMSSSS +MAAMMMMMASMMMSAMMSMMMMMMSMAMSASXSSMMMAMAXAAMASMMSSXMMMMSXSXMXSMSSMMMMMMAMAASAMXXAMMXMAMSXMXXAXAAXAXMMSAAXAMXMMMSSMAMAMSSMMXSAMASAMAASMMAAAAM +SMXXAXXSAMMSAXMAXAAMASXAMMAASASAMASXSXMSSXXXAMMAMXMXAMMAMXASAMXAAASASAMMXSMMMAXAXSSXSMMMAXASXSMSSSMAAMMMMSMAXXMMAMXXAMAAASASAMAMAMSMSXMMMMXM +MXMSSSXMASAMAXXSSSSMAXMASXXXMAMXMAXMASAAMMSMSSSMXSASXSXSXSAMXSMXMMSASASXMAXXXSXSXMMMMMASMMASAXXXAXMMMSAXAXSXMMXSAMXXSXMSXMASAMXSAMXXSAMXSXMS +XAAMAMASAMMSXMSXMAMMSSXSAMXMMAMMMSSXASMMMAXAAAAAASMSXSAMASXMAXMAMXMAMAMMAMMMMMMXXMAAASASASAMMAMMXMXMMSXMAMAXAAAMXXMAMMXMXXASAMAXAMXSSXMAMASA +SMMSAMMMMSXXAXXAMAMMAMMMSMSASXMXAMSMXSAASMMMMSMMMSAXXMAMAMAMSSSXSAMXMSMMAXAXAAAXAAXXXSASMMASXAXSMSAAXMAXSAMXXSXSAMSAMASXSMAMMMAMSMMMSXMMSMMM +XXAXMXMAMMMSMMSMMXXMAMAXAMAXMMSMMSMSMMXMMAAAAXXAXMMMASAMASXMXAAAAMMSMMASASAXSMSSMMSMAMXMASMMMMSMASXSMSXMAMXMAMAMAXMASXMASMSMSMSMXASAMXXMAAXX +XMMSMASMMAMAAAXMXSMSSSMSXSMSMAAMXAAAXSMMSSMMSSSMXAXMAXASXSASMXMAMXAAASAMASMMXMMAAAAMXMASAMAAXXAMXMMXXSMMAMAMAMAMMMMAMAMAMMAAAAAAXXMAMASXSMMM +MAMAMMXAXSMSXMXSAAAXXAAMXMXMMSXMMMXMSAAAXAAXAXMASASMMSAMASAMXMSAXXSMMMXMAMMAMSSSMSSSXMAMMSMMXMAMAAXMASAXMSXXXSXSXMXSSMMSSSMSMSMSMXSAMXXAAXAA +AASASAMSMXAXXMAMXMMMSMMMXSAMMXAAXMAXMXMMSMMMMSMMAAMAXMAMMMMMAASXSXMMAAXMXMMMSAAXAXXMAMXSMXMAASXMSSMSXSAMMMMAMXASAMAMAMXAAAAMAAAXAMXXMXMSMSXS +SASASMAAAMMMMMASMSSMXAAXAXAMASMMMSMSAMSMSXMAXAMXMMMXAXAMXASXMMXXMASAMXASAXXXMMSMMMSMMMXSXAMMMSAAAAXAAMMXAAXSSMXSAMXSAMMMSMMMXMMSMXMASMAMAMXX +XXMAMXSMMMXMXAMSXAAASMMSMSSMXSMSMXSAMXAAXASXSMSAMXMASMMSSXSXSAXXMAMXMXMMAMSAXAAAMMSAMSASMXMMXSMMMMAMXMMSMSMASAASAMXMAMXXMXAXXXMAAASAMMAMAXAM +SXSAMXXMXSASASMMMSMMXAXAXAAMXSAAXSAMSSMSMMMMAMSASXSXMAAAMAMASXXMMSSMMSXSAMXMMSXSAASMMAAMAXMXAMXXSXSXSXAXAMMAMXAXMSXSMXSAMSMSXXXMSMMASMXSSMXS +AAMAMSXMASASMMAAAAMXMSASMSXMAMSMSXXXAMAMASAMAMSAMXMMSMMMXAMMMMMXAAAAASAMSSXMMMAXMAMXXMMMSMSAXMASMAMASMSMXMMXSMXMAMAMAASAMXAAAMSAMXMAMXXXMMMM +MSMSMSAMMMMMXSXMSASXMMAXAXXMAXAXAMXMMSAMMMAXXMMSMMSAXXXXSMSMASMAMSXMMMAMASASAMAMXMMSMSXXAAASMXMAMMMAMAMXMXMAXAAAMMSMMMSAMXXMMMAASMSXSXSAXAAA +XAAXAXXMXAXSAMXAMXMMAMAMAMMSMSMMAAMMXMXSXSSMXMAXXAMMSXMAXSAMXSASMXXMASMMASMMAXMAXMAAAMSSMXMAMXSSMMMMMMMASAMXXSSSMAAAMAMMSSXMASXSMAAAMAAMSSSM +SXSMXSAXSMMMASMXASAXAMAMXMAAMXXXAXAAXMSXMAXAAMMMMSSXSAAMXSMSMXAXAMXSASMMXSXXXMMASMSMXSASXXSXSASAAMXMAXSASXMAMXAMMMSMMAMSAMMSASMAXMMAMAMMAAMX +XAXASAXAMXAMAMXMSXMSXMXSSMSSSXXMASXXSXSAAAMMMSAAAAXMSASXMMXSAMMMSMMXXXXSMMASMSMAMAAAXMMMMXAAMXSSMMSMMMMASMXXSMASXXAXSXSMAMAMAMMAMXXMAXSMMSMA +MSMMMMXMSSXSAXXMMAMAMSAMXAAMAMXAAXMAMAXMMSXSASMMMMSAMAXMAMAXXSMAXSAMXMMSAMXMAAMAXXMSMSXMXSMXMAMAMAMASXMXMAXMXXXMASXMXMAXMMSMSXMMSXMXMMXAAMXM +AXMMSXMMXAMSAMXAXAMAMSAMMMMXAXMSSMMAMXMXXXMMASAMXAAMMAMAXMXSAMMSSMSSXMASAMXXSMMMSMAMXAAXAXXXSXSAMXXAMAXXMSSMAMMMMMMMXXXXMXXAMMXMSXMAXAXMMSXX +SXMASAAMMSMMASXSSXMXXXAMAAMMSSMAXAMMSMXMXMAMAMXSAMSSMMSSMAMMXMAXAAXMXMASXMXMMXXAAMMMSXMMXSAXMAMXMXMSXSXXMAAMAMAAXAASXSMXSAMAMSMSMMSSSSXSAMMM +MAMXSMSAAMMSMXAAAXSXMMSMSMSAMAMMXSMAAAAMASXMASAMAMMAAAAAXMAXAMXSMMMXXAMXMMXASAMMSSXAAAXAMXMMMAMAXAMXAMMMMSSSSSSXSMMSAAXAMAMAMAXXAAAMMXXMASAS +SXMASAXMXSAAMMMMMXAXMAXMMAMMSXMAAMMSMSXSMSAMSMXSAMMXMMSMMXMSMSAMXSMASXSMASASXASAAMMMMSMAMAMXXSSMSSSMXMAXMAMMMMXAAMAMXMMSSMSMSXSSMMXSASXSAMMA +AMMAMXXAAMMMMSAAXXMMSASASAXXMXMMMSAXXMASXSXMAAASMSXSXMAMSMMAXMAXMAMAXMAXAMSXSAMMSMASAMMAMAXMSMAMAAAXMMSMMAXAAAMMMMXSAXAMAAAASMMAMAAMASAMMSXM +MXMXSXMMMMMMXSMSSMXAMMSASXMSMXSAMAMMAMAMXSASXSMMAXAAAXAMMASXSSSMSMMASMSMMSMXMXMXXXASXSSMSSSMSSSMMXMMXMAAMSMSMSSXXSASMMMSMMMMMASMMMMMAMXMAXXX +XMAAMAXAXAAMMXAXAXMXSASMMMAXMASASMXMXMAXMXXMAAXXXMMXAMSMSXMMMAXMAXMXSAMXMAMXMASMSMXSAMXMAAAAXAXXMASXSSXXAMXAAXMASMMMXAAAXAMSSMMXXMASAMXMMSXM +MMSAMSMSSSXSAXSSSMSMMMMAAXXMMMSXMXXMAXSSSMSMMMMMSAXMSAMAMMASMAMXMMSAMXMASASMSMSAAXAMXSAMASMMMMMMMMXAAAASXMSMSMMSAMXXSMSSSMSAAXXMXXAAAXXAXMXX +AAXXAMAMAMSMMSMAAASXAAMXXXXMAMXMXAXSMMMAAAXMAMAAASXSMAMXMSAMMASASASASXSXMAXXAAMMMMMMASAMAXAXMXAAAMMMMMAAMXXMAMXAXXMAAAXAAMMMMASMSMSSMMSAAMMA +XMMXXMAMMMASXSMSMMMXSMSMAMSXMMXMMSXSAAXMMMMSASMMSMMXMMMXXMAXSASASXSAMXAAMASMMSMMMMXMASAMSSMMSXMMMMAXXXXMAMSSMSSMMASAMXMMMMSXMASAAAXAMASXMAAM +XXSSSXSMXAMAXXAXXAMMXAAMAMMASMMSXMAXSMMSSXASXSASAMXAMAMMMMAXMMSXSMMMMMMXMASXAAXAAAXMXSAMAAAAAASASMSMSSSXSMAAAAAXMXMSSMMMAAAAXMMXMXSAMASASXSS +XMAAMAMASXXMSMSMSSXAMMMMXXXAMAAXMMXMAXSAXMMXXXMMASMXSAXASMSSSMXAXAXAAASAMXSMSMSXMSAXMXMMSSMMSXMAAAAASAMAAMSMMSMSAMSAXAXSMSAMXAAXMAMXMXSAMMXM +XMASMAMASMMXAAAXAXMMMSSMSXMMXMSMSASMMMMMMXMSXMASXXAMAMXMSAAAMMMMMXSMSMSASXSXMASAAXXMASAMAMXXXXSSMSMMMAMXMAXAXMAMAMMMSMMXMXMAMMSSMASAMXMAMSAS +XSAMXXMXMASMMSMMXMMXAAAXAXSXSAMAMASMAAXXMASAMXMMMMMMAMMSMMMMMAAXAXMXXXSMMMSAMAMMMMSAMAMXXXMXMAMAAXMMSSMAXXSXMMAMAMAXSXSMMASAAAAAMASASXSXMMAM +XMSSSSMMSSMSMAXXAASAMSSMXSAAMAMXMXMASXSXMXSMMAXAAAMMMSXAAXMASMSSSMSASXSAMASAMSSXXXMSASXMSSMMMSMMSMSAAASMSXMMXSXMAMSXXAAASXSXSMXSMXSXXASXMMSM +XAAXXMAXMMAASMSSMSAMXMAXXMMXMXMSMXSAXMAXSMMXSASMMMXAMXXSMMMAMXAAAXMASASAMAXMMXMAMXMXXXAMAAAMAAAXAMMMXXAMXAAMMMASMXAMMMMXMAMXXMMMMXSMSXMMSAMS +MMMMXSMMAMSMMMAAXXMAMSMMXMXMXMXXAMAAXMAMXAMAXXMASMSMMAAXXSMSSMMMMXSMMAMAMAMSAMXAMAMMXMAMSXMMMXSAMXAXXSMXMMMMAMMMSAAAXAXAMAMAXAAAAXXAMXMXMASM +XAAAASXMXMASXMMMXSXMXAASMSAAMAMMXMMXMMMSMSMMSXMAMMASMAXSAMAXMASAMXAXXAMAMXMAAMMSMXMAMSMMXXXXAAAMXSXSXMXSMMMSXSAAMSMXXMMMMAMXSSMSSMMAMAMAMMMA +SMMSAMXMXSAMXMAMAASXMSSMASASMSXSASXMMAMAAXXMAAMSMSAMXMMMMMAMSAMASMMSSSSSSMMXMMAXMSMXXAAXMASMMSSMASMMASASAXMAXSMSXMMSMSASMMSMXMAAAXXSSXSASAXA +MMAXXMXXAMMSXSAMMSMXMXMMMMAXAXXSASMSSXSMSMXMMSMMAMMSXXAXAXXMXASAXXXXAXAAAMSAXMASASAMSSMMAXXAAXXMXSAXAMXSXMASMSAMXAAAAMASAMSAMMMMSXSMAXXASASX +SMSSSSSMASAAMSASMAMMSAMMSMMMXMAMAMAXAMXMAXSAAAAMXMMAMXMSMSMMSMMMSMMMSMMMSAAASMXSMMAMAAXMAXMMMSXSASXMASXSASMAAXAXSMMSSMAMXASMSASXMMAMSAMXXAXM +MAMAAAAXAMMMMMMMMASXMASASAMXXMAMMMXMSAAMAMXMSMSSSXMASAAAXXMXMXASAXAAXAXAMXMAXXMXXSAMXSXMAMXAMSAMASXXXXASAMXSXSMMMXMXMMXMMMMAMAMASMXMAXSSMSMA +MAMMMMMSMMASXSMASXSASAMMSXMAXXAXAXSMMSSSSSMMXMAAXAMASMSMSASAMSXSASXMSMMMXAMMMSSMMXAXXMAMAMXAMMAMXMMMSMMMMMMAMMXAXMAAMXXXAXMSMSMAMASXMAAAAAMM +SASAAAAAAMAXXAMAMMSAMXSAXASXSMSSMSAAMAMAMXAASMXMSSMAMAAASASMXMAMMMXXXXASXXMAAXAAMSMSSMXMAXSMMSMMMSAAAASXAAAMAXSXSASXSAMMMSAAAAMMMASAMSMMXMSM +SXMXSSSSSMMSSMMSMAMAMAMMSMMAMAAAXSMMMXXMAMMMMXAXAAMXSSMMMAMXXMXMAAAXXMASAMSMSSSSMAMAMMSMXMAMXXAAAMMMMMMASMSXSXMASAMAMASMASMMSMSSMASXMMXXAAAM +MSSXXMMXMXAAXAAAMSMMMMSAAXMAMMMSMXAXXMAXMASMSSMMSSMAAXMXMAMXMSMSMSSSMAAXMXAAAAAAXAMMXAAAMSMMMSSMSSSMSASXMAXMMAAAMAMXMAAAAMXMXMAAMAMAMXASXSMA +SAMMAMXAAMMSSMSXMAMASXMXSSSMSAAAXXMXMMSXMAMAAAAAAAXAMXXXSASAAAXAAAAAXSSSSSSSMMMMSMSXMSSXXAMXMXXAXAMXAXAAMXMSSXMXSMMMMSSMMSXSAMMXMSSSMMAMXAXS +MASMXMMMXAMAMAAMSMSASXMXMAAASMSXXAXXMAXMMAMMMSXMXSMSMMMMSAMMXMMMXMMMMMMAMAMAMXXAAAMXAXAMAMXXASMMMAMASXMSXMXAMMMAXXXAAMAMXXASXSXXAMAMSXAMSMMM +SAMXASMSAMMXMXMXAAMXSAMMMSMMMXMAXSMSMASASASAAXAMAXAMXAAXMSMXASMSMSAMXXMMMAMASAMMSXMSAMXMMXMXMXAASXMAMAXAAXMXSAMSMAMMXSSMSMMSMXMAMMAMASAMAXAM +MMMXMMAAAXSMMAXMMSMMSAMSXMASXSXMMAAMMASMXASMXSXMAMAXSMXMAAXMMMAAASASMMXSSMSASXMAMXMXMAAMMAMAXMXMSXMASXMMSMMASXSXAMXSAMAAXXXMAASXMSASMXMAXMMS +SASXAMXMSMSASASXXMMAMSASASMMASAMSMMMMASXMXMMXSMMXSMMMMXMSMSMMSSMMMAMAAAXSAMXMMMASAXASMSXSASASMSXMMSAMAMAMAMASMMMSXAAAXMMMXXMMXSAXSASXMMAXSXM +SASMSMMXXAXMAAXMASXSXMXSAMXMXMAMAMAAMAMMXMASAMAAMAXSASMAXAAXAAAXXMSSSMMSMXMASXMMSMXMSAXASMSXSAAAMAMASXMASAMAMAAXMMSSMMMAXXMSMXSXMMMMAXMMMSAA +MAMAMASMMSMAMAMAXSXMXSAMXMAMSSMMSSSSMASAMSMMASMXSAMSASMMMSMMMSSMXMAAASMXMAMAMXAASXSXMAMAMASAMXMXMASXMMMASXMMSSMMSAXAASXSMMAMXMMXMAMXSMMMASXM +MAMSMMXMAAXAAAXAMXAMASMMAXAAXAXAAXAAMAXMXAXSXMXAMXMMXMAMMXAAXAMXAMMMMMSAMXSAMSAMXMAXAMXXMXMASAMMSXXAMMMMSASAAAXAMSMSMMAMAMSXMAMAMASXXAXMASAM +SXSAMSAMXMXMSXMAMMMMAMMSXSMMMMMMMSMMMSSMSMMAMXMMMMXXSAMXAXSXSASMSSSMXMMXMMMAXMMSMXSXMMMMMXSASMSAMMSMMAAXSXMMSXMMSAMXXMXMMMMASXSXSASAXMMMASAM +MMSAMSASMMSAAMXSAAMMSXMAMXMMSSMSMSXXAAAAMXSXMASAASXMMSSMMMXXSAMAXAMXAMSMSASMSMAMXAXAMXSASXMXSAMMSAAXSSSMMAMAMXSXSXSSMMMSMAMXMMAMMMMMMSAMXSAM +MASMMSMMAAMXMSAAMMSAMXSXXAXAAAMAAXAMXSMMMASASXSSSSXMAASASXMASAMXMAMMASAAAXAAAMASMMSSMXSXSAAAMAMXMMSXXAMASAMXAAMMMMMXAAAAMMSSSMMMAXAXMSAXAMAM +MMSXXXAMMMMMAMXSMMMMSAMXSSMMSSSMSMMMMMXMMMSAMXMMXMAMMSSMXAMMMXSXMASXMSMSMAMSMSASAMAXSXXXSAMXMAMXMAMXAMMASXSXMMSAMAMXSMSXSAAXXAASXSMSMXMMSXMM +XAXMMSMMXAXMMMAMAXAAMASMAXMAAMXAXAAAXXAMXXMAMXXXASMMMXMASMMXSAMASASAXXAXXMXMAMXSAMAXAMXXSXMMSASXSXMXSMMXSAMXSXSMSAMMMAXAMMSSMXMMAMXAMASAMAMA +MMSMXAAMSXXMAMXXXMMMSAMAMXMMSSMXMSMSSSXSMMSXSSSMASAAMMXMMXXXMMMXMASXMMAXMAMMXMMSAMMASMMMMAXMAMXAAASAXXXXMASXXAMASASMMAMXMAAAMASMSMSASXMASXMS +ASAXSMMMMAAXXMAASXSXMXSSXMXAAAXMMAMMAMXSAXAAAASMAMXMXSMXMXSXXAAXSAXMXSASXXSAMXAMAMXMXAAXSAMSXSMMMMMASMSXSASMMXMAMXMMAXSXMMSSMMMAMASAMXMAMAAA +SMMMMASASMSMXXAMAAMMSMMXSASMMSXMMAXXAXASXMMAMMMMMSAXAXAMMAMXSMSAMXSAMMASXMAXMMSXSAMXSSMMAAXXASXAXXMXMAAXMASAAXMXSXSAXMXMXMXAXXMAMMMSMAMASMMM +AAXMSAMAMAAMAAXXMMMASAMAAMXMXAAMSMSMSMAXASXASXSASAAMSSSXMASMMMAMXXMXAMSMMXMAMAAMAMXAMAXSSMMMMMSMXMXSMMMMMAMMSMMAXXMASMXSASXMMXSASAAASMSMSXSX +SSMMMXSSMSMMSSMAMXSASAMSSMXXAMXMAASAMMMSAMSXSASXSMSMXAAXSASAAAASAAXASXMAMMASMMXSXMMMSSMMAMXAAAMMXSAMAMXAXAXAMAMASMSMAXAMXSAAMMMXMMMMXXMASASX +MMAMXAAAAXXAAAAXMAMXSAMXAMAMSXMMMSMAXAMMMMSXMXMXSXMAMSMXMXSMMXMSMSAMXAMAMSAMAAMXMAMXAMMMAMASMXSAAMAXAMXSSMSMSMMASMAMMMXMMSXMXAXASXSSXSMSMAMX +XSAMMASMMMMSSSMMMXSASAMSMMAMMAMSMMMXMMMASAMASASAXAXXMAXAMXXXMSXMMAAXMAMSMMASXMASXMASMSSSSMXXAAMMSSSMSSMASMAXXXMAMXAXXAASASASMSMMSAAXAMMMMSMM +AMXSAAMMSMMAAXAMXAMAXAMXXSMMMAMAAXAAMXSXMAMAMAMMMSMMXXSSSSMAAMAAASXMMAMMASAMMSASMMASAAAAAXMMMMSMAMASAAMAMXAXSAMXSSSSMMSMAMAMXXAMMXMMMMSXAMAM +XMASMXMXAAXMAXSMMMSASXMSMSAASXSMSSSXSASXSAMSMMMSMAASAMXMAAXAMSSMMMASXMXSAMASAMAXAMAMMXMSMMAMAMAMASMMSSMMSSMSSMXAMAMAXSAMAMSMMXSMAAMASASMXSAM +XMASXAXSSSMXMXMAAMAXMAAXAMSMMAXAAAAMMASAMXSXAAAAAMAMXXMMSMXSXMASXSAMAAMMMXXMASMSMMAXSAMMXAMSASASMSXXXXAXAAXAMXMXMMMAXMAMXSMASAMMSMSSMASMMSMS +SMMMXMXXXAXXSASXMSSSSMMMSMMMMSMXMMXMSMXAXMAXSMSSSXSAXAAAAXXXAMXSMMMSMMMASMMMXMAAAMAXXAXSXSASASASAXXMASMMSSMMSXSMSAMXSSXMSMXAMASXMAMMMMMAXXAX +XSAAAMSSMMMXMAXSAAAMMAXAMAXXAAMMMSMMMXSMMXMAXAAAXAXAASMMSXSMMXAXAAXXMXSAXAAAAMMMMMMSMMMSAAMMAMAMMMMMXXAAAMAXAMAASXXAXXAXAMMMSXMXMAMAAXXXMMXM +SXMXMSAMAXAAMAMMMMSMSAMASXMMSMSAAAAASMSASXSMMSMMMSMMMAAAXMSAMXMMSMSAMMMMSSMSSSMASXMAAAAMXMXMMMAXMAAAMMMMMSMMMMMMMMMMMXMMMSAASAMSSMSSSMMAMXAS +MMSSMMXSXMSXMMSXSAMXXAMMMXAMAASMSSSXSASAMAAXXAMXAXAMXSMMSASXMASAMXSAMAAAAAMAAAXXMAMSSMSSMSXSMSASMSSSMSAAXXMAXAXAMXSAAASAMXMMSAMAAXAAAMXMMXAS +MAAAXMASMXMASAXAMAXASXMXMMSXSMMMMXMAMXMAMSMMSSXSXSMMAAXMAMMXSASAXAXAMXMMSSSSSXMXSSMMAXMAMXAXAMXSAMAMAMSSSMSSSXSXSASMSMSAMXMAMXMSSMMMMMASMSMX +MMSSMMASMASAMXMSMSMMMMMAMXMMMAMXMAMSMMXAMXAXAAASMMASXMMMMMSXMXSXMSSMMSSMAXAAXMAMAXAXSMSAMMMMMMXMMMAMAMXXAAMXSAAAMASAMASAMSMSSMAMMAXSXSMSAAAM +XMAAXMXMMAMAMXAMAXSXMASXSAMASAMAMXMMASMMSXMMMMMMASAMAAMSMAMXAAMAMAAAAAAMSXMMMAAAASMMMASAMXAAAAXMASXSSSXSMXSAMXMSMAMXMAMXMAAMMAAMMSMSAMXMMMMA +MMMSMSMSMSSSSSSMXMSSMASMAASASASXMSXSAMAXMASAXXXMXMAMSMMAMASMSMSAMSSMMXMMMASXXMASXMAMSAMXMSSSSMXXAMMAMXXMAAMASMMAMAXAMSSSSMSMMSXSAAASAMXMASXS +MSAXMSAXAMAAXAMXSMMAMASMSMMXSAMAXAAMXXXMAXSAXSAMXXSMMXSXSASXAAAAXAAAAMSSSXMAXSAMAMXAMAMXXXXAMMSMMSSXMASMMMSAMASASMSMXMAXXMMAAXAMMMXSAMXMASAM +XMASAMMMMMMXMMMAAASAMXXMAMXAMAMXMMSMSXSAMXMAMXAMAAXAMXXXMASXMSMMMSMMMSAAXMMMMAASMMXXSSMXSAMXMAAASAMXXAAXXXMASAMASXAXAMSMAMSMMMMMSSMSAMXMXMAM +MMMMXMXSXMXMMAMXSXMASXSSMSMMSAMSXMAASMSAMXXMASXMSSMAMMMXMASAXAXXAXASMMMXMAAXXMMMXMXMAXAMMMMAMMSMMASXSMMMMMSAMXMXMMSSXSAAAAAXMXMAXAXSMMXSASAM +AAAXAXAMAMAAMAAAMAMASXAAXAAAAAXMAXMXMASAMXXXMXXAAXXAMAMAMSMMXMAMMSXMASMMSSSSXXXXAMASMMXMAASASAMMSXMXMXAAAAMXMXMAMAXAXSMSMSSXMAMMSMMMASASASMS +SSXSAMXSASASXMSXSAMAMMXMMAMXSMMSXMSAMMMMXMASXMMMMSSSSMXAMAAXMMAAXAXMSMAXXAAAMSMSASAXAMXSXXSASXSAXXMASMSXSSSSXSSSSMMMMMXXMMMASXMMAXXSAMMSASAS +MAASAAMSAXAXXAAAMXMSXSXXAAXMMMASXAXAXMAXXXAMAAXAXXAMAMSSSMSMXXAXMAMXAMXSMSMMMAAMXMXSAMXMSMMMMMMMSMMMSMAAXAMMAMAMXXAXAXXXMAMXMAASASMMASAMAMAM +MMMMASMMMMSMMMMSMSMMAXMASASMSMASMSMMSSSMXMMSXMSMSMAMAMAAAAMAMSSSMAMSSSMXAAMXSMSMSAASAMAAAXAMAMAXMXMXMMMMMAMMAMAMSSMSSSMMSMSXSSXMASASAMAMMMSS +MSAMXMXMAAXAXXAAMAAMXMAMMAAAAMASAAAXAAASAMXAXXAAAMXSXSXSMMMXMAAAMAXAAAXMSMSAXMAASAMXASMSMSMSXSAMXAXAXAAASXMSSSMSAAAAAAXAASXAXMXXASXMXSAMXAAA +ASAMXXXSMSSMMMSSSMSMXMSXMXMSMMMSMSSMMSMMSMXASMMSMSMXXXAAXXXXMMSMMSMMSMMXXXMASMMMMXXSXMAXXXMAMMXMSASXSSSXXSAXMXMAMMMMSMMSSSMMMAXMASXMMSASMMSS