dominiksalvet / afc-scout

ACPI scout of asus-fan-control
MIT License
6 stars 0 forks source link

Determining base ACPI fan from output #2

Closed Esfo closed 3 years ago

Esfo commented 4 years ago

Hello,

So I've run afc-scout on an Asus B9450.

large output

``` [0] = 0 [1] = 0 [2] = 255 [3] = 0 [4] = 4 [5] = 5 [6] = 6 [7] = 7 [8] = 8 [9] = 9 [10] = 10 [11] = 11 [12] = 12 [13] = 13 [14] = 14 [15] = 15 [16] = 16 [17] = 17 [18] = 18 [19] = 19 [20] = 20 [21] = 21 [22] = 22 [23] = 23 [24] = 24 [25] = 25 [26] = 26 [27] = 27 [28] = 28 [29] = 29 [30] = 30 [31] = 31 [32] = 32 [33] = 33 [34] = 34 [35] = 35 [36] = 36 [37] = 37 [38] = 38 [39] = 39 [40] = 40 [41] = 41 [42] = 42 [43] = 43 [44] = 44 [45] = 45 [46] = 46 [47] = 47 [48] = 48 [49] = 49 [50] = 50 [51] = 51 [52] = 52 [53] = 53 [54] = 54 [55] = 55 [56] = 56 [57] = 57 [58] = 58 [59] = 59 [60] = 60 [61] = 61 [62] = 62 [63] = 63 [64] = 64 [65] = 65 [66] = 66 [67] = 67 [68] = 68 [69] = 69 [70] = 70 [71] = 71 [72] = 72 [73] = 73 [74] = 74 [75] = 75 [76] = 76 [77] = 77 [78] = 78 [79] = 79 [80] = 80 [81] = 81 [82] = 82 [83] = 83 [84] = 84 [85] = 85 [86] = 86 [87] = 87 [88] = 88 [89] = 89 [90] = 90 [91] = 91 [92] = 92 [93] = 93 [94] = 94 [95] = 95 [96] = 96 [97] = 97 [98] = 98 [99] = 99 [100] = 100 [101] = 101 [102] = 102 [103] = 103 [104] = 104 [105] = 105 [106] = 106 [107] = 107 [108] = 108 [109] = 109 [110] = 110 [111] = 111 [112] = 112 [113] = 113 [114] = 114 [115] = 115 [116] = 116 [117] = 117 [118] = 118 [119] = 119 [120] = 120 [121] = 121 [122] = 122 [123] = 123 [124] = 124 [125] = 125 [126] = 126 [127] = 127 [128] = 0 [129] = 129 [130] = 130 [131] = 0 [132] = 132 [133] = 133 [134] = 134 [135] = 1 [136] = 136 [137] = 137 [138] = 138 [139] = 139 [140] = 140 [141] = 141 [142] = 0 [143] = 143 [144] = 144 [145] = 145 [146] = 146 [147] = 147 [148] = 148 [149] = 149 [150] = 150 [151] = 151 [152] = 152 [153] = 153 [154] = 154 [155] = 155 [156] = 156 [157] = 157 [158] = 158 [159] = 159 [160] = 160 [161] = 161 [162] = 162 [163] = 163 [164] = 164 [165] = 165 [166] = 166 [167] = 167 [168] = 0 [169] = 169 [170] = 170 [171] = 171 [172] = 172 [173] = 173 [174] = 174 [175] = 175 [176] = 176 [177] = 177 [178] = 178 [179] = 179 [180] = 180 [181] = 181 [182] = 182 [183] = 183 [184] = 184 [185] = 185 [186] = 186 [187] = 187 [188] = 188 [189] = 189 [190] = 190 [191] = 191 [192] = 192 [193] = 193 [194] = 194 [195] = 195 [196] = 2 [197] = 197 [198] = 198 [199] = 199 [200] = 200 [201] = 201 [202] = 202 [203] = 203 [204] = 30 [205] = 205 [206] = 206 [207] = 207 [208] = 208 [209] = 209 [210] = 210 [211] = 211 [212] = 212 [213] = 213 [214] = 214 [215] = 215 [216] = 216 [217] = 217 [218] = 218 [219] = 219 [220] = 220 [221] = 221 [222] = 222 [223] = 223 [224] = 224 [225] = 225 [226] = 226 [227] = 227 [228] = 228 [229] = 229 [230] = 230 [231] = 231 [232] = 232 [233] = 233 [234] = 234 [235] = 235 [236] = 236 [237] = 237 [238] = 238 [239] = 239 [240] = 240 [241] = 241 [242] = 242 [243] = 243 [244] = 244 [245] = 245 [246] = 246 [247] = 247 [248] = 248 [249] = 249 [250] = 250 [251] = 251 [252] = 252 [253] = 253 [254] = 254 [255] = 255 [256] = 0 [257] = 0 [258] = 255 [259] = 0 [260] = 4 [261] = 5 [262] = 6 [263] = 7 [264] = 8 [265] = 9 [266] = 10 [267] = 11 [268] = 12 [269] = 13 [270] = 14 [271] = 15 [272] = 16 [273] = 17 [274] = 18 [275] = 19 [276] = 20 [277] = 21 [278] = 22 [279] = 23 [280] = 24 [281] = 25 [282] = 26 [283] = 27 [284] = 28 [285] = 29 [286] = 30 [287] = 31 [288] = 32 [289] = 33 [290] = 34 [291] = 35 [292] = 36 [293] = 37 [294] = 38 [295] = 39 [296] = 40 [297] = 41 [298] = 42 [299] = 43 [300] = 44 [301] = 45 [302] = 46 [303] = 47 [304] = 48 [305] = 49 [306] = 50 [307] = 51 [308] = 52 [309] = 53 [310] = 54 [311] = 55 [312] = 56 [313] = 57 [314] = 58 [315] = 59 [316] = 60 [317] = 61 [318] = 62 [319] = 63 [320] = 64 [321] = 65 [322] = 66 [323] = 67 [324] = 68 [325] = 69 [326] = 70 [327] = 71 [328] = 72 [329] = 73 [330] = 74 [331] = 75 [332] = 76 [333] = 77 [334] = 78 [335] = 79 [336] = 80 [337] = 81 [338] = 82 [339] = 83 [340] = 84 [341] = 85 [342] = 86 [343] = 87 [344] = 88 [345] = 89 [346] = 90 [347] = 91 [348] = 92 [349] = 93 [350] = 94 [351] = 95 [352] = 96 [353] = 97 [354] = 98 [355] = 99 [356] = 100 [357] = 101 [358] = 102 [359] = 103 [360] = 104 [361] = 105 [362] = 106 [363] = 107 [364] = 108 [365] = 109 [366] = 110 [367] = 111 [368] = 112 [369] = 113 [370] = 114 [371] = 115 [372] = 116 [373] = 117 [374] = 118 [375] = 119 [376] = 120 [377] = 121 [378] = 122 [379] = 123 [380] = 124 [381] = 125 [382] = 126 [383] = 127 [384] = 0 [385] = 129 [386] = 130 [387] = 0 [388] = 132 [389] = 133 [390] = 134 [391] = 1 [392] = 136 [393] = 137 [394] = 138 [395] = 139 [396] = 140 [397] = 141 [398] = 0 [399] = 143 [400] = 144 [401] = 145 [402] = 146 [403] = 147 [404] = 148 [405] = 149 [406] = 150 [407] = 151 [408] = 152 [409] = 153 [410] = 154 [411] = 155 [412] = 156 [413] = 157 [414] = 158 [415] = 159 [416] = 160 [417] = 161 [418] = 162 [419] = 163 [420] = 164 [421] = 165 [422] = 166 [423] = 167 [424] = 0 [425] = 169 [426] = 170 [427] = 171 [428] = 172 [429] = 173 [430] = 174 [431] = 175 [432] = 176 [433] = 177 [434] = 178 [435] = 179 [436] = 180 [437] = 181 [438] = 182 [439] = 183 [440] = 184 [441] = 185 [442] = 186 [443] = 187 [444] = 188 [445] = 189 [446] = 190 [447] = 191 [448] = 192 [449] = 193 [450] = 194 [451] = 195 [452] = 2 [453] = 197 [454] = 198 [455] = 199 [456] = 200 [457] = 201 [458] = 202 [459] = 203 [460] = 30 [461] = 205 [462] = 206 [463] = 207 [464] = 208 [465] = 209 [466] = 210 [467] = 211 [468] = 212 [469] = 213 [470] = 214 [471] = 215 [472] = 216 [473] = 217 [474] = 218 [475] = 219 [476] = 220 [477] = 221 [478] = 222 [479] = 223 [480] = 224 [481] = 225 [482] = 226 [483] = 227 [484] = 228 [485] = 229 [486] = 230 [487] = 231 [488] = 232 [489] = 233 [490] = 234 [491] = 235 [492] = 236 [493] = 237 [494] = 238 [495] = 239 [496] = 240 [497] = 241 [498] = 242 [499] = 243 [500] = 244 [501] = 245 [502] = 246 [503] = 247 [504] = 248 [505] = 249 [506] = 250 [507] = 251 [508] = 252 [509] = 253 [510] = 254 [511] = 255 [512] = 0 [513] = 0 [514] = 255 [515] = 0 [516] = 4 [517] = 5 [518] = 6 [519] = 7 [520] = 8 [521] = 9 [522] = 10 [523] = 11 [524] = 12 [525] = 13 [526] = 14 [527] = 15 [528] = 16 [529] = 17 [530] = 18 [531] = 19 [532] = 20 [533] = 21 [534] = 22 [535] = 23 [536] = 24 [537] = 25 [538] = 26 [539] = 27 [540] = 28 [541] = 29 [542] = 30 [543] = 31 [544] = 32 [545] = 33 [546] = 34 [547] = 35 [548] = 36 [549] = 37 [550] = 38 [551] = 39 [552] = 40 [553] = 41 [554] = 42 [555] = 43 [556] = 44 [557] = 45 [558] = 46 [559] = 47 [560] = 48 [561] = 49 [562] = 50 [563] = 51 [564] = 52 [565] = 53 [566] = 54 [567] = 55 [568] = 56 [569] = 57 [570] = 58 [571] = 59 [572] = 60 [573] = 61 [574] = 62 [575] = 63 [576] = 64 [577] = 65 [578] = 66 [579] = 67 [580] = 68 [581] = 69 [582] = 70 [583] = 71 [584] = 72 [585] = 73 [586] = 74 [587] = 75 [588] = 76 [589] = 77 [590] = 78 [591] = 79 [592] = 80 [593] = 81 [594] = 82 [595] = 83 [596] = 84 [597] = 85 [598] = 86 [599] = 87 [600] = 88 [601] = 89 [602] = 90 [603] = 91 [604] = 92 [605] = 93 [606] = 94 [607] = 95 [608] = 96 [609] = 97 [610] = 98 [611] = 99 [612] = 100 [613] = 101 [614] = 102 [615] = 103 [616] = 104 [617] = 105 [618] = 106 [619] = 107 [620] = 108 [621] = 109 [622] = 110 [623] = 111 [624] = 112 [625] = 113 [626] = 114 [627] = 115 [628] = 116 [629] = 117 [630] = 118 [631] = 119 [632] = 120 [633] = 121 [634] = 122 [635] = 123 [636] = 124 [637] = 125 [638] = 126 [639] = 127 [640] = 0 [641] = 129 [642] = 130 [643] = 0 [644] = 132 [645] = 133 [646] = 134 [647] = 1 [648] = 136 [649] = 137 [650] = 138 [651] = 139 [652] = 140 [653] = 141 [654] = 0 [655] = 143 [656] = 144 [657] = 145 [658] = 146 [659] = 147 [660] = 148 [661] = 149 [662] = 150 [663] = 151 [664] = 152 [665] = 153 [666] = 154 [667] = 155 [668] = 156 [669] = 157 [670] = 158 [671] = 159 [672] = 160 [673] = 161 [674] = 162 [675] = 163 [676] = 164 [677] = 165 [678] = 166 [679] = 167 [680] = 0 [681] = 169 [682] = 170 [683] = 171 [684] = 172 [685] = 173 [686] = 174 [687] = 175 [688] = 176 [689] = 177 [690] = 178 [691] = 179 [692] = 180 [693] = 181 [694] = 182 [695] = 183 [696] = 184 [697] = 185 [698] = 186 [699] = 187 [700] = 188 [701] = 189 [702] = 190 [703] = 191 [704] = 192 [705] = 193 [706] = 194 [707] = 195 [708] = 2 [709] = 197 [710] = 198 [711] = 199 [712] = 200 [713] = 201 [714] = 202 [715] = 203 [716] = 30 [717] = 205 [718] = 206 [719] = 207 [720] = 208 [721] = 209 [722] = 210 [723] = 211 [724] = 212 [725] = 213 [726] = 214 [727] = 215 [728] = 216 [729] = 217 [730] = 218 [731] = 219 [732] = 220 [733] = 221 [734] = 222 [735] = 223 [736] = 224 [737] = 225 [738] = 226 [739] = 227 [740] = 228 [741] = 229 [742] = 230 [743] = 231 [744] = 232 [745] = 233 [746] = 234 [747] = 235 [748] = 236 [749] = 237 [750] = 238 [751] = 239 [752] = 240 [753] = 241 [754] = 242 [755] = 243 [756] = 244 [757] = 245 [758] = 246 [759] = 247 [760] = 248 [761] = 249 [762] = 250 [763] = 251 [764] = 252 [765] = 253 [766] = 254 [767] = 255 [768] = 0 [769] = 0 [770] = 255 [771] = 0 [772] = 4 [773] = 5 [774] = 6 [775] = 7 [776] = 8 [777] = 9 [778] = 10 [779] = 11 [780] = 12 [781] = 13 [782] = 14 [783] = 15 [784] = 16 [785] = 17 [786] = 18 [787] = 19 [788] = 20 [789] = 21 [790] = 22 [791] = 23 [792] = 24 [793] = 25 [794] = 26 [795] = 27 [796] = 28 [797] = 29 [798] = 30 [799] = 31 [800] = 32 [801] = 33 [802] = 34 [803] = 35 [804] = 36 [805] = 37 [806] = 38 [807] = 39 [808] = 40 [809] = 41 [810] = 42 [811] = 43 [812] = 44 [813] = 45 [814] = 46 [815] = 47 [816] = 48 [817] = 49 [818] = 50 [819] = 51 [820] = 52 [821] = 53 [822] = 54 [823] = 55 [824] = 56 [825] = 57 [826] = 58 [827] = 59 [828] = 60 [829] = 61 [830] = 62 [831] = 63 [832] = 64 [833] = 65 [834] = 66 [835] = 67 [836] = 68 [837] = 69 [838] = 70 [839] = 71 [840] = 72 [841] = 73 [842] = 74 [843] = 75 [844] = 76 [845] = 77 [846] = 78 [847] = 79 [848] = 80 [849] = 81 [850] = 82 [851] = 83 [852] = 84 [853] = 85 [854] = 86 [855] = 87 [856] = 88 [857] = 89 [858] = 90 [859] = 91 [860] = 92 [861] = 93 [862] = 94 [863] = 95 [864] = 96 [865] = 97 [866] = 98 [867] = 99 [868] = 100 [869] = 101 [870] = 102 [871] = 103 [872] = 104 [873] = 105 [874] = 106 [875] = 107 [876] = 108 [877] = 109 [878] = 110 [879] = 111 [880] = 112 [881] = 113 [882] = 114 [883] = 115 [884] = 116 [885] = 117 [886] = 118 [887] = 119 [888] = 120 [889] = 121 [890] = 122 [891] = 123 [892] = 124 [893] = 125 [894] = 126 [895] = 127 [896] = 0 [897] = 129 [898] = 130 [899] = 0 [900] = 132 [901] = 133 [902] = 134 [903] = 1 [904] = 136 [905] = 137 [906] = 138 [907] = 139 [908] = 140 [909] = 141 [910] = 0 [911] = 143 [912] = 144 [913] = 145 [914] = 146 [915] = 147 [916] = 148 [917] = 149 [918] = 150 [919] = 151 [920] = 152 [921] = 153 [922] = 154 [923] = 155 [924] = 156 [925] = 157 [926] = 158 [927] = 159 [928] = 160 [929] = 161 [930] = 162 [931] = 163 [932] = 164 [933] = 165 [934] = 166 [935] = 167 [936] = 0 [937] = 169 [938] = 170 [939] = 171 [940] = 172 [941] = 173 [942] = 174 [943] = 175 [944] = 176 [945] = 177 [946] = 178 [947] = 179 [948] = 180 [949] = 181 [950] = 182 [951] = 183 [952] = 184 [953] = 185 [954] = 186 [955] = 187 [956] = 188 [957] = 189 [958] = 190 [959] = 191 [960] = 192 [961] = 193 [962] = 194 [963] = 195 [964] = 2 [965] = 197 [966] = 198 [967] = 199 [968] = 200 [969] = 201 [970] = 202 [971] = 203 [972] = 31 [973] = 205 [974] = 206 [975] = 207 [976] = 208 [977] = 209 [978] = 210 [979] = 211 [980] = 212 [981] = 213 [982] = 214 [983] = 215 [984] = 216 [985] = 217 [986] = 218 [987] = 219 [988] = 220 [989] = 221 [990] = 222 [991] = 223 [992] = 224 [993] = 225 [994] = 226 [995] = 227 [996] = 228 [997] = 229 [998] = 230 [999] = 231 [1000] = 232 [1001] = 233 [1002] = 234 [1003] = 235 [1004] = 236 [1005] = 237 [1006] = 238 [1007] = 239 [1008] = 240 [1009] = 241 [1010] = 242 [1011] = 243 [1012] = 244 [1013] = 245 [1014] = 246 [1015] = 247 [1016] = 248 [1017] = 249 [1018] = 250 [1019] = 251 [1020] = 252 [1021] = 253 [1022] = 254 [1023] = 255 [1024] = 0 [1025] = 0 [1026] = 255 [1027] = 0 [1028] = 4 [1029] = 5 [1030] = 6 [1031] = 7 [1032] = 8 [1033] = 9 [1034] = 10 [1035] = 11 [1036] = 12 [1037] = 13 [1038] = 14 [1039] = 15 [1040] = 16 [1041] = 17 [1042] = 18 [1043] = 19 [1044] = 20 [1045] = 21 [1046] = 22 [1047] = 23 [1048] = 24 [1049] = 25 [1050] = 26 [1051] = 27 [1052] = 28 [1053] = 29 [1054] = 30 [1055] = 31 [1056] = 32 [1057] = 33 [1058] = 34 [1059] = 35 [1060] = 36 [1061] = 37 [1062] = 38 [1063] = 39 [1064] = 40 [1065] = 41 [1066] = 42 [1067] = 43 [1068] = 44 [1069] = 45 [1070] = 46 [1071] = 47 [1072] = 48 [1073] = 49 [1074] = 50 [1075] = 51 [1076] = 52 [1077] = 53 [1078] = 54 [1079] = 55 [1080] = 56 [1081] = 57 [1082] = 58 [1083] = 59 [1084] = 60 [1085] = 61 [1086] = 62 [1087] = 63 [1088] = 64 [1089] = 65 [1090] = 66 [1091] = 67 [1092] = 68 [1093] = 69 [1094] = 70 [1095] = 71 [1096] = 72 [1097] = 73 [1098] = 74 [1099] = 75 [1100] = 76 [1101] = 77 [1102] = 78 [1103] = 79 [1104] = 80 [1105] = 81 [1106] = 82 [1107] = 83 [1108] = 84 [1109] = 85 [1110] = 86 [1111] = 87 [1112] = 88 [1113] = 89 [1114] = 90 [1115] = 91 [1116] = 92 [1117] = 93 [1118] = 94 [1119] = 95 [1120] = 96 [1121] = 97 [1122] = 98 [1123] = 99 [1124] = 100 [1125] = 101 [1126] = 102 [1127] = 103 [1128] = 104 [1129] = 105 [1130] = 106 [1131] = 107 [1132] = 108 [1133] = 109 [1134] = 110 [1135] = 111 [1136] = 112 [1137] = 113 [1138] = 114 [1139] = 115 [1140] = 116 [1141] = 117 [1142] = 118 [1143] = 119 [1144] = 120 [1145] = 121 [1146] = 122 [1147] = 123 [1148] = 124 [1149] = 125 [1150] = 126 [1151] = 127 [1152] = 0 [1153] = 129 [1154] = 130 [1155] = 0 [1156] = 132 [1157] = 133 [1158] = 134 [1159] = 1 [1160] = 136 [1161] = 137 [1162] = 138 [1163] = 139 [1164] = 140 [1165] = 141 [1166] = 0 [1167] = 143 [1168] = 144 [1169] = 145 [1170] = 146 [1171] = 147 [1172] = 148 [1173] = 149 [1174] = 150 [1175] = 151 [1176] = 152 [1177] = 153 [1178] = 154 [1179] = 155 [1180] = 156 [1181] = 157 [1182] = 158 [1183] = 159 [1184] = 160 [1185] = 161 [1186] = 162 [1187] = 163 [1188] = 164 [1189] = 165 [1190] = 166 [1191] = 167 [1192] = 0 [1193] = 169 [1194] = 170 [1195] = 171 [1196] = 172 [1197] = 173 [1198] = 174 [1199] = 175 [1200] = 176 [1201] = 177 [1202] = 178 [1203] = 179 [1204] = 180 [1205] = 181 [1206] = 182 [1207] = 183 [1208] = 184 [1209] = 185 [1210] = 186 [1211] = 187 [1212] = 188 [1213] = 189 [1214] = 190 [1215] = 191 [1216] = 192 [1217] = 193 [1218] = 194 [1219] = 195 [1220] = 2 [1221] = 197 [1222] = 198 [1223] = 199 [1224] = 200 [1225] = 201 [1226] = 202 [1227] = 203 [1228] = 31 [1229] = 205 [1230] = 206 [1231] = 207 [1232] = 208 [1233] = 209 [1234] = 210 [1235] = 211 [1236] = 212 [1237] = 213 [1238] = 214 [1239] = 215 [1240] = 216 [1241] = 217 [1242] = 218 [1243] = 219 [1244] = 220 [1245] = 221 [1246] = 222 [1247] = 223 [1248] = 224 [1249] = 225 [1250] = 226 [1251] = 227 [1252] = 228 [1253] = 229 [1254] = 230 [1255] = 231 [1256] = 232 [1257] = 233 [1258] = 234 [1259] = 235 [1260] = 236 [1261] = 237 [1262] = 238 [1263] = 239 [1264] = 240 [1265] = 241 [1266] = 242 [1267] = 243 [1268] = 244 [1269] = 245 [1270] = 246 [1271] = 247 [1272] = 248 [1273] = 249 [1274] = 250 [1275] = 251 [1276] = 252 [1277] = 253 [1278] = 254 [1279] = 255 [1280] = 0 [1281] = 0 [1282] = 255 [1283] = 0 [1284] = 4 [1285] = 5 [1286] = 6 [1287] = 7 [1288] = 8 [1289] = 9 [1290] = 10 [1291] = 11 [1292] = 12 [1293] = 13 [1294] = 14 [1295] = 15 [1296] = 16 [1297] = 17 [1298] = 18 [1299] = 19 [1300] = 20 [1301] = 21 [1302] = 22 [1303] = 23 [1304] = 24 [1305] = 25 [1306] = 26 [1307] = 27 [1308] = 28 [1309] = 29 [1310] = 30 [1311] = 31 [1312] = 32 [1313] = 33 [1314] = 34 [1315] = 35 [1316] = 36 [1317] = 37 [1318] = 38 [1319] = 39 [1320] = 40 [1321] = 41 [1322] = 42 [1323] = 43 [1324] = 44 [1325] = 45 [1326] = 46 [1327] = 47 [1328] = 48 [1329] = 49 [1330] = 50 [1331] = 51 [1332] = 52 [1333] = 53 [1334] = 54 [1335] = 55 [1336] = 56 [1337] = 57 [1338] = 58 [1339] = 59 [1340] = 60 [1341] = 61 [1342] = 62 [1343] = 63 [1344] = 64 [1345] = 65 [1346] = 66 [1347] = 67 [1348] = 68 [1349] = 69 [1350] = 70 [1351] = 71 [1352] = 72 [1353] = 73 [1354] = 74 [1355] = 75 [1356] = 76 [1357] = 77 [1358] = 78 [1359] = 79 [1360] = 80 [1361] = 81 [1362] = 82 [1363] = 83 [1364] = 84 [1365] = 85 [1366] = 86 [1367] = 87 [1368] = 88 [1369] = 89 [1370] = 90 [1371] = 91 [1372] = 92 [1373] = 93 [1374] = 94 [1375] = 95 [1376] = 96 [1377] = 97 [1378] = 98 [1379] = 99 [1380] = 100 [1381] = 101 [1382] = 102 [1383] = 103 [1384] = 104 [1385] = 105 [1386] = 106 [1387] = 107 [1388] = 108 [1389] = 109 [1390] = 110 [1391] = 111 [1392] = 112 [1393] = 113 [1394] = 114 [1395] = 115 [1396] = 116 [1397] = 117 [1398] = 118 [1399] = 119 [1400] = 120 [1401] = 121 [1402] = 122 [1403] = 123 [1404] = 124 [1405] = 125 [1406] = 126 [1407] = 127 [1408] = 0 [1409] = 129 [1410] = 130 [1411] = 0 [1412] = 132 [1413] = 133 [1414] = 134 [1415] = 1 [1416] = 136 [1417] = 137 [1418] = 138 [1419] = 139 [1420] = 140 [1421] = 141 [1422] = 0 [1423] = 143 [1424] = 144 [1425] = 145 [1426] = 146 [1427] = 147 [1428] = 148 [1429] = 149 [1430] = 150 [1431] = 151 [1432] = 152 [1433] = 153 [1434] = 154 [1435] = 155 [1436] = 156 [1437] = 157 [1438] = 158 [1439] = 159 [1440] = 160 [1441] = 161 [1442] = 162 [1443] = 163 [1444] = 164 [1445] = 165 [1446] = 166 [1447] = 167 [1448] = 0 [1449] = 169 [1450] = 170 [1451] = 171 [1452] = 172 [1453] = 173 [1454] = 174 [1455] = 175 [1456] = 176 [1457] = 177 [1458] = 178 [1459] = 179 [1460] = 180 [1461] = 181 [1462] = 182 [1463] = 183 [1464] = 184 [1465] = 185 [1466] = 186 [1467] = 187 [1468] = 188 [1469] = 189 [1470] = 190 [1471] = 191 [1472] = 192 [1473] = 193 [1474] = 194 [1475] = 195 [1476] = 2 [1477] = 197 [1478] = 198 [1479] = 199 [1480] = 200 [1481] = 201 [1482] = 202 [1483] = 203 [1484] = 31 [1485] = 205 [1486] = 206 [1487] = 207 [1488] = 208 [1489] = 209 [1490] = 210 [1491] = 211 [1492] = 212 [1493] = 213 [1494] = 214 [1495] = 215 [1496] = 216 [1497] = 217 [1498] = 218 [1499] = 219 [1500] = 220 [1501] = 221 [1502] = 222 [1503] = 223 [1504] = 224 [1505] = 225 [1506] = 226 [1507] = 227 [1508] = 228 [1509] = 229 [1510] = 230 [1511] = 231 [1512] = 232 [1513] = 233 [1514] = 234 [1515] = 235 [1516] = 236 [1517] = 237 [1518] = 238 [1519] = 239 [1520] = 240 [1521] = 241 [1522] = 242 [1523] = 243 [1524] = 244 [1525] = 245 [1526] = 246 [1527] = 247 [1528] = 248 [1529] = 249 [1530] = 250 [1531] = 251 [1532] = 252 [1533] = 253 [1534] = 254 [1535] = 255 [1536] = 0 [1537] = 0 [1538] = 255 [1539] = 0 [1540] = 4 [1541] = 5 [1542] = 6 [1543] = 7 [1544] = 8 [1545] = 9 [1546] = 10 [1547] = 11 [1548] = 12 [1549] = 13 [1550] = 14 [1551] = 15 [1552] = 16 [1553] = 17 [1554] = 18 [1555] = 19 [1556] = 20 [1557] = 21 [1558] = 22 [1559] = 23 [1560] = 24 [1561] = 25 [1562] = 26 [1563] = 27 [1564] = 28 [1565] = 29 [1566] = 30 [1567] = 31 [1568] = 32 [1569] = 33 [1570] = 34 [1571] = 35 [1572] = 36 [1573] = 37 [1574] = 38 [1575] = 39 [1576] = 40 [1577] = 41 [1578] = 42 [1579] = 43 [1580] = 44 [1581] = 45 [1582] = 46 [1583] = 47 [1584] = 48 [1585] = 49 [1586] = 50 [1587] = 51 [1588] = 52 [1589] = 53 [1590] = 54 [1591] = 55 [1592] = 56 [1593] = 57 [1594] = 58 [1595] = 59 [1596] = 60 [1597] = 61 [1598] = 62 [1599] = 63 [1600] = 64 [1601] = 65 [1602] = 66 [1603] = 67 [1604] = 68 [1605] = 69 [1606] = 70 [1607] = 71 [1608] = 72 [1609] = 73 [1610] = 74 [1611] = 75 [1612] = 76 [1613] = 77 [1614] = 78 [1615] = 79 [1616] = 80 [1617] = 81 [1618] = 82 [1619] = 83 [1620] = 84 [1621] = 85 [1622] = 86 [1623] = 87 [1624] = 88 [1625] = 89 [1626] = 90 [1627] = 91 [1628] = 92 [1629] = 93 [1630] = 94 [1631] = 95 [1632] = 96 [1633] = 97 [1634] = 98 [1635] = 99 [1636] = 100 [1637] = 101 [1638] = 102 [1639] = 103 [1640] = 104 [1641] = 105 [1642] = 106 [1643] = 107 [1644] = 108 [1645] = 109 [1646] = 110 [1647] = 111 [1648] = 112 [1649] = 113 [1650] = 114 [1651] = 115 [1652] = 116 [1653] = 117 [1654] = 118 [1655] = 119 [1656] = 120 [1657] = 121 [1658] = 122 [1659] = 123 [1660] = 124 [1661] = 125 [1662] = 126 [1663] = 127 [1664] = 0 [1665] = 129 [1666] = 130 [1667] = 0 [1668] = 132 [1669] = 133 [1670] = 134 [1671] = 1 [1672] = 136 [1673] = 137 [1674] = 138 [1675] = 139 [1676] = 140 [1677] = 141 [1678] = 0 [1679] = 143 [1680] = 144 [1681] = 145 [1682] = 146 [1683] = 147 [1684] = 148 [1685] = 149 [1686] = 150 [1687] = 151 [1688] = 152 [1689] = 153 [1690] = 154 [1691] = 155 [1692] = 156 [1693] = 157 [1694] = 158 [1695] = 159 [1696] = 160 [1697] = 161 [1698] = 162 [1699] = 163 [1700] = 164 [1701] = 165 [1702] = 166 [1703] = 167 [1704] = 0 [1705] = 169 [1706] = 170 [1707] = 171 [1708] = 172 [1709] = 173 [1710] = 174 [1711] = 175 [1712] = 176 [1713] = 177 [1714] = 178 [1715] = 179 [1716] = 180 [1717] = 181 [1718] = 182 [1719] = 183 [1720] = 184 [1721] = 185 [1722] = 186 [1723] = 187 [1724] = 188 [1725] = 189 [1726] = 190 [1727] = 191 [1728] = 192 [1729] = 193 [1730] = 194 [1731] = 195 [1732] = 2 [1733] = 197 [1734] = 198 [1735] = 199 [1736] = 200 [1737] = 201 [1738] = 202 [1739] = 203 [1740] = 31 [1741] = 205 [1742] = 206 [1743] = 207 [1744] = 208 [1745] = 209 [1746] = 210 [1747] = 211 [1748] = 212 [1749] = 213 [1750] = 214 [1751] = 215 [1752] = 216 [1753] = 217 [1754] = 218 [1755] = 219 [1756] = 220 [1757] = 221 [1758] = 222 [1759] = 223 [1760] = 224 [1761] = 225 [1762] = 226 [1763] = 227 [1764] = 228 [1765] = 229 [1766] = 230 [1767] = 231 [1768] = 232 [1769] = 233 [1770] = 234 [1771] = 235 [1772] = 236 [1773] = 237 [1774] = 238 [1775] = 239 [1776] = 240 [1777] = 241 [1778] = 242 [1779] = 243 [1780] = 244 [1781] = 245 [1782] = 246 [1783] = 247 [1784] = 248 [1785] = 249 [1786] = 250 [1787] = 251 [1788] = 252 [1789] = 253 [1790] = 254 [1791] = 255 [1792] = 0 [1793] = 0 [1794] = 255 [1795] = 0 [1796] = 4 [1797] = 5 [1798] = 6 [1799] = 7 [1800] = 8 [1801] = 9 [1802] = 10 [1803] = 11 [1804] = 12 [1805] = 13 [1806] = 14 [1807] = 15 [1808] = 16 [1809] = 17 [1810] = 18 [1811] = 19 [1812] = 20 [1813] = 21 [1814] = 22 [1815] = 23 [1816] = 24 [1817] = 25 [1818] = 26 [1819] = 27 [1820] = 28 [1821] = 29 [1822] = 30 [1823] = 31 [1824] = 32 [1825] = 33 [1826] = 34 [1827] = 35 [1828] = 36 [1829] = 37 [1830] = 38 [1831] = 39 [1832] = 40 [1833] = 41 [1834] = 42 [1835] = 43 [1836] = 44 [1837] = 45 [1838] = 46 [1839] = 47 [1840] = 48 [1841] = 49 [1842] = 50 [1843] = 51 [1844] = 52 [1845] = 53 [1846] = 54 [1847] = 55 [1848] = 56 [1849] = 57 [1850] = 58 [1851] = 59 [1852] = 60 [1853] = 61 [1854] = 62 [1855] = 63 [1856] = 64 [1857] = 65 [1858] = 66 [1859] = 67 [1860] = 68 [1861] = 69 [1862] = 70 [1863] = 71 [1864] = 72 [1865] = 73 [1866] = 74 [1867] = 75 [1868] = 76 [1869] = 77 [1870] = 78 [1871] = 79 [1872] = 80 [1873] = 81 [1874] = 82 [1875] = 83 [1876] = 84 [1877] = 85 [1878] = 86 [1879] = 87 [1880] = 88 [1881] = 89 [1882] = 90 [1883] = 91 [1884] = 92 [1885] = 93 [1886] = 94 [1887] = 95 [1888] = 96 [1889] = 97 [1890] = 98 [1891] = 99 [1892] = 100 [1893] = 101 [1894] = 102 [1895] = 103 [1896] = 104 [1897] = 105 [1898] = 106 [1899] = 107 [1900] = 108 [1901] = 109 [1902] = 110 [1903] = 111 [1904] = 112 [1905] = 113 [1906] = 114 [1907] = 115 [1908] = 116 [1909] = 117 [1910] = 118 [1911] = 119 [1912] = 120 [1913] = 121 [1914] = 122 [1915] = 123 [1916] = 124 [1917] = 125 [1918] = 126 [1919] = 127 [1920] = 0 [1921] = 129 [1922] = 130 [1923] = 0 [1924] = 132 [1925] = 133 [1926] = 134 [1927] = 1 [1928] = 136 [1929] = 137 [1930] = 138 [1931] = 139 [1932] = 140 [1933] = 141 [1934] = 0 [1935] = 143 [1936] = 144 [1937] = 145 [1938] = 146 [1939] = 147 [1940] = 148 [1941] = 149 [1942] = 150 [1943] = 151 [1944] = 152 [1945] = 153 [1946] = 154 [1947] = 155 [1948] = 156 [1949] = 157 [1950] = 158 [1951] = 159 [1952] = 160 [1953] = 161 [1954] = 162 [1955] = 163 [1956] = 164 [1957] = 165 [1958] = 166 [1959] = 167 [1960] = 0 [1961] = 169 [1962] = 170 [1963] = 171 [1964] = 172 [1965] = 173 [1966] = 174 [1967] = 175 [1968] = 176 [1969] = 177 [1970] = 178 [1971] = 179 [1972] = 180 [1973] = 181 [1974] = 182 [1975] = 183 [1976] = 184 [1977] = 185 [1978] = 186 [1979] = 187 [1980] = 188 [1981] = 189 [1982] = 190 [1983] = 191 [1984] = 192 [1985] = 193 [1986] = 194 [1987] = 195 [1988] = 2 [1989] = 197 [1990] = 198 [1991] = 199 [1992] = 200 [1993] = 201 [1994] = 202 [1995] = 203 [1996] = 32 [1997] = 205 [1998] = 206 [1999] = 207 [2000] = 208 [2001] = 209 [2002] = 210 [2003] = 211 [2004] = 212 [2005] = 213 [2006] = 214 [2007] = 215 [2008] = 216 [2009] = 217 [2010] = 218 [2011] = 219 [2012] = 220 [2013] = 221 [2014] = 222 [2015] = 223 [2016] = 224 [2017] = 225 [2018] = 226 [2019] = 227 [2020] = 228 [2021] = 229 [2022] = 230 [2023] = 231 [2024] = 232 [2025] = 233 [2026] = 234 [2027] = 235 [2028] = 236 [2029] = 237 [2030] = 238 [2031] = 239 [2032] = 240 [2033] = 241 [2034] = 242 [2035] = 243 [2036] = 244 [2037] = 245 [2038] = 246 [2039] = 247 [2040] = 248 [2041] = 249 [2042] = 250 [2043] = 251 [2044] = 252 [2045] = 253 [2046] = 254 [2047] = 255 [2048] = 0 [2049] = 0 [2050] = 255 [2051] = 0 [2052] = 4 [2053] = 5 [2054] = 6 [2055] = 7 [2056] = 8 [2057] = 9 [2058] = 10 [2059] = 11 [2060] = 12 [2061] = 13 [2062] = 14 [2063] = 15 [2064] = 16 [2065] = 17 [2066] = 18 [2067] = 19 [2068] = 20 [2069] = 21 [2070] = 22 [2071] = 23 [2072] = 24 [2073] = 25 [2074] = 26 [2075] = 27 [2076] = 28 [2077] = 29 [2078] = 30 [2079] = 31 [2080] = 32 [2081] = 33 [2082] = 34 [2083] = 35 [2084] = 36 [2085] = 37 [2086] = 38 [2087] = 39 [2088] = 40 [2089] = 41 [2090] = 42 [2091] = 43 [2092] = 44 [2093] = 45 [2094] = 46 [2095] = 47 [2096] = 48 [2097] = 49 [2098] = 50 [2099] = 51 [2100] = 52 [2101] = 53 [2102] = 54 [2103] = 55 [2104] = 56 [2105] = 57 [2106] = 58 [2107] = 59 [2108] = 60 [2109] = 61 [2110] = 62 [2111] = 63 [2112] = 64 [2113] = 65 [2114] = 66 [2115] = 67 [2116] = 68 [2117] = 69 [2118] = 70 [2119] = 71 [2120] = 72 [2121] = 73 [2122] = 74 [2123] = 75 [2124] = 76 [2125] = 77 [2126] = 78 [2127] = 79 [2128] = 80 [2129] = 81 [2130] = 82 [2131] = 83 [2132] = 84 [2133] = 85 [2134] = 86 [2135] = 87 [2136] = 88 [2137] = 89 [2138] = 90 [2139] = 91 [2140] = 92 [2141] = 93 [2142] = 94 [2143] = 95 [2144] = 96 [2145] = 97 [2146] = 98 [2147] = 99 [2148] = 100 [2149] = 101 [2150] = 102 [2151] = 103 [2152] = 104 [2153] = 105 [2154] = 106 [2155] = 107 [2156] = 108 [2157] = 109 [2158] = 110 [2159] = 111 [2160] = 112 [2161] = 113 [2162] = 114 [2163] = 115 [2164] = 116 [2165] = 117 [2166] = 118 [2167] = 119 [2168] = 120 [2169] = 121 [2170] = 122 [2171] = 123 [2172] = 124 [2173] = 125 [2174] = 126 [2175] = 127 [2176] = 0 [2177] = 129 [2178] = 130 [2179] = 0 [2180] = 132 [2181] = 133 [2182] = 134 [2183] = 1 [2184] = 136 [2185] = 137 [2186] = 138 [2187] = 139 [2188] = 140 [2189] = 141 [2190] = 0 [2191] = 143 [2192] = 144 [2193] = 145 [2194] = 146 [2195] = 147 [2196] = 148 [2197] = 149 [2198] = 150 [2199] = 151 [2200] = 152 [2201] = 153 [2202] = 154 [2203] = 155 [2204] = 156 [2205] = 157 [2206] = 158 [2207] = 159 [2208] = 160 [2209] = 161 [2210] = 162 [2211] = 163 [2212] = 164 [2213] = 165 [2214] = 166 [2215] = 167 [2216] = 0 [2217] = 169 [2218] = 170 [2219] = 171 [2220] = 172 [2221] = 173 [2222] = 174 [2223] = 175 [2224] = 176 [2225] = 177 [2226] = 178 [2227] = 179 [2228] = 180 [2229] = 181 [2230] = 182 [2231] = 183 [2232] = 184 [2233] = 185 [2234] = 186 [2235] = 187 [2236] = 188 [2237] = 189 [2238] = 190 [2239] = 191 [2240] = 192 [2241] = 193 [2242] = 194 [2243] = 195 [2244] = 2 [2245] = 197 [2246] = 198 [2247] = 199 [2248] = 200 [2249] = 201 [2250] = 202 [2251] = 203 [2252] = 32 [2253] = 205 [2254] = 206 [2255] = 207 [2256] = 208 [2257] = 209 [2258] = 210 [2259] = 211 [2260] = 212 [2261] = 213 [2262] = 214 [2263] = 215 [2264] = 216 [2265] = 217 [2266] = 218 [2267] = 219 [2268] = 220 [2269] = 221 [2270] = 222 [2271] = 223 [2272] = 224 [2273] = 225 [2274] = 226 [2275] = 227 [2276] = 228 [2277] = 229 [2278] = 230 [2279] = 231 [2280] = 232 [2281] = 233 [2282] = 234 [2283] = 235 [2284] = 236 [2285] = 237 [2286] = 238 [2287] = 239 [2288] = 240 [2289] = 241 [2290] = 242 [2291] = 243 [2292] = 244 [2293] = 245 [2294] = 246 [2295] = 247 [2296] = 248 [2297] = 249 [2298] = 250 [2299] = 251 [2300] = 252 [2301] = 253 [2302] = 254 [2303] = 255 [2304] = 0 [2305] = 0 [2306] = 255 [2307] = 0 [2308] = 4 [2309] = 5 [2310] = 6 [2311] = 7 [2312] = 8 [2313] = 9 [2314] = 10 [2315] = 11 [2316] = 12 [2317] = 13 [2318] = 14 [2319] = 15 [2320] = 16 [2321] = 17 [2322] = 18 [2323] = 19 [2324] = 20 [2325] = 21 [2326] = 22 [2327] = 23 [2328] = 24 [2329] = 25 [2330] = 26 [2331] = 27 [2332] = 28 [2333] = 29 [2334] = 30 [2335] = 31 [2336] = 32 [2337] = 33 [2338] = 34 [2339] = 35 [2340] = 36 [2341] = 37 [2342] = 38 [2343] = 39 [2344] = 40 [2345] = 41 [2346] = 42 [2347] = 43 [2348] = 44 [2349] = 45 [2350] = 46 [2351] = 47 [2352] = 48 [2353] = 49 [2354] = 50 [2355] = 51 [2356] = 52 [2357] = 53 [2358] = 54 [2359] = 55 [2360] = 56 [2361] = 57 [2362] = 58 [2363] = 59 [2364] = 60 [2365] = 61 [2366] = 62 [2367] = 63 [2368] = 64 [2369] = 65 [2370] = 66 [2371] = 67 [2372] = 68 [2373] = 69 [2374] = 70 [2375] = 71 [2376] = 72 [2377] = 73 [2378] = 74 [2379] = 75 [2380] = 76 [2381] = 77 [2382] = 78 [2383] = 79 [2384] = 80 [2385] = 81 [2386] = 82 [2387] = 83 [2388] = 84 [2389] = 85 [2390] = 86 [2391] = 87 [2392] = 88 [2393] = 89 [2394] = 90 [2395] = 91 [2396] = 92 [2397] = 93 [2398] = 94 [2399] = 95 [2400] = 96 [2401] = 97 [2402] = 98 [2403] = 99 [2404] = 100 [2405] = 101 [2406] = 102 [2407] = 103 [2408] = 104 [2409] = 105 [2410] = 106 [2411] = 107 [2412] = 108 [2413] = 109 [2414] = 110 [2415] = 111 [2416] = 112 [2417] = 113 [2418] = 114 [2419] = 115 [2420] = 116 [2421] = 117 [2422] = 118 [2423] = 119 [2424] = 120 [2425] = 121 [2426] = 122 [2427] = 123 [2428] = 124 [2429] = 125 [2430] = 126 [2431] = 127 [2432] = 0 [2433] = 129 [2434] = 130 [2435] = 0 [2436] = 132 [2437] = 133 [2438] = 134 [2439] = 1 [2440] = 136 [2441] = 137 [2442] = 138 [2443] = 139 [2444] = 140 [2445] = 141 [2446] = 0 [2447] = 143 [2448] = 144 [2449] = 145 [2450] = 146 [2451] = 147 [2452] = 148 [2453] = 149 [2454] = 150 [2455] = 151 [2456] = 152 [2457] = 153 [2458] = 154 [2459] = 155 [2460] = 156 [2461] = 157 [2462] = 158 [2463] = 159 [2464] = 160 [2465] = 161 [2466] = 162 [2467] = 163 [2468] = 164 [2469] = 165 [2470] = 166 [2471] = 167 [2472] = 0 [2473] = 169 [2474] = 170 [2475] = 171 [2476] = 172 [2477] = 173 [2478] = 174 [2479] = 175 [2480] = 176 [2481] = 177 [2482] = 178 [2483] = 179 [2484] = 180 [2485] = 181 [2486] = 182 [2487] = 183 [2488] = 184 [2489] = 185 [2490] = 186 [2491] = 187 [2492] = 188 [2493] = 189 [2494] = 190 [2495] = 191 [2496] = 192 [2497] = 193 [2498] = 194 [2499] = 195 [2500] = 2 [2501] = 197 [2502] = 198 [2503] = 199 [2504] = 200 [2505] = 201 [2506] = 202 [2507] = 203 [2508] = 31 [2509] = 205 [2510] = 206 [2511] = 207 [2512] = 208 [2513] = 209 [2514] = 210 [2515] = 211 [2516] = 212 [2517] = 213 [2518] = 214 [2519] = 215 [2520] = 216 [2521] = 217 [2522] = 218 [2523] = 219 [2524] = 220 [2525] = 221 [2526] = 222 [2527] = 223 [2528] = 224 [2529] = 225 [2530] = 226 [2531] = 227 [2532] = 228 [2533] = 229 [2534] = 230 [2535] = 231 [2536] = 232 [2537] = 233 [2538] = 234 [2539] = 235 [2540] = 236 [2541] = 237 [2542] = 238 [2543] = 239 [2544] = 240 [2545] = 241 [2546] = 242 [2547] = 243 [2548] = 244 [2549] = 245 [2550] = 246 [2551] = 247 [2552] = 248 [2553] = 249 [2554] = 250 [2555] = 251 [2556] = 252 [2557] = 253 [2558] = 254 [2559] = 255 [2560] = 0 [2561] = 0 [2562] = 255 [2563] = 0 [2564] = 4 [2565] = 5 [2566] = 6 [2567] = 7 [2568] = 8 [2569] = 9 [2570] = 10 [2571] = 11 [2572] = 12 [2573] = 13 [2574] = 14 [2575] = 15 [2576] = 16 [2577] = 17 [2578] = 18 [2579] = 19 [2580] = 20 [2581] = 21 [2582] = 22 [2583] = 23 [2584] = 24 [2585] = 25 [2586] = 26 [2587] = 27 [2588] = 28 [2589] = 29 [2590] = 30 [2591] = 31 [2592] = 32 [2593] = 33 [2594] = 34 [2595] = 35 [2596] = 36 [2597] = 37 [2598] = 38 [2599] = 39 [2600] = 40 [2601] = 41 [2602] = 42 [2603] = 43 [2604] = 44 [2605] = 45 [2606] = 46 [2607] = 47 [2608] = 48 [2609] = 49 [2610] = 50 [2611] = 51 [2612] = 52 [2613] = 53 [2614] = 54 [2615] = 55 [2616] = 56 [2617] = 57 [2618] = 58 [2619] = 59 [2620] = 60 [2621] = 61 [2622] = 62 [2623] = 63 [2624] = 64 [2625] = 65 [2626] = 66 [2627] = 67 [2628] = 68 [2629] = 69 [2630] = 70 [2631] = 71 [2632] = 72 [2633] = 73 [2634] = 74 [2635] = 75 [2636] = 76 [2637] = 77 [2638] = 78 [2639] = 79 [2640] = 80 [2641] = 81 [2642] = 82 [2643] = 83 [2644] = 84 [2645] = 85 [2646] = 86 [2647] = 87 [2648] = 88 [2649] = 89 [2650] = 90 [2651] = 91 [2652] = 92 [2653] = 93 [2654] = 94 [2655] = 95 [2656] = 96 [2657] = 97 [2658] = 98 [2659] = 99 [2660] = 100 [2661] = 101 [2662] = 102 [2663] = 103 [2664] = 104 [2665] = 105 [2666] = 106 [2667] = 107 [2668] = 108 [2669] = 109 [2670] = 110 [2671] = 111 [2672] = 112 [2673] = 113 [2674] = 114 [2675] = 115 [2676] = 116 [2677] = 117 [2678] = 118 [2679] = 119 [2680] = 120 [2681] = 121 [2682] = 122 [2683] = 123 [2684] = 124 [2685] = 125 [2686] = 126 [2687] = 127 [2688] = 0 [2689] = 129 [2690] = 130 [2691] = 0 [2692] = 132 [2693] = 133 [2694] = 134 [2695] = 1 [2696] = 136 [2697] = 137 [2698] = 138 [2699] = 139 [2700] = 140 [2701] = 141 [2702] = 0 [2703] = 143 [2704] = 144 [2705] = 145 [2706] = 146 [2707] = 147 [2708] = 148 [2709] = 149 [2710] = 150 [2711] = 151 [2712] = 152 [2713] = 153 [2714] = 154 [2715] = 155 [2716] = 156 [2717] = 157 [2718] = 158 [2719] = 159 [2720] = 160 [2721] = 161 [2722] = 162 [2723] = 163 [2724] = 164 [2725] = 165 [2726] = 166 [2727] = 167 [2728] = 0 [2729] = 169 [2730] = 170 [2731] = 171 [2732] = 172 [2733] = 173 [2734] = 174 [2735] = 175 [2736] = 176 [2737] = 177 [2738] = 178 [2739] = 179 [2740] = 180 [2741] = 181 [2742] = 182 [2743] = 183 [2744] = 184 [2745] = 185 [2746] = 186 [2747] = 187 [2748] = 188 [2749] = 189 [2750] = 190 [2751] = 191 [2752] = 192 [2753] = 193 [2754] = 194 [2755] = 195 [2756] = 2 [2757] = 197 [2758] = 198 [2759] = 199 [2760] = 200 [2761] = 201 [2762] = 202 [2763] = 203 [2764] = 32 [2765] = 205 [2766] = 206 [2767] = 207 [2768] = 208 [2769] = 209 [2770] = 210 [2771] = 211 [2772] = 212 [2773] = 213 [2774] = 214 [2775] = 215 [2776] = 216 [2777] = 217 [2778] = 218 [2779] = 219 [2780] = 220 [2781] = 221 [2782] = 222 [2783] = 223 [2784] = 224 [2785] = 225 [2786] = 226 [2787] = 227 [2788] = 228 [2789] = 229 [2790] = 230 [2791] = 231 [2792] = 232 [2793] = 233 [2794] = 234 [2795] = 235 [2796] = 236 [2797] = 237 [2798] = 238 [2799] = 239 [2800] = 240 [2801] = 241 [2802] = 242 [2803] = 243 [2804] = 244 [2805] = 245 [2806] = 246 [2807] = 247 [2808] = 248 [2809] = 249 [2810] = 250 [2811] = 251 [2812] = 252 [2813] = 253 [2814] = 254 [2815] = 255 [2816] = 0 [2817] = 0 [2818] = 255 [2819] = 0 [2820] = 4 [2821] = 5 [2822] = 6 [2823] = 7 [2824] = 8 [2825] = 9 [2826] = 10 [2827] = 11 [2828] = 12 [2829] = 13 [2830] = 14 [2831] = 15 [2832] = 16 [2833] = 17 [2834] = 18 [2835] = 19 [2836] = 20 [2837] = 21 [2838] = 22 [2839] = 23 [2840] = 24 [2841] = 25 [2842] = 26 [2843] = 27 [2844] = 28 [2845] = 29 [2846] = 30 [2847] = 31 [2848] = 32 [2849] = 33 [2850] = 34 [2851] = 35 [2852] = 36 [2853] = 37 [2854] = 38 [2855] = 39 [2856] = 40 [2857] = 41 [2858] = 42 [2859] = 43 [2860] = 44 [2861] = 45 [2862] = 46 [2863] = 47 [2864] = 48 [2865] = 49 [2866] = 50 [2867] = 51 [2868] = 52 [2869] = 53 [2870] = 54 [2871] = 55 [2872] = 56 [2873] = 57 [2874] = 58 [2875] = 59 [2876] = 60 [2877] = 61 [2878] = 62 [2879] = 63 [2880] = 64 [2881] = 65 [2882] = 66 [2883] = 67 [2884] = 68 [2885] = 69 [2886] = 70 [2887] = 71 [2888] = 72 [2889] = 73 [2890] = 74 [2891] = 75 [2892] = 76 [2893] = 77 [2894] = 78 [2895] = 79 [2896] = 80 [2897] = 81 [2898] = 82 [2899] = 83 [2900] = 84 [2901] = 85 [2902] = 86 [2903] = 87 [2904] = 88 [2905] = 89 [2906] = 90 [2907] = 91 [2908] = 92 [2909] = 93 [2910] = 94 [2911] = 95 [2912] = 96 [2913] = 97 [2914] = 98 [2915] = 99 [2916] = 100 [2917] = 101 [2918] = 102 [2919] = 103 [2920] = 104 [2921] = 105 [2922] = 106 [2923] = 107 [2924] = 108 [2925] = 109 [2926] = 110 [2927] = 111 [2928] = 112 [2929] = 113 [2930] = 114 [2931] = 115 [2932] = 116 [2933] = 117 [2934] = 118 [2935] = 119 [2936] = 120 [2937] = 121 [2938] = 122 [2939] = 123 [2940] = 124 [2941] = 125 [2942] = 126 [2943] = 127 [2944] = 0 [2945] = 129 [2946] = 130 [2947] = 0 [2948] = 132 [2949] = 133 [2950] = 134 [2951] = 1 [2952] = 136 [2953] = 137 [2954] = 138 [2955] = 139 [2956] = 140 [2957] = 141 [2958] = 0 [2959] = 143 [2960] = 144 [2961] = 145 [2962] = 146 [2963] = 147 [2964] = 148 [2965] = 149 [2966] = 150 [2967] = 151 [2968] = 152 [2969] = 153 [2970] = 154 [2971] = 155 [2972] = 156 [2973] = 157 [2974] = 158 [2975] = 159 [2976] = 160 [2977] = 161 [2978] = 162 [2979] = 163 [2980] = 164 [2981] = 165 [2982] = 166 [2983] = 167 [2984] = 0 [2985] = 169 [2986] = 170 [2987] = 171 [2988] = 172 [2989] = 173 [2990] = 174 [2991] = 175 [2992] = 176 [2993] = 177 [2994] = 178 [2995] = 179 [2996] = 180 [2997] = 181 [2998] = 182 [2999] = 183 [3000] = 184 [3001] = 185 [3002] = 186 [3003] = 187 [3004] = 188 [3005] = 189 [3006] = 190 [3007] = 191 [3008] = 192 [3009] = 193 [3010] = 194 [3011] = 195 [3012] = 2 [3013] = 197 [3014] = 198 [3015] = 199 [3016] = 200 [3017] = 201 [3018] = 202 [3019] = 203 [3020] = 33 [3021] = 205 [3022] = 206 [3023] = 207 [3024] = 208 [3025] = 209 [3026] = 210 [3027] = 211 [3028] = 212 [3029] = 213 [3030] = 214 [3031] = 215 [3032] = 216 [3033] = 217 [3034] = 218 [3035] = 219 [3036] = 220 [3037] = 221 [3038] = 222 [3039] = 223 [3040] = 224 [3041] = 225 [3042] = 226 [3043] = 227 [3044] = 228 [3045] = 229 [3046] = 230 [3047] = 231 [3048] = 232 [3049] = 233 [3050] = 234 [3051] = 235 [3052] = 236 [3053] = 237 [3054] = 238 [3055] = 239 [3056] = 240 [3057] = 241 [3058] = 242 [3059] = 243 [3060] = 244 [3061] = 245 [3062] = 246 [3063] = 247 [3064] = 248 [3065] = 249 [3066] = 250 [3067] = 251 [3068] = 252 [3069] = 253 [3070] = 254 [3071] = 255 [3072] = 0 [3073] = 0 [3074] = 255 [3075] = 0 [3076] = 4 [3077] = 5 [3078] = 6 [3079] = 7 [3080] = 8 [3081] = 9 [3082] = 10 [3083] = 11 [3084] = 12 [3085] = 13 [3086] = 14 [3087] = 15 [3088] = 16 [3089] = 17 [3090] = 18 [3091] = 19 [3092] = 20 [3093] = 21 [3094] = 22 [3095] = 23 [3096] = 24 [3097] = 25 [3098] = 26 [3099] = 27 [3100] = 28 [3101] = 29 [3102] = 30 [3103] = 31 [3104] = 32 [3105] = 33 [3106] = 34 [3107] = 35 [3108] = 36 [3109] = 37 [3110] = 38 [3111] = 39 [3112] = 40 [3113] = 41 [3114] = 42 [3115] = 43 [3116] = 44 [3117] = 45 [3118] = 46 [3119] = 47 [3120] = 48 [3121] = 49 [3122] = 50 [3123] = 51 [3124] = 52 [3125] = 53 [3126] = 54 [3127] = 55 [3128] = 56 [3129] = 57 [3130] = 58 [3131] = 59 [3132] = 60 [3133] = 61 [3134] = 62 [3135] = 63 [3136] = 64 [3137] = 65 [3138] = 66 [3139] = 67 [3140] = 68 [3141] = 69 [3142] = 70 [3143] = 71 [3144] = 72 [3145] = 73 [3146] = 74 [3147] = 75 [3148] = 76 [3149] = 77 [3150] = 78 [3151] = 79 [3152] = 80 [3153] = 81 [3154] = 82 [3155] = 83 [3156] = 84 [3157] = 85 [3158] = 86 [3159] = 87 [3160] = 88 [3161] = 89 [3162] = 90 [3163] = 91 [3164] = 92 [3165] = 93 [3166] = 94 [3167] = 95 [3168] = 96 [3169] = 97 [3170] = 98 [3171] = 99 [3172] = 100 [3173] = 101 [3174] = 102 [3175] = 103 [3176] = 104 [3177] = 105 [3178] = 106 [3179] = 107 [3180] = 108 [3181] = 109 [3182] = 110 [3183] = 111 [3184] = 112 [3185] = 113 [3186] = 114 [3187] = 115 [3188] = 116 [3189] = 117 [3190] = 118 [3191] = 119 [3192] = 120 [3193] = 121 [3194] = 122 [3195] = 123 [3196] = 124 [3197] = 125 [3198] = 126 [3199] = 127 [3200] = 0 [3201] = 129 [3202] = 130 [3203] = 0 [3204] = 132 [3205] = 133 [3206] = 134 [3207] = 1 [3208] = 136 [3209] = 137 [3210] = 138 [3211] = 139 [3212] = 140 [3213] = 141 [3214] = 0 [3215] = 143 [3216] = 144 [3217] = 145 [3218] = 146 [3219] = 147 [3220] = 148 [3221] = 149 [3222] = 150 [3223] = 151 [3224] = 152 [3225] = 153 [3226] = 154 [3227] = 155 [3228] = 156 [3229] = 157 [3230] = 158 [3231] = 159 [3232] = 160 [3233] = 161 [3234] = 162 [3235] = 163 [3236] = 164 [3237] = 165 [3238] = 166 [3239] = 167 [3240] = 0 [3241] = 169 [3242] = 170 [3243] = 171 [3244] = 172 [3245] = 173 [3246] = 174 [3247] = 175 [3248] = 176 [3249] = 177 [3250] = 178 [3251] = 179 [3252] = 180 [3253] = 181 [3254] = 182 [3255] = 183 [3256] = 184 [3257] = 185 [3258] = 186 [3259] = 187 [3260] = 188 [3261] = 189 [3262] = 190 [3263] = 191 [3264] = 192 [3265] = 193 [3266] = 194 [3267] = 195 [3268] = 2 [3269] = 197 [3270] = 198 [3271] = 199 [3272] = 200 [3273] = 201 [3274] = 202 [3275] = 203 [3276] = 33 [3277] = 205 [3278] = 206 [3279] = 207 [3280] = 208 [3281] = 209 [3282] = 210 [3283] = 211 [3284] = 212 [3285] = 213 [3286] = 214 [3287] = 215 [3288] = 216 [3289] = 217 [3290] = 218 [3291] = 219 [3292] = 220 [3293] = 221 [3294] = 222 [3295] = 223 [3296] = 224 [3297] = 225 [3298] = 226 [3299] = 227 [3300] = 228 [3301] = 229 [3302] = 230 [3303] = 231 [3304] = 232 [3305] = 233 [3306] = 234 [3307] = 235 [3308] = 236 [3309] = 237 [3310] = 238 [3311] = 239 [3312] = 240 [3313] = 241 [3314] = 242 [3315] = 243 [3316] = 244 [3317] = 245 [3318] = 246 [3319] = 247 [3320] = 248 [3321] = 249 [3322] = 250 [3323] = 251 [3324] = 252 [3325] = 253 [3326] = 254 [3327] = 255 [3328] = 0 [3329] = 0 [3330] = 255 [3331] = 0 [3332] = 4 [3333] = 5 [3334] = 6 [3335] = 7 [3336] = 8 [3337] = 9 [3338] = 10 [3339] = 11 [3340] = 12 [3341] = 13 [3342] = 14 [3343] = 15 [3344] = 16 [3345] = 17 [3346] = 18 [3347] = 19 [3348] = 20 [3349] = 21 [3350] = 22 [3351] = 23 [3352] = 24 [3353] = 25 [3354] = 26 [3355] = 27 [3356] = 28 [3357] = 29 [3358] = 30 [3359] = 31 [3360] = 32 [3361] = 33 [3362] = 34 [3363] = 35 [3364] = 36 [3365] = 37 [3366] = 38 [3367] = 39 [3368] = 40 [3369] = 41 [3370] = 42 [3371] = 43 [3372] = 44 [3373] = 45 [3374] = 46 [3375] = 47 [3376] = 48 [3377] = 49 [3378] = 50 [3379] = 51 [3380] = 52 [3381] = 53 [3382] = 54 [3383] = 55 [3384] = 56 [3385] = 57 [3386] = 58 [3387] = 59 [3388] = 60 [3389] = 61 [3390] = 62 [3391] = 63 [3392] = 64 [3393] = 65 [3394] = 66 [3395] = 67 [3396] = 68 [3397] = 69 [3398] = 70 [3399] = 71 [3400] = 72 [3401] = 73 [3402] = 74 [3403] = 75 [3404] = 76 [3405] = 77 [3406] = 78 [3407] = 79 [3408] = 80 [3409] = 81 [3410] = 82 [3411] = 83 [3412] = 84 [3413] = 85 [3414] = 86 [3415] = 87 [3416] = 88 [3417] = 89 [3418] = 90 [3419] = 91 [3420] = 92 [3421] = 93 [3422] = 94 [3423] = 95 [3424] = 96 [3425] = 97 [3426] = 98 [3427] = 99 [3428] = 100 [3429] = 101 [3430] = 102 [3431] = 103 [3432] = 104 [3433] = 105 [3434] = 106 [3435] = 107 [3436] = 108 [3437] = 109 [3438] = 110 [3439] = 111 [3440] = 112 [3441] = 113 [3442] = 114 [3443] = 115 [3444] = 116 [3445] = 117 [3446] = 118 [3447] = 119 [3448] = 120 [3449] = 121 [3450] = 122 [3451] = 123 [3452] = 124 [3453] = 125 [3454] = 126 [3455] = 127 [3456] = 0 [3457] = 129 [3458] = 130 [3459] = 0 [3460] = 132 [3461] = 133 [3462] = 134 [3463] = 1 [3464] = 136 [3465] = 137 [3466] = 138 [3467] = 139 [3468] = 140 [3469] = 141 [3470] = 0 [3471] = 143 [3472] = 144 [3473] = 145 [3474] = 146 [3475] = 147 [3476] = 148 [3477] = 149 [3478] = 150 [3479] = 151 [3480] = 152 [3481] = 153 [3482] = 154 [3483] = 155 [3484] = 156 [3485] = 157 [3486] = 158 [3487] = 159 [3488] = 160 [3489] = 161 [3490] = 162 [3491] = 163 [3492] = 164 [3493] = 165 [3494] = 166 [3495] = 167 [3496] = 0 [3497] = 169 [3498] = 170 [3499] = 171 [3500] = 172 [3501] = 173 [3502] = 174 [3503] = 175 [3504] = 176 [3505] = 177 [3506] = 178 [3507] = 179 [3508] = 180 [3509] = 181 [3510] = 182 [3511] = 183 [3512] = 184 [3513] = 185 [3514] = 186 [3515] = 187 [3516] = 188 [3517] = 189 [3518] = 190 [3519] = 191 [3520] = 192 [3521] = 193 [3522] = 194 [3523] = 195 [3524] = 2 [3525] = 197 [3526] = 198 [3527] = 199 [3528] = 200 [3529] = 201 [3530] = 202 [3531] = 203 [3532] = 32 [3533] = 205 [3534] = 206 [3535] = 207 [3536] = 208 [3537] = 209 [3538] = 210 [3539] = 211 [3540] = 212 [3541] = 213 [3542] = 214 [3543] = 215 [3544] = 216 [3545] = 217 [3546] = 218 [3547] = 219 [3548] = 220 [3549] = 221 [3550] = 222 [3551] = 223 [3552] = 224 [3553] = 225 [3554] = 226 [3555] = 227 [3556] = 228 [3557] = 229 [3558] = 230 [3559] = 231 [3560] = 232 [3561] = 233 [3562] = 234 [3563] = 235 [3564] = 236 [3565] = 237 [3566] = 238 [3567] = 239 [3568] = 240 [3569] = 241 [3570] = 242 [3571] = 243 [3572] = 244 [3573] = 245 [3574] = 246 [3575] = 247 [3576] = 248 [3577] = 249 [3578] = 250 [3579] = 251 [3580] = 252 [3581] = 253 [3582] = 254 [3583] = 255 [3584] = 0 [3585] = 0 [3586] = 255 [3587] = 0 [3588] = 4 [3589] = 5 [3590] = 6 [3591] = 7 [3592] = 8 [3593] = 9 [3594] = 10 [3595] = 11 [3596] = 12 [3597] = 13 [3598] = 14 [3599] = 15 [3600] = 16 [3601] = 17 [3602] = 18 [3603] = 19 [3604] = 20 [3605] = 21 [3606] = 22 [3607] = 23 [3608] = 24 [3609] = 25 [3610] = 26 [3611] = 27 [3612] = 28 [3613] = 29 [3614] = 30 [3615] = 31 [3616] = 32 [3617] = 33 [3618] = 34 [3619] = 35 [3620] = 36 [3621] = 37 [3622] = 38 [3623] = 39 [3624] = 40 [3625] = 41 [3626] = 42 [3627] = 43 [3628] = 44 [3629] = 45 [3630] = 46 [3631] = 47 [3632] = 48 [3633] = 49 [3634] = 50 [3635] = 51 [3636] = 52 [3637] = 53 [3638] = 54 [3639] = 55 [3640] = 56 [3641] = 57 [3642] = 58 [3643] = 59 [3644] = 60 [3645] = 61 [3646] = 62 [3647] = 63 [3648] = 64 [3649] = 65 [3650] = 66 [3651] = 67 [3652] = 68 [3653] = 69 [3654] = 70 [3655] = 71 [3656] = 72 [3657] = 73 [3658] = 74 [3659] = 75 [3660] = 76 [3661] = 77 [3662] = 78 [3663] = 79 [3664] = 80 [3665] = 81 [3666] = 82 [3667] = 83 [3668] = 84 [3669] = 85 [3670] = 86 [3671] = 87 [3672] = 88 [3673] = 89 [3674] = 90 [3675] = 91 [3676] = 92 [3677] = 93 [3678] = 94 [3679] = 95 [3680] = 96 [3681] = 97 [3682] = 98 [3683] = 99 [3684] = 100 [3685] = 101 [3686] = 102 [3687] = 103 [3688] = 104 [3689] = 105 [3690] = 106 [3691] = 107 [3692] = 108 [3693] = 109 [3694] = 110 [3695] = 111 [3696] = 112 [3697] = 113 [3698] = 114 [3699] = 115 [3700] = 116 [3701] = 117 [3702] = 118 [3703] = 119 [3704] = 120 [3705] = 121 [3706] = 122 [3707] = 123 [3708] = 124 [3709] = 125 [3710] = 126 [3711] = 127 [3712] = 0 [3713] = 129 [3714] = 130 [3715] = 0 [3716] = 132 [3717] = 133 [3718] = 134 [3719] = 1 [3720] = 136 [3721] = 137 [3722] = 138 [3723] = 139 [3724] = 140 [3725] = 141 [3726] = 0 [3727] = 143 [3728] = 144 [3729] = 145 [3730] = 146 [3731] = 147 [3732] = 148 [3733] = 149 [3734] = 150 [3735] = 151 [3736] = 152 [3737] = 153 [3738] = 154 [3739] = 155 [3740] = 156 [3741] = 157 [3742] = 158 [3743] = 159 [3744] = 160 [3745] = 161 [3746] = 162 [3747] = 163 [3748] = 164 [3749] = 165 [3750] = 166 [3751] = 167 [3752] = 0 [3753] = 169 [3754] = 170 [3755] = 171 [3756] = 172 [3757] = 173 [3758] = 174 [3759] = 175 [3760] = 176 [3761] = 177 [3762] = 178 [3763] = 179 [3764] = 180 [3765] = 181 [3766] = 182 [3767] = 183 [3768] = 184 [3769] = 185 [3770] = 186 [3771] = 187 [3772] = 188 [3773] = 189 [3774] = 190 [3775] = 191 [3776] = 192 [3777] = 193 [3778] = 194 [3779] = 195 [3780] = 2 [3781] = 197 [3782] = 198 [3783] = 199 [3784] = 200 [3785] = 201 [3786] = 202 [3787] = 203 [3788] = 33 [3789] = 205 [3790] = 206 [3791] = 207 [3792] = 208 [3793] = 209 [3794] = 210 [3795] = 211 [3796] = 212 [3797] = 213 [3798] = 214 [3799] = 215 [3800] = 216 [3801] = 217 [3802] = 218 [3803] = 219 [3804] = 220 [3805] = 221 [3806] = 222 [3807] = 223 [3808] = 224 [3809] = 225 [3810] = 226 [3811] = 227 [3812] = 228 [3813] = 229 [3814] = 230 [3815] = 231 [3816] = 232 [3817] = 233 [3818] = 234 [3819] = 235 [3820] = 236 [3821] = 237 [3822] = 238 [3823] = 239 [3824] = 240 [3825] = 241 [3826] = 242 [3827] = 243 [3828] = 244 [3829] = 245 [3830] = 246 [3831] = 247 [3832] = 248 [3833] = 249 [3834] = 250 [3835] = 251 [3836] = 252 [3837] = 253 [3838] = 254 [3839] = 255 [3840] = 0 [3841] = 0 [3842] = 255 [3843] = 0 [3844] = 4 [3845] = 5 [3846] = 6 [3847] = 7 [3848] = 8 [3849] = 9 [3850] = 10 [3851] = 11 [3852] = 12 [3853] = 13 [3854] = 14 [3855] = 15 [3856] = 16 [3857] = 17 [3858] = 18 [3859] = 19 [3860] = 20 [3861] = 21 [3862] = 22 [3863] = 23 [3864] = 24 [3865] = 25 [3866] = 26 [3867] = 27 [3868] = 28 [3869] = 29 [3870] = 30 [3871] = 31 [3872] = 32 [3873] = 33 [3874] = 34 [3875] = 35 [3876] = 36 [3877] = 37 [3878] = 38 [3879] = 39 [3880] = 40 [3881] = 41 [3882] = 42 [3883] = 43 [3884] = 44 [3885] = 45 [3886] = 46 [3887] = 47 [3888] = 48 [3889] = 49 [3890] = 50 [3891] = 51 [3892] = 52 [3893] = 53 [3894] = 54 [3895] = 55 [3896] = 56 [3897] = 57 [3898] = 58 [3899] = 59 [3900] = 60 [3901] = 61 [3902] = 62 [3903] = 63 [3904] = 64 [3905] = 65 [3906] = 66 [3907] = 67 [3908] = 68 [3909] = 69 [3910] = 70 [3911] = 71 [3912] = 72 [3913] = 73 [3914] = 74 [3915] = 75 [3916] = 76 [3917] = 77 [3918] = 78 [3919] = 79 [3920] = 80 [3921] = 81 [3922] = 82 [3923] = 83 [3924] = 84 [3925] = 85 [3926] = 86 [3927] = 87 [3928] = 88 [3929] = 89 [3930] = 90 [3931] = 91 [3932] = 92 [3933] = 93 [3934] = 94 [3935] = 95 [3936] = 96 [3937] = 97 [3938] = 98 [3939] = 99 [3940] = 100 [3941] = 101 [3942] = 102 [3943] = 103 [3944] = 104 [3945] = 105 [3946] = 106 [3947] = 107 [3948] = 108 [3949] = 109 [3950] = 110 [3951] = 111 [3952] = 112 [3953] = 113 [3954] = 114 [3955] = 115 [3956] = 116 [3957] = 117 [3958] = 118 [3959] = 119 [3960] = 120 [3961] = 121 [3962] = 122 [3963] = 123 [3964] = 124 [3965] = 125 [3966] = 126 [3967] = 127 [3968] = 0 [3969] = 129 [3970] = 130 [3971] = 0 [3972] = 132 [3973] = 133 [3974] = 134 [3975] = 1 [3976] = 136 [3977] = 137 [3978] = 138 [3979] = 139 [3980] = 140 [3981] = 141 [3982] = 0 [3983] = 143 [3984] = 144 [3985] = 145 [3986] = 146 [3987] = 147 [3988] = 148 [3989] = 149 [3990] = 150 [3991] = 151 [3992] = 152 [3993] = 153 [3994] = 154 [3995] = 155 [3996] = 156 [3997] = 157 [3998] = 158 [3999] = 159 [4000] = 160 [4001] = 161 [4002] = 162 [4003] = 163 [4004] = 164 [4005] = 165 [4006] = 166 [4007] = 167 [4008] = 0 [4009] = 169 [4010] = 170 [4011] = 171 [4012] = 172 [4013] = 173 [4014] = 174 [4015] = 175 [4016] = 176 [4017] = 177 [4018] = 178 [4019] = 179 [4020] = 180 [4021] = 181 [4022] = 182 [4023] = 183 [4024] = 184 [4025] = 185 [4026] = 186 [4027] = 187 [4028] = 188 [4029] = 189 [4030] = 190 [4031] = 191 [4032] = 192 [4033] = 193 [4034] = 194 [4035] = 195 [4036] = 2 [4037] = 197 [4038] = 198 [4039] = 199 [4040] = 200 [4041] = 201 [4042] = 202 [4043] = 203 [4044] = 33 [4045] = 205 [4046] = 206 [4047] = 207 [4048] = 208 [4049] = 209 [4050] = 210 [4051] = 211 [4052] = 212 [4053] = 213 [4054] = 214 [4055] = 215 [4056] = 216 [4057] = 217 [4058] = 218 [4059] = 219 [4060] = 220 [4061] = 221 [4062] = 222 [4063] = 223 [4064] = 224 [4065] = 225 [4066] = 226 [4067] = 227 [4068] = 228 [4069] = 229 [4070] = 230 [4071] = 231 [4072] = 232 [4073] = 233 [4074] = 234 [4075] = 235 [4076] = 236 [4077] = 237 [4078] = 238 [4079] = 239 [4080] = 240 [4081] = 241 [4082] = 242 [4083] = 243 [4084] = 244 [4085] = 245 [4086] = 246 [4087] = 247 [4088] = 248 [4089] = 249 [4090] = 250 [4091] = 251 [4092] = 252 [4093] = 253 [4094] = 254 [4095] = 255 ```

I ran a script to analyze this:

much smaller output

``` flanking 0 values from 1 to 3 with a distance of 2 flanking 0 values from 257 to 259 with a distance of 2 flanking 0 values from 513 to 515 with a distance of 2 flanking 0 values from 769 to 771 with a distance of 2 flanking 0 values from 1025 to 1027 with a distance of 2 flanking 0 values from 1281 to 1283 with a distance of 2 flanking 0 values from 1537 to 1539 with a distance of 2 flanking 0 values from 1793 to 1795 with a distance of 2 flanking 0 values from 2049 to 2051 with a distance of 2 flanking 0 values from 2305 to 2307 with a distance of 2 flanking 0 values from 2561 to 2563 with a distance of 2 flanking 0 values from 2817 to 2819 with a distance of 2 flanking 0 values from 3073 to 3075 with a distance of 2 flanking 0 values from 3329 to 3331 with a distance of 2 flanking 0 values from 3585 to 3587 with a distance of 2 flanking 0 values from 3841 to 3843 with a distance of 2 flanking 0 values from 0 to 3 with a distance of 3 flanking 0 values from 128 to 131 with a distance of 3 flanking 0 values from 256 to 259 with a distance of 3 flanking 0 values from 384 to 387 with a distance of 3 flanking 0 values from 512 to 515 with a distance of 3 flanking 0 values from 640 to 643 with a distance of 3 flanking 0 values from 768 to 771 with a distance of 3 flanking 0 values from 896 to 899 with a distance of 3 flanking 0 values from 1024 to 1027 with a distance of 3 flanking 0 values from 1152 to 1155 with a distance of 3 flanking 0 values from 1280 to 1283 with a distance of 3 flanking 0 values from 1408 to 1411 with a distance of 3 flanking 0 values from 1536 to 1539 with a distance of 3 flanking 0 values from 1664 to 1667 with a distance of 3 flanking 0 values from 1792 to 1795 with a distance of 3 flanking 0 values from 1920 to 1923 with a distance of 3 flanking 0 values from 2048 to 2051 with a distance of 3 flanking 0 values from 2176 to 2179 with a distance of 3 flanking 0 values from 2304 to 2307 with a distance of 3 flanking 0 values from 2432 to 2435 with a distance of 3 flanking 0 values from 2560 to 2563 with a distance of 3 flanking 0 values from 2688 to 2691 with a distance of 3 flanking 0 values from 2816 to 2819 with a distance of 3 flanking 0 values from 2944 to 2947 with a distance of 3 flanking 0 values from 3072 to 3075 with a distance of 3 flanking 0 values from 3200 to 3203 with a distance of 3 flanking 0 values from 3328 to 3331 with a distance of 3 flanking 0 values from 3456 to 3459 with a distance of 3 flanking 0 values from 3584 to 3587 with a distance of 3 flanking 0 values from 3712 to 3715 with a distance of 3 flanking 0 values from 3840 to 3843 with a distance of 3 flanking 0 values from 3968 to 3971 with a distance of 3 flanking 0 values from 131 to 142 with a distance of 11 flanking 0 values from 387 to 398 with a distance of 11 flanking 0 values from 643 to 654 with a distance of 11 flanking 0 values from 899 to 910 with a distance of 11 flanking 0 values from 1155 to 1166 with a distance of 11 flanking 0 values from 1411 to 1422 with a distance of 11 flanking 0 values from 1667 to 1678 with a distance of 11 flanking 0 values from 1923 to 1934 with a distance of 11 flanking 0 values from 2179 to 2190 with a distance of 11 flanking 0 values from 2435 to 2446 with a distance of 11 flanking 0 values from 2691 to 2702 with a distance of 11 flanking 0 values from 2947 to 2958 with a distance of 11 flanking 0 values from 3203 to 3214 with a distance of 11 flanking 0 values from 3459 to 3470 with a distance of 11 flanking 0 values from 3715 to 3726 with a distance of 11 flanking 0 values from 3971 to 3982 with a distance of 11 flanking 0 values from 128 to 142 with a distance of 14 flanking 0 values from 384 to 398 with a distance of 14 flanking 0 values from 640 to 654 with a distance of 14 flanking 0 values from 896 to 910 with a distance of 14 flanking 0 values from 1152 to 1166 with a distance of 14 flanking 0 values from 1408 to 1422 with a distance of 14 flanking 0 values from 1664 to 1678 with a distance of 14 flanking 0 values from 1920 to 1934 with a distance of 14 flanking 0 values from 2176 to 2190 with a distance of 14 flanking 0 values from 2432 to 2446 with a distance of 14 flanking 0 values from 2688 to 2702 with a distance of 14 flanking 0 values from 2944 to 2958 with a distance of 14 flanking 0 values from 3200 to 3214 with a distance of 14 flanking 0 values from 3456 to 3470 with a distance of 14 flanking 0 values from 3712 to 3726 with a distance of 14 flanking 0 values from 3968 to 3982 with a distance of 14 ```

I basically don't see any groups of 8, I looked from values between 2 and 25 zeros apart.

The groups that say distance of 11 technically have 9 values, excluding the zeros. I tried testing these, so for every starting value the FALLBACK_ADDR would be that + 1

For example, the first in the list of distance 11:

sudo FALLBACK_ADDR=132 FALLBACK_TEMPS='10 11 12 13 14 15 16 17' asus-fan-control set-temps 10 11 12 13 14 15 16 17
sudo asus-fan-control

to see if anything turns on, I did this for every value that was output from the distance-of-11 groups and haven't seen anything work yet.

I want to run more of these tests on other values but I wanted to check in first to ask if this testing makes sense to you. I'm operating on a few unknown premises, for example I put the temperature values low hoping things would turn on automatically.

All of this should work if I keep testing this way, right?

dominiksalvet commented 4 years ago

Hello @Esfo! :wave:

First I want to mention that you simply could have used sudo FALLBACK_ADDR=<addr> FALLBACK_TEMPS='<temps>' asus-fan-control set-temps default instead of your two commands as mentioned in contributing.md file. Your two commands do something a bit different in fact. 😃

Next up, your testing makes sense to me. However, it is far from being safe! :bomb: Before running asus-fan-control over an address chunk obtained from your script, first you need to check values you are going to overwrite to make sure that they look like currently applied temperatures to prevent overwriting something else (or at least reduce the chance of doing so), which is the part where it may be dangerous. So double-check values before overwriting them.

Your assumption about the low temperatures is correct. :ok_hand: But wait a sec before trying next temperatures - on my device, it may take up to 5 seconds to apply a new configuration.

Esfo commented 4 years ago

Ahh! Thanks for explaining all of this.

I don't see any obvious output from afc-scout that looks like they are temperatures that would specifically apply to something, like the way they look your example in the contributing file.

The output looks like this, with anything before the equal sign being on the x-axis, and anything after being on the y-axis.

plot

If I were to try to force an inferral, with my absolute zero knowledge of what this is, does each line here represent a device and it's given temperature range then? Perhaps each value, when changed, would get passed to a listener of some sort? Would this then mean that I have to figure out which line here corresponds to the fan-control input?

Do you know what to make of this?

dominiksalvet commented 4 years ago

@Esfo Well, your graph looks very suspicious. :suspect: I have made a similar graph based on afc-scout output on my device and it looks completely different. Red dots are actual temperatures and their addresses ranges from 1335 to 1342.

graph

I guess that there is a problem with either your hardware or software. If it is a hardware issue, the EC0 controller used when calling ACPI may not be present on your device but for some reason it did not end up with an AE_NOT_FOUND error. If it is a software issue, the EC0 controller may be disabled by kernel for some reason if I had to guess.

Unfortunately, I cannot help you in any of the mentioned cases. :disappointed: It seems that your device is from the asus-fan-control incompatible box. I am really sorry. :cry: For your device's safety, I would not continue with the testing. :safety_vest:


I am closing this and an associated asus-fan-control issue as resolved - incompatible as per the current state. Feel free to continue in the discussion if you want.

I know that it will not help you but I want to thank you your time spent on trying to make asus-fan-control and afc-scout better software! :heart: :heart: I mean it! :rocket:

dominiksalvet commented 4 years ago

BTW, have you tried directly sudo FALLBACK_ADDR=1335 FALLBACK_TEMPS='10 11 12 13 14 15 16 17' asus-fan-control set-temps default? This is the default asus-fan-control address and you should have already tried it but one never knows... :thinking:

Esfo commented 4 years ago

No luck on that command.

After a reinstall the output and plot look the same.

I've gotten the fans be forced on using https://github.com/daringer/asus-fan

But there's no speed control, and the fan runs at max speed the whole time.

I noticed when had the fan on and ran your afc-scout at the same time that the fan turned off and on multiple times.

Do you think I could use afc-scout to identify where the stopping/starting is happening at?

dominiksalvet commented 4 years ago

I've gotten the fans be forced on using https://github.com/daringer/asus-fan

But there's no speed control, and the fan runs at max speed the whole time.

Yeah, that looks like a good asus-fan-control alternative! :+1: But did not know anything about speed control issues... :cyclone:

I noticed when had the fan on and ran your afc-scout at the same time that the fan turned off and on multiple times.

That's interesting since afc-scout only reads ACPI values (it still writes to an API, though). Something weird is probably happening here if you also consider your ACPI values graph.

Do you think I could use afc-scout to identify where the stopping/starting is happening at?

It would be great to know what is going on here. And to answer your question, I think it may be possible. At least the behavior suggests that.

Esfo commented 4 years ago

plot

The green line is at the value of 132. At this value(y-axis) the fan, when initially on, will cycle from on-off-on when read using afc-scout. If running afc-scout without x-direction limits, this tends to happen 6-8 times then stop due to laggy response until the last few cycles. When running on individual values, ie 'afc-scout 132 132', this always halts the fan (the x-value at 132 just happens to have a y-value of 132).

There is always one alternating point missing in the fan-on plot. If I were to recollect the data, the missing y=255 point would be at a different location. In this plot it's above ~3000.

For the fan being turned on plot, this was hacky. It's hard to run anything or access another terminal when I run afc-scout, so I quickly went to another terminal and tried turning the fan on right after I ran it. The plot makes sense because the fan spins up to max speed rapidly, but it's not amazing information.

For the fan being turned off plot, this is much better information. When I manually flip this switch, the RPM decreases at a very steady/controlled rate. Throughout the running of afc-scout, when the fan state was cycling from on-off-on, the fan would always be turned back on to the appropriate RPM, as if it was still in the steady decline. You can see the values approaching the 132-mark towards the end, this is coincidental as I've shut off the fan earlier and done this to see values go below 132. So the data collected in this plot is different than the other 3. This shows the output of afc-scout as the fan was changing. There's no way to get a perfect snapshot of all these values as the fan slows down because afc-scout is not instant. So you may be able to imply that at any given fanspeed, all of these values (that seem to be decreasing along the x-axis in the plot) are actually at the same value throughout the process of the fan slowing down. It's just that afc-scout reads the earlier x-values when the fan is at a higher RPM, and the later ones when the fan is at a lower RPM.

The values highlighted in red are values that change compared to the fan-off state. The values that are shown above the green line, when they get above the green line, seem to increase the fan speed when set to higher values. The values that stay below the green line and change values don't change drastically, +-5, I'm not sure what these indicate.

Perhaps something is being output just by reading the values?

X-values that go above 132 on the y-axis: 131, 387, 643, 899, 1155, 1411, 1667, 1923, 2179, 2435, 2691, 2947, 3203, 3459,3715, 3971 Interestingly for these, every one of these is right before a value that stays at 132 on the y-axis.

X-values that stay below 132 on the y-axis: 204, 460, 716, 972, 1228, 1484, 1740, 1996, 2252, 2508, 2764, 3020, 3276, 3532, 3788, 4044 All of these are right before a value that stays at 205 on the y-axis.

Additionally, the dots that aren't a part of the major slanted lines, that hang out on the bottom (which also seems to be where the changing values that go over 132 default to when the fan is off) are there in groups of 8. Maybe it's relevant to fan settings?

Would you be able to hack asus-fan-control's to change these non-adjacent values so I can test what happens if I modify them? Also, do you think this is a logical next-step?

edit: thanks for your patience @dominiksalvet the plot is up edit2: corrected some info

dominiksalvet commented 4 years ago

@Esfo Sorry but I cannot see the graph you are talking about. Please, take a look at it and fix it if possible. Once you do so, I will try to answer your questions as soon as possible.

dominiksalvet commented 4 years ago

Sorry but I am rather confused. :disappointed: Maybe I have got some of the ideas but I am definitely missing the whole picture of your post. :partly_sunny:

Would you be able to hack asus-fan-control's to change these non-adjacent values so I can test what happens if I modify them?

Asus-fan-control is built on an assumption that the fan control address ranges are continuous. And this is like a borderline for me for now. So the answer is no. :no_entry_sign: Nevertheless, read below. Maybe we can get something out of all this. :bulb:

Also, do you think this is a logical next-step?

Yes, if you have some results, it certainly looks like a good next step. :ok_hand: But you do not need to have asus-fan-control modified directly. In your case, it would be better to work with ACPI calls themselves. It is quite easy, do not worry. :relaxed:


You can start with the following script. It uses the current implementation of write and read ACPI functions borrowed directly from the current asus-fan-control script.

#!/bin/sh

# ACPI related constants
readonly ACPI_WRITE_COMMAND='\_SB.PCI0.LPCB.EC0.WRAM' # write to ACPI
readonly ACPI_READ_COMMAND='\_SB.PCI0.LPCB.EC0.RRAM' # read from ACPI
readonly ACPI_CALL_PATH=/proc/acpi/call # ACPI interface file location

# DESCRIPTION:
#   Checks whether it is possible to perform an ACPI call.
check_acpi() (
    if ! [ -f "$ACPI_CALL_PATH" ]; then # check if ACPI interface file exists
        echo "file $ACPI_CALL_PATH does not exist" >&2; return 1
    fi

    id_out="$(id -u)" && # check if running as root
    if [ "$id_out" -ne 0 ]; then
        echo 'root permissions needed' >&2; return 1
    fi
)

# DESCRIPTION:
#   Writes a given temperature value to a given ACPI address.
# PARAMETERS:
#   $1 - address
#   $2 - temperature
write_acpi_temp() (
    # ACPI write call (invalid arguments may cause the current shell to exit)
    echo "$ACPI_WRITE_COMMAND ${1:?} ${2:?}" > "$ACPI_CALL_PATH"
)

# DESCRIPTION:
#   Prints a temperature value of a given ACPI address in a decimal form.
# PARAMETERS:
#   $1 - address
read_acpi_temp() (
    echo "$ACPI_READ_COMMAND ${1:?}" > "$ACPI_CALL_PATH" && # ACPI read call
    temp="$(cut -c 1-4 "$ACPI_CALL_PATH")" && # parse temperature of the output
    temp="$((temp))" && # convert from hexadecimal to decimal
    echo "$temp" # print the final temperature value
)

check_acpi || exit # check whether ACPI is available and accessible

echo ready # you can replace this echo with your wonderful code

Once you make this script work on your device, you can add your own code using the provided functions and test whatever you want. Sky is the limit I guess. :rocket:

Is that powerful enough for your needs?

Esfo commented 4 years ago

So I ended up taking a different route. I managed to get the BIOS to control the fan again, and I probably won't need to test this further at the moment.

I do, in the future, want to be able to adjust the aggressiveness of the fans on this laptop. So I'll definitely try to take this up at some point.

Having gotten the fan to work now though, I have some other priority projects that I need to catch up on. I will likely revisit this when I have more time.

You've been a huge help, thanks for all your input.

dominiksalvet commented 4 years ago

Ok, glad to be of help! :heart: I will leave your issues open until you come back. Or do you want to close them? :thinking:

Esfo commented 4 years ago

If it makes you feel better you can close it :wink:

dominiksalvet commented 4 years ago

I have no problems leaving it open. :open_file_folder: I just want that the issue state reflects your personal feeling about it. And since you may return, it is not closed until you explicitly say so.

Nevertheless, at this point I am able to state that in case your model has temperature values situated on non-continuous addresses, then I am not going to add support for your device to asus-fan-control. :disappointed: I am sorry but asus-fan-control is simple and built on the assumption of continuous addresses. It means that adding support for your device (if working) would make the common case (continuous addresses) more complicated. I do not want that. :no_entry:

But why I am keeping this issue open then? Because your investigation may be useful for others and maybe you will fork asus-fan-control and modify it so that it works with your device. Or you can create a fan control program just for your laptop model (like asus-fan-control at the beginning) based on the script above. Or maybe you will come to the conclusion that your laptop's fan cannot be controlled using those ACPI calls. Maybe you will find another fan control program that will work for you. There are a lot of options. Any results would be beneficient for the asus-fan-control community! :rocket:

So certainly let us know what is happening! :smile: :tada:

dominiksalvet commented 3 years ago

Okay, closing this issue as it gets quite old... Should you have something to add/improve, let me know! :smile: