1// kosei.js â åæ§å¿çå¸Â® ã«ã«ãç®åºã¨ã³ã¸ã³ï¼Vanilla JS / ä¾åã¼ã / ãªãã©ã¤ã³åä½ï¼ 2// æ£æ¬ï¼scripts/kosei_full.pyï¼å¼¦æ¬ãã¬ã㸠24_karte_algorithm_solved / 25_kibo_and_ability_solvedï¼ 3// 2026-08-01 åæ§å¿çå¸Â®cloud å®ç»é²22åã§å ¨ä»¶çªå: æ¬è³ª/表é¢/æå¿/ãªãºã /ã¬ã¼ã«/EPå¼=22/22 ä¸è´ã 4// å¸æã¯æé帯ç»é²æ¸3åï¼å¼¦æ¬å çã§4/4ä¸è´ï¼ï¼å¸æï¼ææ±ã§æ£ããï¼ã 5// ð hour>=23 ã¯æ¥æ±ãç¿æ¥ã¸ç¹°ãä¸ããï¼æ¬è³ªãã£ã©ãå¤ããï¼ã2026-08-01ã«ä¿®æ£ã 6// æ¤è¨¼: qa/gate_kosei_engine.pyï¼qa/golden_kosei_22.jsonï¼ 7// â éè¦: å¤å®ã¯æ±ºå®è«ãçæAI(Gemini)ã«è¨ç®ãããªããã¨ãAIã¯å ãæã ãã 8(function(global){ 9"use strict"; 10 11// ===== åãè¾¼ã¿ãã¼ã¿ï¼Pythonæ£æ¬ã¨åä¸ï¼ ===== 12const CHARACTERS = {"1": ["é·è·é¢ã©ã³ãã¼ã®ãã¼ã¿", "大樹"], "2": ["社交家ã®ãã¬ã", "èè±"], "3": ["è½ã¡çãã®ãªãç¿", "太é½"], "4": ["ãããã¯ã¼ã¯ã®è»½ãåå®ç", "ç¯ç«"], "5": ["é¢åè¦ã®ããé»ã²ãã", "山岳"], "6": ["ææ ããµããè", "大å°"], "7": ["å ¨åç¾èµ°ãããã¼ã¿", "é±è"], "8": ["磨ãä¸ãããããã¬ã", "å®ç³"], "9": ["大ããªå¿ãæã£ãç¿", "æµ·æ´"], "10": ["æ¯æ§è±ããªåå®ç", "é¨é²"], "11": ["æ£ç´ãªããã", "大樹"], "12": ["人æ°è ã®ã¾ã¦", "èè±"], "13": ["ãã¢ã«ã®ç¼", "太é½"], "14": ["å調æ§ã®ãªãã²ã¤ã", "ç¯ç«"], "15": ["ã©ã£ããã¨ããç¿", "山岳"], "16": ["ã³ã¢ã©ã®ãªãã®åå®ç", "大å°"], "17": ["å¼·ãæå¿ãæã£ãããã", "é±è"], "18": ["ããªã±ã¼ããªã¾ã¦", "å®ç³"], "19": ["æ¾æµªã®ç¼", "æµ·æ´"], "20": ["ç©éããªã²ã¤ã", "é¨é²"], "21": ["è½ã¡çãã®ãããã¬ãµã¹", "大樹"], "22": ["å¼·éãªç¿¼ããã¤ãã¬ãµã¹", "èè±"], "23": ["ç¡éªæ°ãªã²ã¤ã", "太é½"], "24": ["ã¯ãªã¨ã¤ãã£ããªç¼", "ç¯ç«"], "25": ["ç©ãããªç¼", "山岳"], "26": ["ç²ãå¼·ãã²ã¤ã", "大å°"], "27": ["æ³¢ä¹±ã«æºã¡ããã¬ãµã¹", "é±è"], "28": ["åªé ãªãã¬ãµã¹", "å®ç³"], "29": ["ãã£ã¬ã³ã¸ç²¾ç¥ã®æºçãªã²ã¤ã", "æµ·æ´"], "30": ["é å¿æ§ã®ããç¼", "é¨é²"], "31": ["ãªã¼ãã¼ã¨ãªãã¾ã¦", "大樹"], "32": ["ãã£ããè ã®ããã", "èè±"], "33": ["æ´»åçãªåå®ç", "太é½"], "34": ["æ°åå±ã®ç¿", "ç¯ç«"], "35": ["é ¼ãããã¨å¬ããã²ã¤ã", "山岳"], "36": ["好æã®ããããç¼", "大å°"], "37": ["ã¾ã£ãããã«çªãé²ãã¾ã¦", "é±è"], "38": ["è¯ãããªããã", "å®ç³"], "39": ["夢ã¨ããã³ã®åå®ç", "æµ·æ´"], "40": ["å°½ããç¿", "é¨é²"], "41": ["大卿©æã®ãã¬ã", "大樹"], "42": ["è¶³è °ã®å¼·ããã¼ã¿", "èè±"], "43": ["åãã¾ããè", "太é½"], "44": ["æ ç±çãªé»ã²ãã", "ç¯ç«"], "45": ["ãµã¼ãã¹ç²¾ç¥æºçãªåå®ç", "山岳"], "46": ["å®ãã®ç¿", "大å°"], "47": ["人éå³ããµãããã¬ã", "é±è"], "48": ["åæ ¼ã®ãããã¼ã¿", "å®ç³"], "49": ["ãã£ããã¨ããæ ç¶ã®è", "æµ·æ´"], "50": ["è½ã¡è¾¼ã¿ã®æ¿ããé»ã²ãã", "é¨é²"], "51": ["æãéãè¡ãã©ã¤ãªã³", "大樹"], "52": ["çµ±çåã®ããã©ã¤ãªã³", "èè±"], "53": ["ææ è±ããªé»ã²ãã", "太é½"], "54": ["楽天çãªè", "ç¯ç«"], "55": ["ãã¯ãã«ãªè", "山岳"], "56": ["æ°ã©ããªãé»ã²ãã", "大å°"], "57": ["ææ çãªã©ã¤ãªã³", "é±è"], "58": ["å·ã¤ããããã©ã¤ãªã³", "å®ç³"], "59": ["æç¸ãå«ãé»ã²ãã", "æµ·æ´"], "60": ["æ æ²æ·±ãè", "é¨é²"]}; 13const JAN_CODES = {"1926": 26, "1927": 31, "1928": 36, "1929": 42, "1930": 47, "1931": 52, "1932": 57, "1933": 3, "1934": 8, "1935": 13, "1936": 18, "1937": 24, "1938": 29, "1939": 34, "1940": 39, "1941": 45, "1942": 50, "1943": 55, "1944": 0, "1945": 6, "1946": 11, "1947": 16, "1948": 21, "1949": 27, "1950": 32, "1951": 37, "1952": 42, "1953": 48, "1954": 53, "1955": 58, "1956": 3, "1957": 9, "1958": 14, "1959": 19, "1960": 24, "1961": 30, "1962": 35, "1963": 40, "1964": 45, "1965": 51, "1966": 56, "1967": 1, "1968": 6, "1969": 12, "1970": 17, "1971": 22, "1972": 27, "1973": 33, "1974": 38, "1975": 43, "1976": 48, "1977": 54, "1978": 59, "1979": 4, "198
130": 9, "1981": 15, "1982": 20, "1983": 25, "1984": 30, "1985": 36, "1986": 41, "1987": 46, "1988": 51, "1989": 57, "1990": 2, "1991": 7, "1992": 12, "1993": 18, "1994": 23, "1995": 28, "1996": 33, "1997": 39, "1998": 44, "1999": 49, "2000": 54, "2001": 0, "2002": 5, "2003": 10, "2004": 15, "2005": 21, "2006": 26, "2007": 31, "2008": 36, "2009": 42, "2010": 47, "2011": 52, "2012": 57, "2013": 3, "2014": 8, "2015": 13, "2016": 18, "2017": 24, "2018": 29, "2019": 34, "2020": 39, "2021": 45, "2022": 50, "2023": 55, "2024": 0, "2025": 6, "2026": 11, "2027": 16, "2028": 21, "2029": 27, "2030": 32, "2031": 37, "2032": 42, "2033": 48, "2034": 53, "2035": 58, "2036": 3, "2037": 9, "2038": 14, "2039": 19, "2040": 24, "2041": 30, "2042": 35, "2043": 40, "2044": 45, "2045": 51, "2046": 56, "2047": 1, "2048": 6, "2049": 12, "2050": 17}; 14const MONTH_OFFSET_NORMAL = [0,31,59,30,0,31,1,32,3,33,4,34]; 15const MONTH_OFFSET_LEAP = [0,31,0,31,1,32,2,33,4,34,5,35]; 16const DAY_STEM_A = 7; 17const DAY_BRANCH_A = 5; 18const MONTH_EVENTS = [[-25567, 0], [-25562, 1], [-25533, 2], [-25503, 3], [-25473, 4], [-25442, 5], [-25411, 6], [-25380, 7], [-25348, 8], [-25317, 9], [-25286, 10], [-25256, 11], [-25227, 0], [-25197, 1], [-25168, 2], [-25138, 3], [-25108, 4], [-25077, 5], [-25046, 6], [-25014, 7], [-24983, 8], [-24952, 9], [-24921, 10], [-24891, 11], [-24861, 0], [-24832, 1], [-24802, 2], [-24773, 3], [-24742, 4], [-24712, 5], [-24680, 6], [-24649, 7], [-24618, 8], [-24587, 9], [-24556, 10], [-24526, 11], [-24496, 0], [-24467, 1], [-24437, 2], [-24407, 3], [-24377, 4], [-24346, 5], [-24315, 6], [-24284, 7], [-24252, 8], [-24221, 9], [-24191, 10], [-24161, 11], [-24131, 0], [-24101, 1], [-24072, 2], [-24042, 3], [-24012, 4], [-23981, 5], [-23950, 6], [-23919, 7], [-23887, 8], [-23856, 9], [-23825, 10], [-23795, 11], [-23766, 0], [-23736, 1], [-23707, 2], [-23677, 3], [-23647, 4], [-23616, 5], [-23585, 6], [-23553, 7], [-23522, 8], [-23491, 9], [-23460, 10], [-23430, 11], [-23400, 0], [-23371, 1], [-23341, 2], [-23312, 3], [-23281, 4], [-23251, 5], [-23220, 6], [-23188, 7], [-23157, 8], [-23126, 9], [-23095, 10], [-23065, 11], [-23035, 0], [-23006, 1], [-22976, 2], [-22946, 3], [-22916, 4], [-22885, 5], [-22854, 6], [-22823, 7], [-22791, 8], [-22760, 9], [-22730, 10], [-22700, 11], [-22670, 0], [-22640, 1], [-22611, 2], [-22581, 3], [-22551, 4], [-22520, 5], [-22489, 6], [-22458, 7], [-22426, 8], [-22395, 9], [-22364, 10], [-22334, 11], [-22305, 0], [-22275, 1], [-22246, 2], [-22216, 3], [-22186, 4], [-22155, 5], [-22124, 6], [-22092, 7], [-22061, 8], [-22030, 9], [-21999, 10], [-21969, 11], [-21939, 0], [-21910, 1], [-21880, 2], [-21851, 3], [-21820, 4], [-21790, 5], [-21759, 6], [-21727, 7], [-21696, 8], [-21665, 9], [-21634, 10], [-21604, 11], [-21574, 0], [-21545, 1], [-21515, 2], [-21485, 3], [-21455, 4], [-21424, 5], [-21393, 6], [-21362, 7], [-21330, 8], [-21299, 9], [-21269, 10], [-21239, 11], [-21209, 0], [-21179, 1], [-21150, 2], [-21120, 3], [-21090, 4], [-21059, 5], [-21028, 6], [-20997, 7], [-20965, 8], [-20934, 9], [-20903, 10], [-20873, 11], [-20844, 0], [-20814, 1], [-20785, 2], [-20755, 3], [-20725, 4], [-20694, 5], [-20663, 6], [-20631, 7], [-20600, 8], [-20569, 9], [-20538, 10], [-20508, 11], [-20478, 0], [-20449, 1], [-20420, 2], [-20390, 3], [-20360, 4], [-20329, 5], [-20298, 6], [-20266, 7], [-20235, 8], [-20204, 9], [-20173, 10], [-20143, 11], [-20113, 0], [-20084, 1], [-20054, 2], [-20025, 3], [-19994, 4], [-19964, 5], [-19932, 6], [-19901, 7], [-19870, 8], [-19838, 9], [-19808, 10], [-19778, 11], [-19748, 0], [-19719, 1], [-19689, 2], [-19659, 3], [-19629, 4], [-19598, 5], [-19567, 6], [-19536, 7], [-19504, 8], [-19473, 9], [-19443, 10], [-19412, 11], [-19383, 0], [-19353, 1], [-19324, 2], [-19294, 3], [-19264, 4], [-19233, 5], [-19202, 6], [-19170, 7], [-19139, 8], [-19108, 9], [-19077, 10], [-19047, 11], [-19018, 0], [-18988, 1], [-18959, 2], [-18929, 3], [-18899, 4], [-18868, 5], [-18837, 6], [-18805, 7], [-18774, 8], [-18743, 9], [-18712, 10], [-18682, 11], [-18652, 0], [-18623, 1], [-18593, 2], [-18564, 3], [-18533, 4], [-18503, 5], [-18471, 6], [-18440, 7], [-18409, 8], [-18377, 9], [-18347, 10], [-18317, 11], [-18287, 0], [-18258, 1], [-18228, 2], [-18198, 3], [-18168, 4], [-18137, 5], [-18106, 6], [-18075, 7], [-18043, 8], [-18012, 9], [-17982, 10], [-17951, 11], [-17922, 0], [-17892, 1], [-17863, 2], [-17833, 3], [-17803, 4], [-17772, 5], [-17741, 6], [-17709, 7], [-17678, 8], [-17647, 9], [-17616, 10], [-17586, 11], [-17557, 0], [-17527, 1], [-17498, 2], [-17468, 3], [-17438, 4], [-17407, 5], [-17376, 6], [-17344, 7], [-17313, 8], [-17282, 9], [-17251, 10], [-17221, 11], [-17191, 0], [-17162, 1], [-17132, 2], [-17103, 3], [-17072, 4], [-17042, 5], [-17010, 6], [-16979, 7], [-16948, 8], [-16916, 9], [-16886, 10], [-16856, 11], [-16826, 0], [-16797, 1], [-16767, 2], [-16737, 3], [-16707, 4], [-16676, 5], [-16645, 6], [-16614, 7], [-16582, 8], [-16551, 9], [-16521, 10], [-16490, 11], [-16461, 0], [-16431, 1], [-16402, 2], [-16372, 3], [-16342, 4], [-16311, 5], [-16280, 6], [-16248, 7], [-16217, 8], [-16186, 9], [-16155, 10], [-16125, 11], [-16096, 0], [-16066, 1], [-16037, 2], [-16007, 3], [-15977, 4], [-15946, 5], [-15915, 6], [-15883, 7], [-15852, 8], [-15821, 9], [-15790, 10], [-15760, 11], [-15730, 0], [-15701, 1], [-15671, 2], [-15642, 3], [-15611, 4], [-15581, 5], [-15549, 6], [-15518, 7], [-15487, 8], [-15456, 9], [-15425, 10], [-15395, 11], [-15365, 0], [-15336, 1], [-15306, 2], [-15276, 3], [-15246, 4], [-15215, 5], [-15184, 6], [-15153, 7], [-15121, 8], [-15090, 9], [-15060, 10], [-15030, 11], [-15000, 0], [-14970, 1], [-14941, 2], [-14911, 3], [-14881, 4], [-14850, 5], [-14819, 6], [-14788, 7], [-14756, 8], [-14725, 9], [-14694, 10], [-14664, 11], [-14635, 0], [-14605, 1], [-14576, 2], [-14546, 3], [-14516, 4], [-14485, 5], [-14454, 6], [-14422, 7], [-14391, 8], [-14360, 9], [-14329, 10], [-14299, 11], [-14269, 0], [-14240, 1], [-14210, 2], [-14181, 3], [-14150, 4], [-1412
180, 5], [-14088, 6], [-14057, 7], [-14026, 8], [-13995, 9], [-13964, 10], [-13934, 11], [-13904, 0], [-13875, 1], [-13845, 2], [-13815, 3], [-13785, 4], [-13754, 5], [-13723, 6], [-13692, 7], [-13660, 8], [-13629, 9], [-13599, 10], [-13569, 11], [-13539, 0], [-13509, 1], [-13480, 2], [-13450, 3], [-13420, 4], [-13389, 5], [-13358, 6], [-13327, 7], [-13295, 8], [-13264, 9], [-13233, 10], [-13203, 11], [-13174, 0], [-13144, 1], [-13115, 2], [-13085, 3], [-13055, 4], [-13024, 5], [-12993, 6], [-12961, 7], [-12930, 8], [-12899, 9], [-12868, 10], [-12838, 11], [-12808, 0], [-12779, 1], [-12749, 2], [-12720, 3], [-12689, 4], [-12659, 5], [-12628, 6], [-12596, 7], [-12565, 8], [-12534, 9], [-12503, 10], [-12473, 11], [-12443, 0], [-12414, 1], [-12384, 2], [-12354, 3], [-12324, 4], [-12293, 5], [-12262, 6], [-12231, 7], [-12199, 8], [-12168, 9], [-12138, 10], [-12108, 11], [-12078, 0], [-12048, 1], [-12019, 2], [-11989, 3], [-11959, 4], [-11928, 5], [-11897, 6], [-11866, 7], [-11834, 8], [-11803, 9], [-11772, 10], [-11742, 11], [-11713, 0], [-11683, 1], [-11654, 2], [-11624, 3], [-11594, 4], [-11563, 5], [-11532, 6], [-11500, 7], [-11469, 8], [-11438, 9], [-11407, 10], [-11377, 11], [-11347, 0], [-11318, 1], [-11288, 2], [-11259, 3], [-11228, 4], [-11198, 5], [-11167, 6], [-11135, 7], [-11104, 8], [-11073, 9], [-11042, 10], [-11012, 11], [-10982, 0], [-10953, 1], [-10923, 2], [-10893, 3], [-10863, 4], [-10832, 5], [-10801, 6], [-10770, 7], [-10738, 8], [-10707, 9], [-10677, 10], [-10647, 11], [-10617, 0], [-10587, 1], [-10558, 2], [-10528, 3], [-10498, 4], [-10467, 5], [-10436, 6], [-10405, 7], [-10373, 8], [-10342, 9], [-10311, 10], [-10281, 11], [-10252, 0], [-10222, 1], [-10193, 2], [-10163, 3], [-10133, 4], [-10102, 5], [-10071, 6], [-10039, 7], [-10008, 8], [-9977, 9], [-9946, 10], [-9916, 11], [-9886, 0], [-9857, 1], [-9827, 2], [-9798, 3], [-9767, 4], [-9737, 5], [-9706, 6], [-9674, 7], [-9643, 8], [-9612, 9], [-9581, 10], [-9551, 11], [-9521, 0], [-9492, 1], [-9462, 2], [-9432, 3], [-9402, 4], [-9372, 5], [-9340, 6], [-9309, 7], [-9277, 8], [-9246, 9], [-9216, 10], [-9186, 11], [-9156, 0], [-9126, 1], [-9097, 2], [-9067, 3], [-9037, 4], [-9006, 5], [-8975, 6], [-8944, 7], [-8912, 8], [-8881, 9], [-8851, 10], [-8820, 11], [-8791, 0], [-8761, 1], [-8732, 2], [-8702, 3], [-8672, 4], [-8641, 5], [-8610, 6], [-8578, 7], [-8547, 8], [-8516, 9], [-8485, 10], [-8455, 11], [-8425, 0], [-8396, 1], [-8367, 2], [-8337, 3], [-8307, 4], [-8276, 5], [-8245, 6], [-8213, 7], [-8182, 8], [-8151, 9], [-8120, 10], [-8090, 11], [-8060, 0], [-8031, 1], [-8001, 2], [-7972, 3], [-7941, 4], [-7911, 5], [-7879, 6], [-7848, 7], [-7817, 8], [-7785, 9], [-7755, 10], [-7725, 11], [-7695, 0], [-7666, 1], [-7636, 2], [-7606, 3], [-7576, 4], [-7545, 5], [-7514, 6], [-7483, 7], [-7451, 8], [-7420, 9], [-7390, 10], [-7359, 11], [-7330, 0], [-7300, 1], [-7271, 2], [-7241, 3], [-7211, 4], [-7180, 5], [-7149, 6], [-7117, 7], [-7086, 8], [-7055, 9], [-7024, 10], [-6994, 11], [-6964, 0], [-6935, 1], [-6906, 2], [-6876, 3], [-6846, 4], [-6815, 5], [-6784, 6], [-6752, 7], [-6721, 8], [-6690, 9], [-6659, 10], [-6629, 11], [-6599, 0], [-6570, 1], [-6540, 2], [-6511, 3], [-6480, 4], [-6450, 5], [-6418, 6], [-6387, 7], [-6356, 8], [-6324, 9], [-6294, 10], [-6264, 11], [-6234, 0], [-6205, 1], [-6175, 2], [-6145, 3], [-6115, 4], [-6084, 5], [-6053, 6], [-6022, 7], [-5990, 8], [-5959, 9], [-5929, 10], [-5898, 11], [-5869, 0], [-5839, 1], [-5810, 2], [-5780, 3], [-5750, 4], [-5719, 5], [-5688, 6], [-5656, 7], [-5625, 8], [-5594, 9], [-5563, 10], [-5533, 11], [-5504, 0], [-5474, 1], [-5445, 2], [-5415, 3], [-5385, 4], [-5354, 5], [-5323, 6], [-5291, 7], [-5260, 8], [-5229, 9], [-5198, 10], [-5168, 11], [-5138, 0], [-5109, 1], [-5079, 2], [-5050, 3], [-5019, 4], [-4989, 5], [-4957, 6], [-4926, 7], [-4895, 8], [-4863, 9], [-4833, 10], [-4803, 11], [-4773, 0], [-4744, 1], [-4714, 2], [-4684, 3], [-4654, 4], [-4623, 5], [-4592, 6], [-4561, 7], [-4529, 8], [-4498, 9], [-4468, 10], [-4437, 11], [-4408, 0], [-4378, 1], [-4349, 2], [-4319, 3], [-4289, 4], [-4258, 5], [-4227, 6], [-4196, 7], [-4164, 8], [-4133, 9], [-4102, 10], [-4072, 11], [-4043, 0], [-4013,
181], [-3984, 2], [-3954, 3], [-3924, 4], [-3893, 5], [-3862, 6], [-3830, 7], [-3799, 8], [-3768, 9], [-3737, 10], [-3707, 11], [-3677, 0], [-3648, 1], [-3618, 2], [-3589, 3], [-3558, 4], [-3528, 5], [-3496, 6], [-3465, 7], [-3434, 8], [-3403, 9], [-3372, 10], [-3342, 11], [-3312, 0], [-3283, 1], [-3253, 2], [-3223, 3], [-3193, 4], [-3162, 5], [-3131, 6], [-3100, 7], [-3068, 8], [-3037, 9], [-3007, 10], [-2977, 11], [-2947, 0], [-2917, 1], [-2888, 2], [-2858, 3], [-2828, 4], [-2797, 5], [-2766, 6], [-2735, 7], [-2703, 8], [-2672, 9], [-2641, 10], [-2611, 11], [-2582, 0], [-2552, 1], [-2523, 2], [-2493, 3], [-2463, 4], [-2432, 5], [-2401, 6], [-2369, 7], [-2338, 8], [-2307, 9], [-2276, 10], [-2246, 11], [-2216, 0], [-2187, 1], [-2157, 2], [-2128, 3], [-2097, 4], [-2067, 5], [-2035, 6], [-2004, 7], [-1973, 8], [-1942, 9], [-1911, 10], [-1881, 11], [-1851, 0], [-1822, 1], [-1792, 2], [-1762, 3], [-1732, 4], [-1701, 5], [-1670, 6], [-1639, 7], [-1607, 8], [-1576, 9], [-1546, 10], [-1516, 11], [-1486, 0], [-1456, 1], [-1427, 2], [-1397, 3], [-1367, 4], [-1336, 5], [-1305, 6], [-1274, 7], [-1242, 8], [-1211, 9], [-1180, 10], [-1150, 11], [-1121, 0], [-1091, 1], [-1062, 2], [-1032, 3], [-1002, 4], [-971, 5], [-940, 6], [-908, 7], [-877, 8], [-846, 9], [-815, 10], [-785, 11], [-755, 0], [-726, 1], [-696, 2], [-667, 3], [-636, 4], [-606, 5], [-575, 6], [-543, 7], [-512, 8], [-481, 9], [-450, 10], [-420, 11], [-390, 0], [-361, 1], [-331, 2], [-301, 3], [-271, 4], [-240, 5], [-209, 6], [-178, 7], [-146, 8], [-115, 9], [-85, 10], [-55, 11], [-25, 0], [5, 1], [34, 2], [64, 3], [94, 4], [125, 5], [156, 6], [187, 7], [219, 8], [250, 9], [281, 10], [311, 11], [340, 0], [370, 1], [399, 2], [429, 3], [459, 4], [490, 5], [521, 6], [553, 7], [584, 8], [615, 9], [646, 10], [676, 11], [706, 0], [735, 1], [765, 2], [794, 3], [825, 4], [855, 5], [886, 6], [918, 7], [949, 8], [980, 9], [1011, 10], [1041, 11], [1071, 0], [1100, 1], [1130, 2], [1160, 3], [1190, 4], [1220, 5], [1252, 6], [1283, 7], [1315, 8], [1346, 9], [1376, 10], [1406, 11], [1436, 0], [1466, 1], [1495, 2], [1525, 3], [1555, 4], [1586, 5], [1617, 6], [1648, 7], [1680, 8], [1711, 9], [1742, 10], [1772, 11], [1801, 0], [1831, 1], [1860, 2], [1890, 3], [1920, 4], [1951, 5], [1982, 6], [2014, 7], [2045, 8], [2076, 9], [2107, 10], [2137, 11], [2167, 0], [2196, 1], [2226, 2], [2255, 3], [2285, 4], [2316, 5], [2347, 6], [2379, 7], [2410, 8], [2441, 9], [2472, 10], [2502, 11], [2532, 0], [2561, 1], [2591, 2], [2621, 3], [2651, 4], [2681, 5], [2713, 6], [2744, 7], [2775, 8], [2807, 9], [2837, 10], [2867, 11], [2897, 0], [2927, 1], [2956, 2], [2986, 3], [3016, 4], [3047, 5], [3078, 6], [3109, 7], [3141, 8], [3172, 9], [3202, 10], [3233, 11], [3262, 0], [3292, 1], [3321, 2], [3351, 3], [3381, 4], [3412, 5], [3443, 6], [3475, 7], [3506, 8], [3537, 9], [3568, 10], [3598, 11], [3628, 0], [3657, 1], [3687, 2], [3716, 3], [3746, 4], [3777, 5], [3808, 6], [3840, 7], [3871, 8], [3902, 9], [3933, 10], [3963, 11], [3993, 0], [4022, 1], [4052, 2], [4082, 3], [4112, 4], [4142, 5], [4174, 6], [4205, 7], [4236, 8], [4268, 9], [4298, 10], [4328, 11], [4358, 0], [4388, 1], [4417, 2], [4447, 3], [4477, 4], [4508, 5], [4539, 6], [4570, 7], [4602, 8], [4633, 9], [4663, 10], [4694, 11], [4723, 0], [4753, 1], [4782, 2], [4812, 3], [4842, 4], [4873, 5], [4904, 6], [4936, 7], [4967, 8], [4998, 9], [5029, 10], [5059, 11], [5089, 0], [5118, 1], [5147, 2], [5177, 3], [5207, 4], [5238, 5], [5269, 6], [5301, 7], [5332, 8], [5363, 9], [5394, 10], [5424, 11], [5454, 0], [5483, 1], [5513, 2], [5542, 3], [5573, 4], [5603, 5], [5635, 6], [5666, 7], [5697, 8], [5729, 9], [5759, 10], [5789, 11], [5819, 0], [5848, 1], [5878, 2], [5908, 3], [5938, 4], [5969, 5], [6000, 6], [6031, 7], [6063, 8], [6094, 9], [6124, 10], [6155, 11], [6184, 0], [6214, 1], [6243, 2], [6273, 3], [6303, 4], [6334, 5], [6365, 6], [6396, 7], [6428, 8], [6459, 9], [6490, 10], [6520, 11], [6549, 0], [6579, 1], [6608, 2], [6638, 3], [6668, 4], [6699, 5], [6730, 6], [6762, 7], [6793, 8], [6824, 9], [6855, 10], [6885, 11], [6915, 0], [6944, 1], [6974, 2], [7003, 3], [7034, 4], [7064, 5], [7096, 6], [7127, 7], [7158, 8], [7189, 9], [7220, 10], [7250, 11], [7280, 0], [7309, 1], [7339, 2], [7369, 3], [7399, 4], [7430, 5], [7461, 6], [7492, 7], [7524, 8], [7555, 9], [7585, 10], [7616, 11], [7645, 0], [7675, 1], [7704, 2], [7734, 3], [7764, 4], [7795, 5], [7826, 6], [7857, 7], [7889, 8], [7920, 9], [7951, 10], [7981, 11], [8010, 0], [8040, 1], [8069, 2], [8099, 3], [8129, 4], [8160, 5], [8191, 6], [8223, 7], [8254, 8], [8285, 9], [8316, 10], [8346, 11], [8376, 0], [8405, 1], [8435, 2], [8464, 3], [8495, 4], [8525, 5], [8557, 6], [8588, 7], [8619, 8], [8650, 9], [8681, 10], [8711, 11], [8741, 0], [8770, 1], [8800, 2], [8830, 3], [8860, 4], [8891, 5], [8922, 6], [8953, 7], [8985, 8], [9016, 9], [9046, 10], [9076, 11], [9106, 0], [9136, 1], [9165, 2], [9195, 3], [9225, 4], [9256, 5], [9287, 6], [9318, 7], [9350, 8], [9381, 9], [9412, 10], [9442, 11], [9471, 0], [9501, 1], [9530, 2], [9560, 3], [9590, 4], [9621, 5], [9652,
186], [9684, 7], [9715, 8], [9746, 9], [9777, 10], [9807, 11], [9837, 0], [9866, 1], [9896, 2], [9925, 3], [9956, 4], [9986, 5], [10017, 6], [10049, 7], [10080, 8], [10111, 9], [10142, 10], [10172, 11], [10202, 0], [10231, 1], [10261, 2], [10291, 3], [10321, 4], [10352, 5], [10383, 6], [10414, 7], [10446, 8], [10477, 9], [10507, 10], [10537, 11], [10567, 0], [10597, 1], [10626, 2], [10656, 3], [10686, 4], [10717, 5], [10748, 6], [10779, 7], [10811, 8], [10842, 9], [10873, 10], [10903, 11], [10932, 0], [10962, 1], [10991, 2], [11021, 3], [11051, 4], [11082, 5], [11113, 6], [11145, 7], [11176, 8], [11207, 9], [11238, 10], [11268, 11], [11298, 0], [11327, 1], [11357, 2], [11386, 3], [11417, 4], [11447, 5], [11478, 6], [11510, 7], [11541, 8], [11572, 9], [11603, 10], [11633, 11], [11663, 0], [11692, 1], [11722, 2], [11752, 3], [11782, 4], [11813, 5], [11844, 6], [11875, 7], [11907, 8], [11938, 9], [11968, 10], [11998, 11], [12028, 0], [12058, 1], [12087, 2], [12117, 3], [12147, 4], [12178, 5], [12209, 6], [12240, 7], [12272, 8], [12303, 9], [12334, 10], [12364, 11], [12393, 0], [12423, 1], [12452, 2], [12482, 3], [12512, 4], [12543, 5], [12574, 6], [12606, 7], [12637, 8], [12668, 9], [12699, 10], [12729, 11], [12759, 0], [12788, 1], [12818, 2], [12847, 3], [12878, 4], [12908, 5], [12939, 6], [12971, 7], [13002, 8], [13033, 9], [13064, 10], [13094, 11], [13124, 0], [13153, 1], [13183, 2], [13213, 3], [13243, 4], [13273, 5], [13305, 6], [13336, 7], [13367, 8], [13399, 9], [13429, 10], [13459, 11], [13489, 0], [13519, 1], [13548, 2], [13578, 3], [13608, 4], [13639, 5], [13670, 6], [13701, 7], [13733, 8], [13764, 9], [13795, 10], [13825, 11], [13854, 0], [13884, 1], [13913, 2], [13943, 3], [13973, 4], [14004, 5], [14035, 6], [14067, 7], [14098, 8], [14129, 9], [14160, 10], [14190, 11], [14220, 0], [14249, 1], [14279, 2], [14308, 3], [14338, 4], [14369, 5], [14400, 6], [14432, 7], [14463, 8], [14494, 9], [14525, 10], [14555, 11], [14585, 0], [14614, 1], [14644, 2], [14674, 3], [14704, 4], [14734, 5], [14766, 6], [14797, 7], [14828, 8], [14860, 9], [14890, 10], [14920, 11], [14950, 0], [14980, 1], [15009, 2], [15039, 3], [15069, 4], [15100, 5], [15131, 6], [15162, 7], [15194, 8], [15225, 9], [15255, 10], [15286, 11], [15315, 0], [15345, 1], [15374, 2], [15404, 3], [15434, 4], [15465, 5], [15496, 6], [15528, 7], [15559, 8], [15590, 9], [15621, 10], [15651, 11], [15681, 0], [15710, 1], [15740, 2], [15769, 3], [15799, 4], [15830, 5], [15861, 6], [15893, 7], [15924, 8], [15955, 9], [15986, 10], [16016, 11], [16046, 0], [16075, 1], [16105, 2], [16135, 3], [16165, 4], [16195, 5], [16227, 6], [16258, 7], [16289, 8], [16321, 9], [16351, 10], [16381, 11], [16411, 0], [16441, 1], [16470, 2], [16500, 3], [16530, 4], [16561, 5], [16592, 6], [16623, 7], [16655, 8], [16686, 9], [16716, 10], [16747, 11], [16776, 0], [16806, 1], [16835, 2], [16865, 3], [16895, 4], [16926, 5], [16957, 6], [16989, 7], [17020, 8], [17051, 9], [17082, 10], [17112, 11], [17142, 0], [17171, 1], [17200, 2], [17230, 3], [17260, 4], [17291, 5], [17322, 6], [17354, 7], [17385, 8], [17416, 9], [17447, 10], [17477, 11], [17507, 0], [17536, 1], [17566, 2], [17595, 3], [17626, 4], [17656, 5], [17688, 6], [17719, 7], [17750, 8], [17782, 9], [17812, 10], [17842, 11], [17872, 0], [17901, 1], [17931, 2], [17961, 3], [17991, 4], [18022, 5], [18053, 6], [18084, 7], [18116, 8], [18147, 9], [18177, 10], [18208, 11], [18237, 0], [18267, 1], [18296, 2], [18326, 3], [18356, 4], [18387, 5], [18418, 6], [18449, 7], [18481, 8], [18512, 9], [18543, 10], [18573, 11], [18603, 0], [18632, 1], [18661, 2], [18691, 3], [18721, 4], [18752, 5], [18783, 6], [18815, 7], [18846, 8], [18877, 9], [18908, 10], [18938, 11], [18968, 0], [18997, 1], [19027, 2], [19056, 3], [19087, 4], [19117, 5], [19149, 6], [19180, 7], [19211, 8], [19242, 9], [19273, 10], [19303, 11], [19333, 0], [19362, 1], [19392, 2], [19422, 3], [19452, 4], [19483, 5], [19514, 6], [19545, 7], [19577, 8], [19608, 9], [19638, 10], [19669, 11], [19698, 0], [19728, 1], [19757, 2], [19787, 3], [19817, 4], [19848, 5], [19879, 6], [19910, 7], [19942, 8], [19973, 9], [20004, 10], [20034, 11], [20063, 0], [20093, 1], [20122, 2], [20152, 3], [20182, 4], [20213, 5], [20244, 6], [20276, 7], [20307, 8], [20338, 9], [20369, 10], [20399, 11], [20429, 0], [20458, 1], [20488, 2], [20517, 3], [20548, 4], [20578, 5], [20609, 6], [20641, 7], [20672, 8], [20703, 9], [20734, 10], [20764, 11], [20794, 0], [20823, 1], [20853, 2], [20883, 3], [20913, 4], [20944, 5], [20975, 6], [21006, 7], [21038, 8], [21069, 9], [21099, 10], [21129, 11], [21159, 0], [21189, 1], [21218, 2], [21248, 3], [21278, 4], [21309, 5], [21340, 6], [21371, 7], [21403, 8], [21434, 9], [21465, 10], [21495, 11], [21524, 0], [21554, 1], [21583, 2], [21613, 3], [21643, 4], [21674, 5], [21705, 6], [21737, 7], [21768, 8], [21799, 9], [21830, 10], [21860, 11], [21890, 0], [21919, 1], [21949, 2], [21978, 3], [22009, 4], [22039, 5], [22070, 6], [22102, 7], [22133, 8], [22164, 9], [22195, 10], [22225, 11], [22255, 0], [22284, 1], [22314, 2], [22344, 3], [22374, 4], [22405, 5], [22436, 6], [22467, 7], [22499, 8], [22530, 9], [22560, 10], [22590, 11], [22620, 0], [22650, 1], [22679, 2], [22709, 3], [22739, 4], [22770, 5], [22801, 6], [22832, 7
18], [22864, 8], [22895, 9], [22926, 10], [22956, 11], [22985, 0], [23015, 1], [23044, 2], [23074, 3], [23104, 4], [23135, 5], [23166, 6], [23198, 7], [23229, 8], [23260, 9], [23291, 10], [23321, 11], [23351, 0], [23380, 1], [23410, 2], [23439, 3], [23470, 4], [23500, 5], [23531, 6], [23563, 7], [23594, 8], [23625, 9], [23656, 10], [23686, 11], [23716, 0], [23745, 1], [23775, 2], [23805, 3], [23835, 4], [23865, 5], [23897, 6], [23928, 7], [23959, 8], [23991, 9], [24021, 10], [24051, 11], [24081, 0], [24111, 1], [24140, 2], [24170, 3], [24200, 4], [24231, 5], [24262, 6], [24293, 7], [24325, 8], [24356, 9], [24387, 10], [24417, 11], [24446, 0], [24476, 1], [24505, 2], [24535, 3], [24565, 4], [24596, 5], [24627, 6], [24659, 7], [24690, 8], [24721, 9], [24752, 10], [24782, 11], [24812, 0], [24841, 1], [24871, 2], [24900, 3], [24931, 4], [24961, 5], [24992, 6], [25024, 7], [25055, 8], [25086, 9], [25117, 10], [25147, 11], [25177, 0], [25206, 1], [25236, 2], [25266, 3], [25296, 4], [25326, 5], [25358, 6], [25389, 7], [25420, 8], [25452, 9], [25482, 10], [25512, 11], [25542, 0], [25572, 1], [25601, 2], [25631, 3], [25661, 4], [25692, 5], [25723, 6], [25754, 7], [25786, 8], [25817, 9], [25848, 10], [25878, 11], [25907, 0], [25937, 1], [25966, 2], [25996, 3], [26026, 4], [26057, 5], [26088, 6], [26120, 7], [26151, 8], [26182, 9], [26213, 10], [26243, 11], [26273, 0], [26302, 1], [26332, 2], [26361, 3], [26391, 4], [26422, 5], [26453, 6], [26485, 7], [26516, 8], [26547, 9], [26578, 10], [26608, 11], [26638, 0], [26667, 1], [26697, 2], [26727, 3], [26757, 4], [26787, 5], [26819, 6], [26850, 7], [26881, 8], [26913, 9], [26943, 10], [26973, 11], [27003, 0], [27033, 1], [27062, 2], [27092, 3], [27122, 4], [27153, 5], [27184, 6], [27215, 7], [27247, 8], [27278, 9], [27308, 10], [27339, 11], [27368, 0], [27398, 1], [27427, 2], [27457, 3], [27487, 4], [27518, 5], [27549, 6], [27581, 7], [27612, 8], [27643, 9], [27674, 10], [27704, 11], [27734, 0], [27763, 1], [27793, 2], [27822, 3], [27852, 4], [27883, 5], [27914, 6], [27946, 7], [27977, 8], [28008, 9], [28039, 10], [28069, 11], [28099, 0], [28128, 1], [28158, 2], [28188, 3], [28218, 4], [28248, 5], [28280, 6], [28311, 7], [28342, 8], [28374, 9], [28404, 10], [28434, 11], [28464, 0], [28494, 1], [28523, 2], [28553, 3], [28583, 4], [28614, 5], [28645, 6], [28676, 7], [28708, 8], [28739, 9], [28769, 10], [28800, 11], [28829, 0], [28859, 1], [28888, 2], [28918, 3], [28948, 4], [28979, 5], [29010, 6], [29041, 7], [29073, 8], [29104, 9], [29135, 10], [29165, 11], [29195, 0], [29224, 1], [29253, 2], [29283, 3], [29313, 4], [29344, 5], [29375, 6], [29407, 7], [29438, 8], [29469, 9], [29500, 10], [29530, 11], [29560, 0], [29589, 1], [29619, 2], [29648, 3], [29679, 4], [29709, 5], [29741, 6], [29772, 7], [29803, 8], [29834, 9], [29865, 10], [29895, 11], [29925, 0], [29954, 1], [29984, 2], [30014, 3], [30044, 4], [30075, 5], [30106, 6], [30137, 7], [30169, 8], [30200, 9], [30230, 10], [30261, 11], [30290, 0], [30320, 1], [30349, 2], [30379, 3], [30409, 4], [30440, 5], [30471, 6], [30502, 7], [30534, 8], [30565, 9], [30596, 10], [30626, 11], [30656, 0], [30685, 1], [30714, 2], [30744, 3], [30774, 4], [30805, 5], [30836, 6], [30868, 7], [30899, 8], [30930, 9], [30961, 10], [30991, 11], [31021, 0], [31050, 1], [31080, 2], [31109, 3], [31140, 4], [31170, 5], [31201, 6], [31233, 7], [31264, 8], [31295, 9], [31326, 10], [31356, 11], [31386, 0], [31415, 1], [31445, 2], [31475, 3], [31505, 4], [31536, 5], [31567, 6], [31598, 7], [31630, 8], [31661, 9], [31691, 10], [31722, 11], [31751, 0], [31781, 1], [31810, 2], [31840, 3], [31870, 4], [31901, 5], [31932, 6], [31963, 7], [31995, 8], [32026, 9], [32057, 10], [32087, 11], [32116, 0], [32146, 1], [32175, 2], [32205, 3], [32235, 4], [32266, 5], [32297, 6], [32329, 7], [32360, 8], [32391, 9], [32422, 10], [32452, 11], [32482, 0], [32511, 1], [32541, 2], [32570, 3], [32601, 4], [32631, 5], [32662, 6], [32694, 7], [32725, 8], [32756, 9], [32787, 10], [32817, 11], [32847, 0], [32876, 1], [32906, 2], [32936, 3], [32966, 4], [32997, 5], [33028, 6], [33059, 7], [33091, 8], [33122, 9], [33152, 10], [33182, 11], [33212, 0], [33242, 1], [33271, 2], [33301, 3], [33331, 4], [33362, 5], [33393, 6], [33424, 7], [33456, 8], [33487, 9], [33518, 10], [33548, 11], [33577, 0], [33607, 1], [33636, 2], [33666, 3], [33696, 4], [33727, 5], [33758, 6], [33790, 7], [33821, 8], [33852, 9], [33883, 10], [33913, 11], [33943, 0], [33972, 1], [34002, 2], [34031, 3], [34062, 4], [34092, 5], [34123, 6], [34155, 7], [34186, 8], [34217, 9], [34248, 10], [34278, 11], [34308, 0], [34337, 1], [34367, 2], [34397, 3], [34427, 4], [34458, 5], [34489, 6], [34520, 7], [34552, 8], [34583, 9], [34613, 10], [34643, 11], [34673, 0], [34703, 1], [34732, 2], [34762, 3], [34792, 4], [34823, 5], [34854, 6], [34885, 7], [34917, 8], [34948, 9], [34979, 10], [35009, 11], [35038, 0], [35068, 1], [35097, 2], [35127, 3], [35157, 4], [35188, 5], [35219, 6], [35251, 7], [35282, 8], [35313, 9], [35344, 10], [35374, 11], [35404, 0], [35433, 1], [35463, 2], [35492, 3], [35523, 4], [35553, 5], [35584, 6], [35616, 7], [35647, 8], [35678, 9], [35709, 10], [35739, 11], [35769, 0], [35798, 1], [35828, 2], [35858, 3], [35888, 4], [35918, 5], [35950, 6], [35981, 7], [36012, 8], [36044, 9], [36074, 10], [36104, 11], [36134, 0], [36164, 1], [36193, 2], [36223, 3], [36253, 4], [36284, 5], [36315, 6], [36346, 7], [36378, 8], [36409, 9], [36440, 10], [36470, 11], [36499, 0], [36529, 1], [36558, 2], [36588, 3], [36618, 4], [36649, 5], [36680, 6], [36712, 7], [36743, 8], [36774, 9], [36805, 10], [36835, 11], [36865, 0], [36894, 1], [36924, 2], [36953, 3], [36984, 4], [37014, 5], [37045, 6], [37077, 7], [37108, 8], [37139, 9], [37170, 10], [37200, 11], [37230, 0], [37259, 1], [37289, 2], [37319, 3], [37349, 4], [37379, 5], [37411, 6], [37442, 7], [37473, 8], [37505, 9], [37535, 10], [37565, 11], [37595, 0], [37625, 1], [37654, 2], [37684, 3], [37714, 4], [37745, 5], [37776, 6], [37807, 7], [37839, 8], [37870, 9], [37900, 10], [37931, 11], [37960, 0], [37990, 1], [38019, 2], [38049, 3], [38079, 4], [38110, 5], [38141, 6], [38173, 7], [38204, 8], [38235, 9], [38266, 10], [38296, 11], [38326, 0], [38355, 1], [38385, 2], [38414, 3], [38444, 4], [38475, 5], [38506, 6], [38538, 7], [38569, 8], [38600, 9], [38631, 10], [38661, 11], [38691, 0], [38720, 1], [38750, 2], [38780, 3], [38810, 4], [38840, 5], [38872, 6], [38903, 7], [38934, 8], [38966, 9], [38996, 10], [39026, 11], [39056, 0], [39086, 1], [39115, 2], [39145, 3], [39175, 4], [39206, 5], [39237, 6], [39268, 7], [39300, 8], [39331, 9], [39361, 10], [39392, 11], [39421, 0], [39451, 1], [39480, 2], [39510, 3], [39540, 4], [395
1871, 5], [39602, 6], [39633, 7], [39665, 8], [39696, 9], [39727, 10], [39757, 11], [39787, 0], [39816, 1], [39846, 2], [39875, 3], [39905, 4], [39936, 5], [39967, 6], [39999, 7], [40030, 8], [40061, 9], [40092, 10], [40122, 11], [40152, 0], [40181, 1], [40211, 2], [40241, 3], [40271, 4], [40301, 5], [40333, 6], [40364, 7], [40395, 8], [40427, 9], [40457, 10], [40487, 11], [40517, 0], [40547, 1], [40576, 2], [40606, 3], [40636, 4], [40667, 5], [40698, 6], [40729, 7], [40761, 8], [40792, 9], [40822, 10], [40853, 11], [40882, 0], [40912, 1], [40941, 2], [40971, 3], [41001, 4], [41032, 5], [41063, 6], [41094, 7], [41126, 8], [41157, 9], [41188, 10], [41218, 11], [41248, 0], [41277, 1], [41306, 2], [41336, 3], [41366, 4], [41397, 5], [41428, 6], [41460, 7], [41491, 8], [41522, 9], [41553, 10], [41583, 11], [41613, 0], [41642, 1], [41672, 2], [41701, 3], [41732, 4], [41762, 5], [41794, 6], [41825, 7], [41856, 8], [41887, 9], [41918, 10], [41948, 11], [41978, 0], [42007, 1], [42037, 2], [42067, 3], [42097, 4], [42128, 5], [42159, 6], [42190, 7], [42222, 8], [42253, 9], [42283, 10], [42314, 11], [42343, 0], [42373, 1], [42402, 2], [42432, 3], [42462, 4], [42493, 5], [42524, 6], [42555, 7], [42587, 8], [42618, 9], [42649, 10], [42679, 11], [42709, 0], [42738, 1], [42767, 2], [42797, 3], [42827, 4], [42858, 5], [42889, 6], [42921, 7], [42952, 8], [42983, 9], [43014, 10], [43044, 11], [43074, 0], [43103, 1], [43133, 2], [43162, 3], [43193, 4], [43223, 5], [43254, 6], [43286, 7], [43317, 8], [43348, 9], [43379, 10], [43409, 11], [43439, 0], [43468, 1], [43498, 2], [43528, 3], [43558, 4], [43589, 5], [43620, 6], [43651, 7], [43683, 8], [43714, 9], [43744, 10], [43775, 11], [43804, 0], [43834, 1], [43863, 2], [43893, 3], [43923, 4], [43954, 5], [43985, 6], [44016, 7], [44048, 8], [44079, 9], [44110, 10], [44140, 11], [44169, 0], [44199, 1], [44228, 2], [44258, 3], [44288, 4], [44319, 5], [44350, 6], [44382, 7], [44413, 8], [44444, 9], [44475, 10], [44505, 11], [44535, 0], [44564, 1], [44594, 2], [44623, 3], [44654, 4], [44684, 5], [44715, 6], [44747, 7], [44778, 8], [44809, 9], [44840, 10], [44870, 11], [44900, 0], [44929, 1], [44959, 2], [44989, 3], [45019, 4], [45050, 5], [45081, 6], [45112, 7], [45144, 8], [45175, 9], [45205, 10], [45235, 11], [45265, 0], [45295, 1], [45324, 2], [45354, 3], [45384, 4], [45415, 5], [45446, 6], [45477, 7], [45509, 8], [45540, 9], [45571, 10], [45601, 11], [45630, 0], [45660, 1], [45689, 2], [45719, 3], [45749, 4], [45780, 5], [45811, 6], [45843, 7], [45874, 8], [45905, 9], [45936, 10], [45966, 11], [45996, 0], [46025, 1], [46055, 2], [46084, 3], [46115, 4], [46145, 5], [46176, 6], [46208, 7], [46239, 8], [46270, 9], [46301, 10], [46331, 11], [46361, 0], [46390, 1], [46420, 2], [46450, 3], [46480, 4], [46511, 5], [46542, 6], [46573, 7], [46604, 8], [46636, 9], [46666, 10], [46696, 11], [46726, 0], [46756, 1], [46785, 2], [46815, 3], [46845, 4], [46876, 5], [46907, 6], [46938, 7], [46970, 8], [47001, 9], [47032, 10], [47062, 11], [47091, 0], [47121, 1], [47150, 2], [47180, 3], [47210, 4], [47241, 5], [47272, 6], [47304, 7], [47335, 8], [47366, 9], [47397, 10], [47427, 11], [47457, 0], [47486, 1], [47516, 2], [47545, 3], [47576, 4], [47606, 5], [47637, 6], [47669, 7], [47700, 8], [47731, 9], [47762, 10], [47792, 11], [47822, 0]]; // [epochDay, ææ¯idx] 19const YEAR_EVENTS = [[-25567, 11], [-25533, 0], [-25168, 1], [-24802, 2], [-24437, 3], [-24072, 4], [-23707, 5], [-23341, 6], [-22976, 7], [-22611, 8], [-22246, 9], [-21880, 10], [-21515, 11], [-21150, 0], [-20785, 1], [-20420, 2], [-20054, 3], [-19689, 4], [-19324, 5], [-18959, 6], [-18593, 7], [-18228, 8], [-17863, 9], [-17498, 10], [-17132, 11], [-16767, 0], [-16402, 1], [-16037, 2], [-15671, 3], [-15306, 4], [-14941, 5], [-14576, 6], [-14210, 7], [-13845, 8], [-13480, 9], [-13115, 10], [-12749, 11], [-12384, 0], [-12019, 1], [-11654, 2], [-11288, 3], [-10923, 4], [-10558, 5], [-10193, 6], [-9827, 7], [-9462, 8], [-9097, 9], [-8732, 10], [-8367, 11], [-8001, 0], [-7636, 1], [-7271, 2], [-6906, 3], [-6540, 4], [-6175, 5], [-5810, 6], [-5445, 7], [-5079, 8], [-4714, 9], [-4349, 10], [-3984, 11], [-3618, 0], [-3253, 1], [-2888, 2], [-2523, 3], [-2157, 4], [-1792, 5], [-1427, 6], [-1062, 7], [-696, 8], [-331, 9], [34, 10], [399, 11], [765, 0], [1130, 1], [1495, 2], [1860, 3], [2226, 4], [2591, 5], [2956, 6], [3321, 7], [3687, 8], [4052, 9], [4417, 10], [4782, 11], [5147, 0], [5513, 1], [5878, 2], [6243, 3], [6608, 4], [6974, 5], [7339, 6], [7704, 7], [8069, 8], [8435, 9], [8800, 10], [9165, 11], [9530, 0], [9896, 1], [10261, 2], [10626, 3], [10991, 4], [11357, 5], [11722, 6], [12087, 7], [12452, 8], [12818, 9], [13183, 10], [13548, 11], [13913,
190], [14279, 1], [14644, 2], [15009, 3], [15374, 4], [15740, 5], [16105, 6], [16470, 7], [16835, 8], [17200, 9], [17566, 10], [17931, 11], [18296, 0], [18661, 1], [19027, 2], [19392, 3], [19757, 4], [20122, 5], [20488, 6], [20853, 7], [21218, 8], [21583, 9], [21949, 10], [22314, 11], [22679, 0], [23044, 1], [23410, 2], [23775, 3], [24140, 4], [24505, 5], [24871, 6], [25236, 7], [25601, 8], [25966, 9], [26332, 10], [26697, 11], [27062, 0], [27427, 1], [27793, 2], [28158, 3], [28523, 4], [28888, 5], [29253, 6], [29619, 7], [29984, 8], [30349, 9], [30714, 10], [31080, 11], [31445, 0], [31810, 1], [32175, 2], [32541, 3], [32906, 4], [33271, 5], [33636, 6], [34002, 7], [34367, 8], [34732, 9], [35097, 10], [35463, 11], [35828, 0], [36193, 1], [36558, 2], [36924, 3], [37289, 4], [37654, 5], [38019, 6], [38385, 7], [38750, 8], [39115, 9], [39480, 10], [39846, 11], [40211, 0], [40576, 1], [40941, 2], [41306, 3], [41672, 4], [42037, 5], [42402, 6], [42767, 7], [43133, 8], [43498, 9], [43863, 10], [44228, 11], [44594, 0], [44959, 1], [45324, 2], [45689, 3], [46055, 4], [46420, 5], [46785, 6], [47150, 7], [47516, 8]]; // [epochDay, å¹´æ¯idx] 20 21const KAN = ["ç²","ä¹","ä¸","ä¸","æ","å·±","åº","è¾","壬","ç¸"]; 22const ZHI = ["å","ä¸","å¯ ","å¯","è¾°","å·³","å","æª","ç³","é ","æ","亥"]; 23const UNSEI = ["é·ç","æ²æµ´","å 帯","建ç¦","叿º","è¡°","ç ","æ»","å¢","çµ¶","è","é¤"]; 24const UNSEI_ANIMAL = {"é·ç":"ç¿","æ²æµ´":"ãã¼ã¿","å 帯":"é»ã²ãã","建ç¦":"ã©ã¤ãªã³","叿º":"è","è¡°":"ãã¬ã","ç ":"åå®ç","æ»":"ã¾ã¦","å¢":"ã²ã¤ã","çµ¶":"ãã¬ãµã¹","è":"ç¼","é¤":"ããã"}; 25const ANIMAL_EP = {"ãã¬ãµã¹":1,"ã¾ã¦":2,"ç¼":3,"åå®ç":4,"ã²ã¤ã":5,"ããã":6,"ãã¼ã¿":7,"ãã¬ã":8,"ç¿":9,"é»ã²ãã":10,"ã©ã¤ãªã³":11,"è":12}; 26const ANIMAL_VECTOR = {"ããã":"MOON","é»ã²ãã":"MOON","ãã¬ã":"MOON","ã²ã¤ã":"MOON","ç¼":"EARTH","ç¿":"EARTH","è":"EARTH","åå®ç":"EARTH","ãã¼ã¿":"SUN","ã©ã¤ãªã³":"SUN","ã¾ã¦":"SUN","ãã¬ãµã¹":"SUN"}; 27const CS = {0:11,1:6,2:2,3:9,4:2,5:9,6:5,7:0,8:8,9:3}; // æ¥å¹²âé·çå°æ¯ 28const TENSHIN_RAIL = {"æ¯è©":"ãã¤ãã¼ã¹","å«è²¡":"ãã¤ã¦ã§ã¤","é£ç¥":"ãã¼ã¹","å·å®":"ããã³","å財":"ãã¥ã¼ãããã£","æ£è²¡":"ãªã¢ãªãã£","åå®":"ã¯ã¤ã«ã","æ£å®":"ã¨ãªã¼ã","åå°":"ã¦ãã¼ã¯","å°ç¶¬":"ãã¸ãã¯"}; 29// çæå»ã®èãåãç¨13æ ï¼åã23æå°/0æå°ã«å²ãï¼ãð12æ ã«ã¾ã¨ããã¨æ¬è³ªãã£ã©ãåããã 30const SLOT13 = [["0æï½1æ",0],["1æï½3æ",1],["3æï½5æ",3],["5æï½7æ",5],["7æï½9æ",7],["9æï½11æ",9],["11æï½13æ",11],["13æï½15æ",13],["15æï½17æ",15],["17æï½19æ",17],["19æï½21æ",19],["21æï½23æ",21],["23æï½24æ",23]]; 31// è½å診æï¼(å¹´å¹²ã®é夿, æå¹²ã®é夿)ãcloudå®ç»é²22åãã18/100ãã¿ã¼ã³å¤æï¼2026-08-01ï¼ã 32const ABILITY_LABELS = ["å¦ç¿å","åµé å","ä¼ç»å","管çå","çµ±çå","å売å","表ç¾å","å®è¡å"]; 33const ABILITY_TABLE = {"åå®|åå®":[10,4,8,10,10,10,10,4],"åå®|æ£è²¡":[6,5,10,10,10,10,7,3],"åå°|æ£è²¡":[2,4,9,6,4,10,10,7],"åå°|å°ç¶¬":[1,8,1,1,1,7,10,10],"å·å®|åå®":[5,5,6,5,7,7,7,2],"å·å®|åå°":[1,4,2,1,1,7,10,6],"å·å®|æ¯è©":[4,5,4,2,1,3,4,1],"å·å®|é£ç¥":[2,10,3,1,2,6,4,1],"å«è²¡|å財":[9,7,7,5,3,6,5,1],"å«è²¡|å·å®":[6,4,3,1,1,4,2,1],"å«è²¡|å«è²¡":[10,2,2,1,1,6,1,1],"å財|å·å®":[3,9,8,5,3,4,7,1],"æ¯è©|åå°":[5,3,2,3,2,8,10,7],"æ¯è©|å°ç¶¬":[4,9,3,2,1,3,9,7],"å°ç¶¬|å°ç¶¬":[1,10,2,1,1,2,10,10],"æ£è²¡|å·å®":[1,6,10,5,3,5,4,1],"é£ç¥|å°ç¶¬":[2,10,2,1,2,6,9,7],"é£ç¥|é£ç¥":[4,10,2,2,4,10,4,2]}; 34function slotToHour(label){ if(!label||label==="䏿") return null; for(const [l,h] of SLOT13) if(l===label) return h; throw new Error("æªç¥ã®æé帯ã©ãã«: "+label); } 35// æå¾åéï¼å å½ï¼: ææ¯â[[ç¯å ¥å¾çµéæ¥æ°ã®ä¸é, èµå¹²], ...]ãåå¯é =å°æ°/å=ç«ååæ ¹ 36const BUNYA = {"å":[[30,"ç¸"]],"å¯":[[30,"ä¹"]],"é ":[[30,"è¾"]], 37 "ä¸":[[9,"ç¸"],[12,"è¾"],[30,"å·±"]],"å¯ ":[[7,"æ"],[14,"ä¸"],[30,"ç²"]],
38 "è¾°":[[9,"ä¹"],[12,"ç¸"],[30,"æ"]],"å·³":[[7,"æ"],[14,"åº"],[30,"ä¸"]], 39 "å":[[10,"ä¸"],[20,"å·±"],[30,"ä¸"]],"æª":[[9,"ä¸"],[12,"ä¹"],[30,"å·±"]], 40 "ç³":[[7,"å·±"],[14,"壬"],[30,"åº"]],"æ":[[9,"è¾"],[12,"ä¸"],[30,"æ"]], 41 "亥":[[7,"æ"],[14,"ç²"],[30,"壬"]]}; 42 43// ===== ã¦ã¼ãã£ãªã㣠===== 44function epochDay(y,mo,d){ return Math.floor(Date.UTC(y,mo-1,d)/86400000); } 45function isLeap(y){ return y%4===0 && (y%100!==0||y%400===0); } 46function mod(n,m){ return ((n%m)+m)%m; } 47function latestEvent(events,E){ // eventsæé ãE以ä¸ã§æå¾ã®è¦ç´ ãè¿ãï¼äºåæ¢ç´¢ï¼ 48 let lo=0,hi=events.length-1,ans=0; 49 while(lo<=hi){ const mid=(lo+hi)>>1; if(events[mid][0]<=E){ans=mid;lo=mid+1;} else hi=mid-1; } 50 return events[ans]; 51} 52function unsei(dayGan,branch){ 53 const s=CS[dayGan]; 54 const off = (dayGan%2===0) ? mod(branch-s,12) : mod(s-branch,12); 55 return UNSEI[off]; 56} 57function animalOf(dayGan,branch){ return UNSEI_ANIMAL[unsei(dayGan,branch)]; } 58function tenshin(dtg,otg){ 59 const de=Math.floor(dtg/2), dohi=Math.floor(otg/2), sy=(dtg%2===otg%2); 60 if(de===dohi) return sy?"æ¯è©":"å«è²¡"; 61 if((de+1)%5===dohi) return sy?"é£ç¥":"å·å®"; 62 if((de+2)%5===dohi) return sy?"å財":"æ£è²¡"; 63 if((dohi+2)%5===de) return sy?"åå®":"æ£å®"; 64 return sy?"åå°":"å°ç¶¬"; 65} 66function genmei(zhi,days){ for(const [lim,k] of BUNYA[zhi]){ if(days<=lim) return k; } const b=BUNYA[zhi]; return b[b.length-1][1]; } 67 68// ===== æ¬è³ªï¼60åé¡ã»keichara_calc æ£æ¬ç§»æ¤ï¼ ===== 69function yearMonthCode(y,mo){ const jan=JAN_CODES[y]; if(jan===undefined) return null; const off=isLeap(y)?MONTH_OFFSET_LEAP:MONTH_OFFSET_NORMAL; return mod(jan+off[mo-1],60); } 70function honshitsuNum(y,mo,d){ const code=yearMonthCode(y,mo); if(code===null) return null; let n=mod(code+d,60); if(n===0) n=60; return n; } 71 72// ===== ã¡ã¤ã³API ===== 73// birth: {year, month, day, hour(0-23 or null)} 74function compute(birth){ 75 let y=birth.year, mo=birth.month, d=birth.day; 76 const hour=(birth.hour===undefined)?null:birth.hour; 77 // ð æ¥çã«ã¼ã«: 23æä»¥éã¯ç¿æ¥çã¾ãæ±ããæ¥æ±ï¼æ¬è³ªãã£ã©ãå¤ããããå¿ é ã 78 let dateShifted=false; 79 if(hour!==null && hour>=23){ 80 const nx=new Date(Date.UTC(y,mo-1,d+1)); 81 y=nx.getUTCFullYear(); mo=nx.getUTCMonth()+1; d=nx.getUTCDate(); 82 dateShifted=true; 83 } 84 const E=epochDay(y,mo,d); 85 const dayGan=mod(E+DAY_STEM_A,10); 86 const dayBranch=mod(E+DAY_BRANCH_A,12); 87 const me=latestEvent(MONTH_EVENTS,E); const monthBranch=me[1]; const daysSinceSetsu=E-me[0]; 88 const ye=latestEvent(YEAR_EVENTS,E); const yearBranch=ye[1]; 89 const hourBranch=(hour===null)?null:mod(Math.floor((hour+1)/2),12); 90 91 // æ¬è³ª 92 const n=honshitsuNum(y,mo,d); 93 const honshitsu = n? CHARACTERS[n][0] : null; 94 const rhythm = n? CHARACTERS[n][1] : null; 95 const honshitsuAnimal = animalOf(dayGan,dayBranch); 96 // å´é¢ 97 const hyomen = animalOf(dayGan,monthBranch); 98 const ishi = animalOf(dayGan,yearBranch); 99 const kibo = (hourBranch===null)?null:animalOf(dayGan,hourBranch); 100 // ã¬ã¼ã« = ææ±å å½é夿 101 const gk = genmei(ZHI[monthBranch], daysSinceSetsu); 102 const rail = TENSHIN_RAIL[tenshin(dayGan, KAN.indexOf(gk))]; 103 // EPï¼100ç¹æºç¹ã»å¸æå¿ é ï¼ 104 let ep100=null; 105 if(kibo!==null){ 106 const tot = ANIMAL_EP[honshitsuAnimal]*7.0 + ANIMAL_EP[hyomen]*1.0 + ANIMAL_EP[ishi]*1.5 + ANIMAL_EP[kibo]*0.5; 107 ep100 = Math.round(tot*0.833); 108 } 109 // é夿ãã¢ï¼å¹´å¹²ï¼æå¿è½åï¼æå¹²ï¼è¡¨é¢è½åï¼ã¨è½å診æ 110 // å¹´å¹²: ç«æ¥åºæºã®å¹´ Yeff ãã (Yeff-4)%10ãYeff ã¯å¹´æ¯ã¨ä¸è´ãã y ã¾ã㯠y-1ã 111 let yEff = ((y-4)%12+12)%12===yearBranch ? y : y-1; 112 const yearStem = ((yEff-4)%10+10)%10; 113 // æå¹²: äºèéãå¯ æã®å¹²=(å¹´å¹²%5)*2+2ãä»¥é ææ¯ã®å¯ ããã®å·®åã ãé²ããã 114 const monthStem = mod((yearStem%5)*2+2 + mod(monthBranch-2,12), 10); 115 const tsYear = tenshin(dayGan, yearStem); 116 const tsMonth = tenshin(dayGan, monthStem); 117 const ability = ABILITY_TABLE[tsYear+"|"+tsMonth] || null; 118 return { 119 honshitsu_num:n, honshitsu:honshitsu, honshitsu_animal:honshitsuAnimal, rhythm:rhythm, 120 hyomen:hyomen, ishi:ishi, kibo:kibo, ep100:ep100, rail:rail, 121 tenshin_year:tsYear, tenshin_month:tsMonth, 122 ability:ability, ability_total:(ability?ability.reduce((a,b)=>a+b,0):null), 123 ability_labels:ABILITY_LABELS, 124 kibo_provisional:(kibo===null), ep100_provisional:(ep100===null), 125 date_shifted:dateShifted, 126 vector: ANIMAL_VECTOR[honshitsuAnimal] // MOON/EARTH/SUN 127 }; 128} 129 130const Kosei = { compute, slotToHour, SLOT13, ABILITY_LABELS, _internal:{unsei,animalOf,tenshin,genmei,honshitsuNum} }; 131if(typeof module!=="undefined" && module.exports) module.exports = Kosei; 132global.Kosei = Kosei; 133})(typeof globalThis!=="undefined"?globalThis:this);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.