diff --git a/.gitignore b/.gitignore index 481046d..108f415 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,10 @@ __pycache__/ .svelte-kit/ .env -backend/simulation_cards.json +backend/ai/simulation_cards.json +backend/ai/tournament_grid.png backend/tournament_grid.png -backend/tournament_results.json \ No newline at end of file +backend/ai/tournament_results.json + +CLAUDE.md +/.claude \ No newline at end of file diff --git a/backend/ai/__init__.py b/backend/ai/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/backend/ai/card_pick_nn.py b/backend/ai/card_pick_nn.py new file mode 100644 index 0000000..a237ac7 --- /dev/null +++ b/backend/ai/card_pick_nn.py @@ -0,0 +1,176 @@ +import os + +import numpy as np + +from ai.nn import NeuralNet, _softmax + +# Separate weights file so this NN trains independently from the plan NN. +CARD_PICK_WEIGHTS_PATH = os.path.join(os.path.dirname(__file__), "card_pick_weights.json") + +N_CARD_FEATURES = 15 + +# Normalization constants — chosen to cover the realistic stat range for generated cards. +_MAX_ATK = 50.0 +_MAX_DEF = 100.0 + + +def _precompute_static_features(allowed: list) -> np.ndarray: + """ + Vectorized precomputation of the 7 per-card static features for the whole pool. + Returns (n, 7) float32. Called once per choose_cards() invocation. + """ + n = len(allowed) + atk = np.array([c.attack for c in allowed], dtype=np.float32) + defn = np.array([c.defense for c in allowed], dtype=np.float32) + cost = np.array([c.cost for c in allowed], dtype=np.float32) + rar = np.array([c.card_rarity.value for c in allowed], dtype=np.float32) + typ = np.array([c.card_type.value for c in allowed], dtype=np.float32) + + exact_cost = np.minimum(10.0, np.maximum(1.0, ((atk**2 + defn**2)**0.18) / 1.5)) + total = atk + defn + atk_ratio = np.where(total > 0, atk / total, 0.5) + pcv_norm = np.clip(exact_cost - cost, 0.0, 1.0) + + out = np.empty((n, 7), dtype=np.float32) + out[:, 0] = atk / _MAX_ATK + out[:, 1] = defn / _MAX_DEF + out[:, 2] = cost / 10.0 + out[:, 3] = rar / 5.0 + out[:, 4] = atk_ratio + out[:, 5] = pcv_norm + out[:, 6] = typ / 9.0 + return out + + +class CardPickPlayer: + """ + Uses a NeuralNet to sequentially select cards from a pool until the cost + budget is exhausted. API mirrors NeuralPlayer so training code stays uniform. + + In training mode: samples stochastically (softmax) and records the + trajectory for a REINFORCE update after the game ends. + In inference mode: picks the highest-scoring affordable card at each step. + + Performance design: + - Static per-card features (7) are computed once via vectorized numpy. + - Context features (8) use running totals updated by O(1) increments. + - Picked cards are tracked with a boolean mask; no list.remove() calls. + - Each pick step does one small forward pass over the affordable subset only. + """ + + def __init__(self, net: NeuralNet, training: bool = False, temperature: float = 1.0): + self.net = net + self.training = training + self.temperature = temperature + self.trajectory: list[tuple[np.ndarray, int]] = [] # (features_matrix, chosen_idx) + + def choose_cards(self, allowed: list, difficulty: int) -> list: + """ + allowed: pre-filtered list of Card objects (cost ≤ max_card_cost already applied). + Returns the selected deck as a list of Cards. + """ + BUDGET = 50 + n = len(allowed) + + static = _precompute_static_features(allowed) # (n, 7) — computed once + costs = np.array([c.cost for c in allowed], dtype=np.float32) + picked = np.zeros(n, dtype=bool) + + budget_remaining = BUDGET + selected: list = [] + + # Running totals for context features — incremented O(1) per pick. + n_picked = 0 + sum_atk = 0.0 + sum_def = 0.0 + sum_cost = 0.0 + n_cheap = 0 # cost ≤ 3 + n_high = 0 # cost ≥ 6 + + diff_norm = difficulty / 10.0 + + while True: + mask = (~picked) & (costs <= budget_remaining) + if not mask.any(): + break + + idxs = np.where(mask)[0] + + # Context row — same for every candidate this step, broadcast via tile. + if n_picked > 0: + ctx = np.array([ + n_picked / 30.0, + budget_remaining / 50.0, + sum_atk / n_picked / _MAX_ATK, + sum_def / n_picked / _MAX_DEF, + sum_cost / n_picked / 10.0, + n_cheap / n_picked, + n_high / n_picked, + diff_norm, + ], dtype=np.float32) + else: + ctx = np.array([ + 0.0, budget_remaining / 50.0, 0.0, 0.0, 0.0, 0.0, 0.0, diff_norm, + ], dtype=np.float32) + + features = np.concatenate( + [static[idxs], np.tile(ctx, (len(idxs), 1))], + axis=1, + ) + scores = self.net.forward(features) + + if self.training: + probs = _softmax((scores / self.temperature).astype(np.float64)) + probs = np.clip(probs, 1e-10, None) + probs /= probs.sum() + local_idx = int(np.random.choice(len(idxs), p=probs)) + self.trajectory.append((features, local_idx)) + else: + local_idx = int(np.argmax(scores)) + + global_idx = idxs[local_idx] + card = allowed[global_idx] + picked[global_idx] = True + selected.append(card) + + # Incremental context update — O(1). + budget_remaining -= card.cost + n_picked += 1 + sum_atk += card.attack + sum_def += card.defense + sum_cost += card.cost + if card.cost <= 3: n_cheap += 1 + if card.cost >= 6: n_high += 1 + + return selected + + def compute_grads(self, outcome: float) -> tuple[list, list] | None: + """ + REINFORCE gradients averaged over the pick trajectory. + outcome: centered reward (win/loss minus baseline). + Returns (grads_w, grads_b), or None if no picks were made. + """ + if not self.trajectory: + return None + + acc_gw = [np.zeros_like(w) for w in self.net.weights] + acc_gb = [np.zeros_like(b) for b in self.net.biases] + + for features, chosen_idx in self.trajectory: + scores = self.net.forward(features) + probs = _softmax(scores.astype(np.float64)).astype(np.float32) + upstream = -probs.copy() + upstream[chosen_idx] += 1.0 + upstream *= outcome + gw, gb = self.net.backward(upstream) + for i in range(len(acc_gw)): + acc_gw[i] += gw[i] + acc_gb[i] += gb[i] + + n = len(self.trajectory) + for i in range(len(acc_gw)): + acc_gw[i] /= n + acc_gb[i] /= n + + self.trajectory.clear() + return acc_gw, acc_gb diff --git a/backend/ai/card_pick_weights.json b/backend/ai/card_pick_weights.json new file mode 100644 index 0000000..b8f93f4 --- /dev/null +++ b/backend/ai/card_pick_weights.json @@ -0,0 +1 @@ +{"weights": [[[-0.015187667682766914, -0.3643956780433655, -0.22758932411670685, -0.19850975275039673, 0.4531574249267578, -0.18655337393283844, 0.3689255714416504, 0.6420478224754333, 0.4306192994117737, -0.13097336888313293, -0.25871142745018005, 0.23995646834373474, -0.7393578886985779, -0.37926751375198364, 0.4270966947078705, -0.12426649034023285, 0.7763314843177795, -0.47838735580444336, -0.37075674533843994, -0.35004445910453796, -0.040459197014570236, -0.10876516997814178, 0.7888060212135315, -0.14209674298763275, 0.11854803562164307, 0.3857385516166687, -0.04093203321099281, 0.16350485384464264, 0.12225954234600067, 0.25170662999153137, -0.5005019903182983, 0.4486440122127533], [0.029551073908805847, 0.09887990355491638, -0.19984781742095947, 0.7560868859291077, -0.6088835000991821, 0.5946847200393677, -0.15858183801174164, 0.7204640507698059, 0.5451158285140991, 0.47685837745666504, 0.2879995107650757, 0.7379099726676941, -0.10395565629005432, -0.15074671804904938, -0.14309720695018768, 0.4532584249973297, -0.5764814615249634, 0.2554941773414612, 0.12317127734422684, -0.34787583351135254, -0.2765864431858063, -0.3764065206050873, -0.48159247636795044, 0.21831513941287994, 0.31303709745407104, 0.2830462157726288, -0.23159703612327576, 0.19677682220935822, -0.07840874791145325, 0.35643020272254944, 0.11686503142118454, -0.017502861097455025], [-0.8211736679077148, -0.009830395691096783, -0.010570263490080833, -0.17063279449939728, 0.07836402952671051, -0.34810152649879456, -0.006201678421348333, 0.35662806034088135, 0.7741405367851257, -0.42636731266975403, 0.13145804405212402, -0.3775132894515991, 0.20495536923408508, 0.12015476077795029, 0.42566177248954773, 0.37947943806648254, 0.06009283289313316, 0.015576898120343685, 0.7429128289222717, 0.23562099039554596, 0.5644717216491699, -0.4027644693851471, 0.6148893237113953, -0.19323311746120453, -0.41735273599624634, -0.04654661566019058, -0.42730647325515747, 0.2279403954744339, -0.349725604057312, 0.17303991317749023, -0.3982332944869995, -0.08395469933748245], [0.20679046213626862, -0.010969416238367558, 0.5334591865539551, 0.5173916220664978, 0.12333963811397552, -0.6164942979812622, 0.0342128649353981, 0.7160353064537048, -0.08650103956460953, 0.1704491823911667, -1.158728837966919, -0.6339064240455627, -0.7035306096076965, 0.041792914271354675, -0.11474583297967911, 0.21893949806690216, -0.3599030673503876, 0.25878989696502686, -0.26732850074768066, -0.020252497866749763, 0.417002409696579, -0.06296882033348083, 0.05477210506796837, -0.2916865050792694, -0.23962676525115967, 0.06270183622837067, -0.7376314997673035, 0.1284741461277008, -0.24406537413597107, 0.18508373200893402, 0.6306682229042053, -0.3245687782764435], [0.6705409288406372, 0.39329999685287476, -0.05155561491847038, 0.25956326723098755, 0.20811313390731812, -0.42691418528556824, 0.30175355076789856, -0.25213953852653503, 0.18660078942775726, -0.5902811288833618, -0.44515305757522583, 0.15044572949409485, -0.4890288710594177, 0.06714515388011932, -0.012560781091451645, 0.5671680569648743, 0.35111746191978455, -0.16015098989009857, -0.007030249573290348, -0.011944415047764778, 0.03797602653503418, 0.41081559658050537, 1.0669867992401123, -0.4691086709499359, -0.4681026041507721, 0.4780505895614624, -0.4194066822528839, -0.35669654607772827, 0.8373085856437683, 0.00516044395044446, -0.09927309304475784, -0.1216156929731369], [0.6147765517234802, -0.4533554017543793, 0.5824808478355408, 0.7982980608940125, -0.18428704142570496, -0.27772602438926697, -0.31672385334968567, 0.4046376645565033, 1.3046634197235107, 0.9749731421470642, 0.17089080810546875, -0.27834662795066833, 0.23987631499767303, -0.3266902267932892, -0.0765271931886673, 0.9514686465263367, -0.1514744609594345, -0.5428557991981506, -0.6991533637046814, 0.0400848351418972, 0.39628487825393677, 0.1978076547384262, 0.3026024103164673, -0.08487612754106522, 0.18586361408233643, 0.15670809149742126, -0.7715221643447876, -0.22666721045970917, 0.14984898269176483, 0.31622758507728577, -0.11467728763818741, 0.04917024448513985], [0.8186342716217041, -0.3270322382450104, -0.0772475153207779, 0.17427177727222443, 0.06834646314382553, -0.3646209239959717, 0.08415170758962631, 0.09764218330383301, 0.833204448223114, 0.20093312859535217, -0.19390149414539337, -0.6820139288902283, -0.052625369280576706, -0.25429826974868774, -0.11184829473495483, 0.30008333921432495, 0.027082638815045357, 0.08307769149541855, 0.5126549601554871, 0.15578725934028625, 1.0595977306365967, 0.10090276598930359, -0.11117536574602127, -0.5123324990272522, -0.5129416584968567, 0.3416731059551239, 0.23101887106895447, 0.03551147133111954, -0.15446697175502777, -0.12910181283950806, -0.08977442234754562, -0.0026049213483929634], [-0.7252165079116821, 0.2636771500110626, -0.7401040196418762, 0.2949037253856659, -0.04151520878076553, 0.21962904930114746, -0.3839983642101288, 0.7446762919425964, 0.2805115282535553, 0.2356499880552292, 0.06676902621984482, -0.12613332271575928, 0.4882720708847046, 0.6220742464065552, 0.4342876672744751, 0.09518568217754364, -0.0012735759373754263, 0.28464600443840027, 0.06356853246688843, -0.136813685297966, 0.049848031252622604, 0.33807632327079773, 0.1828693151473999, -0.026819342747330666, -0.31394365429878235, 0.09922165423631668, 0.14670859277248383, -0.29483088850975037, 0.22549590468406677, 0.4019213914871216, -0.05665432661771774, -0.5988273620605469], [-0.3968566060066223, 0.21350812911987305, -0.24897785484790802, 0.05841894447803497, -0.286314457654953, 0.3695695102214813, -0.6571596264839172, 0.07078804075717926, 0.11989007145166397, 0.2507798671722412, 0.25910699367523193, -0.5353006720542908, 0.010526436381042004, -0.10578187555074692, -0.35215574502944946, -0.4749282896518707, 0.1877540498971939, 0.4759366512298584, -0.01090327836573124, 0.38215765357017517, 0.15544091165065765, -0.1978016495704651, -0.01749574951827526, 0.08042334765195847, 0.19112884998321533, 0.07773073762655258, -0.6461327075958252, 0.680027186870575, 0.030584480613470078, -0.23187915980815887, -0.6042603850364685, -0.3446026146411896], [-0.07766231894493103, -0.2777774930000305, -0.1732383668422699, -0.24558857083320618, 0.2833101749420166, -0.2687435448169708, 0.18673044443130493, 0.25463730096817017, -0.5421754121780396, -0.13075333833694458, 0.3074922561645508, 0.016181109473109245, 0.36400294303894043, 0.44535115361213684, -0.20854748785495758, -0.07506462931632996, 0.0570773221552372, -0.03696830943226814, 0.2263624519109726, 0.5925309062004089, -0.11997807770967484, 0.10807085782289505, -0.04393155500292778, -0.7553175091743469, -0.298994779586792, -0.05761594697833061, -0.19808124005794525, 0.2747034430503845, 0.3761969208717346, -0.24992728233337402, 0.34316688776016235, -0.1651495397090912], [0.1578328013420105, -0.16233354806900024, -0.4966071546077728, -0.14004452526569366, -0.5075194835662842, 0.407280296087265, 0.44936010241508484, 0.3500917851924896, -0.11479907482862473, 0.3155500590801239, -0.7064833641052246, 0.3035837709903717, 0.768475353717804, 0.3356405794620514, -0.020465798676013947, 0.40810054540634155, -0.034135088324546814, -0.2775692045688629, -0.3161080777645111, 8.460998651571572e-05, -0.044252559542655945, -0.8626270890235901, 1.0531485080718994, -0.1647818684577942, 0.4564385712146759, 0.030942142009735107, 0.438471257686615, 0.7845445275306702, -0.2345251441001892, -0.0795733854174614, 0.16693955659866333, 0.35699689388275146], [0.12507562339305878, -0.06746687740087509, -0.5114392638206482, 0.19773750007152557, -0.29942548274993896, 0.1138102188706398, 0.3813999593257904, 0.21532520651817322, 0.13680636882781982, -0.5277183055877686, 0.2327544391155243, -0.2807718813419342, -0.5694795250892639, 0.6158825755119324, -0.010366223752498627, 0.14451809227466583, 0.1314108818769455, 0.5685773491859436, -0.08992139250040054, 0.6407229900360107, -0.05407276377081871, -0.17346496880054474, 0.04713819921016693, -0.23337391018867493, -0.09298110753297806, 0.5323285460472107, -0.6966124176979065, 0.044128548353910446, -0.08164944499731064, -0.010076403617858887, -0.21589668095111847, 0.19727742671966553], [-0.19280898571014404, -1.0556857585906982, -0.5495357513427734, 0.07749369740486145, 0.36088019609451294, 0.30447450280189514, -0.8637819290161133, 0.3254888653755188, 0.05934753641486168, -0.17582425475120544, -0.057951293885707855, 0.11307816207408905, 0.2848917841911316, -0.19418160617351532, -0.42023903131484985, 0.1849713921546936, 0.6718775629997253, 0.5131577253341675, 0.40394100546836853, -0.26770973205566406, -0.31765100359916687, 0.3959417939186096, 0.2937015891075134, -0.29390639066696167, -0.14474540948867798, -0.34988725185394287, -0.21097825467586517, 0.40833157300949097, -0.23009634017944336, -0.20113275945186615, -0.5857694149017334, -0.16807673871517181], [-0.04961485415697098, 0.5275222659111023, -0.3113958239555359, -0.36341187357902527, 0.26957228779792786, 0.11823277920484543, 0.03145260363817215, 0.00533587671816349, -0.17420272529125214, 0.06764441728591919, 0.22343742847442627, -0.38330426812171936, 0.2765222191810608, 0.313904345035553, -0.005899923387914896, 1.0583068132400513, 0.6615254878997803, -0.6221135258674622, 0.37216195464134216, 0.22743366658687592, -0.4282849431037903, 0.1217762753367424, -0.1313449591398239, 0.3271075189113617, -0.26572081446647644, -0.3046075999736786, 0.6824942231178284, -0.022632967680692673, 0.3268146514892578, 0.29479146003723145, -0.07764893025159836, -0.06373139470815659], [0.2294161468744278, 0.7076644897460938, 0.0008194256806746125, 0.34516873955726624, 0.0007000044570304453, 0.24158693850040436, -0.2466663271188736, 0.24811913073062897, 0.37104135751724243, 0.5487378239631653, 0.45409804582595825, 0.06982941925525665, 0.8974733948707581, 0.14139503240585327, -0.029188163578510284, -0.5141636729240417, 0.10708101093769073, 0.37316903471946716, 0.6162252426147461, 0.08230938762426376, 0.8198320269584656, 0.4782034158706665, -0.37141185998916626, 0.21244581043720245, -0.07790707051753998, 0.4707396924495697, 0.01157244574278593, -0.26921913027763367, -0.004486642312258482, -0.06454849988222122, -0.6888020634651184, -0.3829878866672516]], [[0.0567307323217392, -0.09031752496957779, 0.5128206014633179, -0.6704683303833008, 0.08425261080265045, -0.4951554834842682, -0.10850553959608078, 0.12231986224651337, -0.032035063952207565, 0.19346091151237488, 0.31330418586730957, 0.7128279209136963, -0.025482894852757454, -0.48277372121810913, -0.28354132175445557, 0.15665267407894135], [0.05692462623119354, -0.5541673302650452, 0.036876022815704346, 0.262052059173584, -0.4427368938922882, 0.5049935579299927, 0.14069706201553345, 0.23207736015319824, -0.14186596870422363, 0.32265904545783997, 0.5881070494651794, 0.056844066828489304, 0.4853072762489319, -0.273746520280838, -0.012599270790815353, -0.2065843790769577], [-0.024231545627117157, -0.223386749625206, -0.05259528011083603, 0.1365232616662979, -0.37670737504959106, -0.3092774748802185, -0.11008193343877792, 0.1431172490119934, 0.43560048937797546, -0.0644403025507927, -0.009943123906850815, -0.11166980862617493, -0.1545664221048355, 0.03902708366513252, -0.1315435916185379, 0.21002081036567688], [0.1258959323167801, 0.3884054720401764, 0.6099346876144409, -0.06942633539438248, 0.20067766308784485, 0.11430539935827255, -0.10435501486063004, -0.3964051604270935, 0.3591187596321106, 0.33318963646888733, -0.12734957039356232, -0.05555092543363571, 0.14593911170959473, 0.18477769196033478, -0.14610861241817474, 0.10388351231813431], [0.42727574706077576, -0.30633091926574707, 0.01173387560993433, 0.5950039625167847, -0.37113335728645325, -0.28321683406829834, 0.3250325620174408, 0.3073209226131439, -0.16075313091278076, -0.07815767079591751, 0.09080395102500916, -0.14562104642391205, 0.0407663993537426, -0.06631685048341751, 0.13830947875976562, -0.569711446762085], [-0.0975261926651001, 0.05586569383740425, -0.4192161560058594, 0.11795751750469208, -0.324685275554657, 0.3827084004878998, -0.15551283955574036, -0.17329494655132294, -0.30049073696136475, -0.3323673605918884, -0.28464338183403015, -0.1688612848520279, 0.7038975954055786, 0.21424034237861633, -0.4539519250392914, 0.32603803277015686], [0.10164275020360947, -0.19589656591415405, -0.496194064617157, 0.6826903223991394, -0.5365923047065735, -0.18684861063957214, 0.6495403051376343, 0.33807575702667236, 0.1922338902950287, -0.26091888546943665, -0.038318026810884476, 0.01687043532729149, 0.2696210443973541, 0.010466109029948711, 0.21609681844711304, -0.2388472706079483], [0.13231877982616425, 0.11142553389072418, 0.04990237206220627, 0.3194918632507324, 0.4050736129283905, 0.27430909872055054, 0.06758609414100647, 0.05173737555742264, 0.0315035805106163, 0.27622151374816895, -0.24761100113391876, -0.4074421525001526, 0.3459171950817108, -0.37433159351348877, -0.5468274354934692, 0.36240413784980774], [-0.13726407289505005, -0.36956578493118286, 0.35387030243873596, -0.09922342747449875, 0.03885643556714058, -0.1345389187335968, -0.04677322134375572, -0.0019683432765305042, -0.15384237468242645, 0.16702154278755188, -0.0036415637005120516, -0.5658323168754578, -0.3788577616214752, -0.25625067949295044, -0.10640130937099457, 0.08337128907442093], [0.5472966432571411, -0.09264115244150162, 0.3517429530620575, -0.22474776208400726, 0.5775367021560669, 0.043036166578531265, -0.1284063756465912, -0.2264731526374817, 0.11678437143564224, 0.5190223455429077, -0.7405648231506348, 0.020107639953494072, 0.15925276279449463, -0.4110715687274933, 0.3127293288707733, -0.12871597707271576], [0.27128902077674866, -0.318432480096817, -0.13775840401649475, 0.12331744283437729, -0.2760290205478668, -0.05275346338748932, 0.24052777886390686, 0.19208861887454987, -0.10896877944469452, 0.20635125041007996, 0.11584029346704483, -0.0435180589556694, -0.19535119831562042, 0.24746227264404297, -0.006354675628244877, -0.16941355168819427], [-0.4362720549106598, 0.3754812479019165, 0.02082490362226963, -0.09276887774467468, -0.10692697763442993, -0.47963887453079224, 0.2861572504043579, 0.08095474541187286, 0.1976223886013031, -0.47304072976112366, 0.08224407583475113, -0.20209261775016785, 0.18236389756202698, 0.021702686324715614, -0.0881248340010643, -0.23614391684532166], [-0.17252032458782196, -0.4805314838886261, -0.15898191928863525, 0.5358262062072754, 0.06413941830396652, 0.39984846115112305, 0.22040331363677979, 0.3040308654308319, -0.0415511354804039, -0.2697784900665283, -0.22082675993442535, 0.3334420621395111, 0.02300427481532097, -0.01271811407059431, 0.18630096316337585, -0.01299763098359108], [0.0888274684548378, -0.3548703193664551, -0.18019376695156097, -0.016094401478767395, 0.03293982893228531, 0.2502362132072449, 0.23420171439647675, 0.10276470333337784, 0.11145059019327164, -0.189656063914299, -0.10590296983718872, 0.21791444718837738, 0.10442367196083069, -0.21179218590259552, 0.0066709560342133045, 0.3686601221561432], [-0.13599471747875214, -0.1744810938835144, -0.012095453217625618, 0.5154426097869873, -0.16531683504581451, -0.14146973192691803, 0.43084412813186646, 0.0714225247502327, 0.5231545567512512, -0.4439826011657715, 0.20166292786598206, -0.3139592409133911, 0.224958598613739, -0.6007750034332275, -0.18451109528541565, -0.3803390860557556], [-0.1320289969444275, 0.2713245749473572, 0.7686412334442139, -0.5368143916130066, 0.3483627736568451, 0.05409407988190651, -0.3578032851219177, -0.3275006413459778, -0.543627142906189, 0.5129610300064087, -0.2997020483016968, 0.12587690353393555, 0.0025198699440807104, -0.30251646041870117, 0.27451059222221375, -0.03144354745745659], [0.013765858486294746, 0.044983167201280594, -0.3180807828903198, -0.29397478699684143, 0.24053022265434265, 0.12934599816799164, 0.6160286664962769, 0.06312750279903412, -0.2299916297197342, -0.19391487538814545, -0.1441728174686432, -0.05180226266384125, -0.43709513545036316, -0.3651588261127472, -0.06498903036117554, 0.12744183838367462], [-0.12574563920497894, 0.25669005513191223, -0.29781201481819153, 0.26806479692459106, -0.3827393651008606, 0.4583994448184967, 0.7651149034500122, 0.03646770119667053, 0.1707778126001358, -0.6192023754119873, -0.5529158711433411, -0.5883507132530212, 0.49149391055107117, 0.1454974263906479, 0.18377216160297394, -0.363075852394104], [-0.32042932510375977, -0.5104065537452698, -0.5559192299842834, 0.12550880014896393, -0.5970643758773804, 0.5172739624977112, 0.24592305719852448, 0.2542106509208679, -0.15435484051704407, -0.1883569061756134, 0.12866277992725372, 0.10271850228309631, 0.4081990122795105, 0.22430981695652008, 0.3616478443145752, 0.12739330530166626], [-0.2929687201976776, -0.4295165538787842, -0.28990939259529114, 0.017382441088557243, 0.4143175184726715, -0.06743022799491882, 0.49887290596961975, 0.05363715812563896, -0.2869087755680084, -0.16095685958862305, -0.0912332683801651, 0.07774502784013748, 0.014278704300522804, 0.0029595436062663794, 0.4056074917316437, 0.2893385589122772], [-0.0011570353526622057, -0.2664603590965271, 0.18733853101730347, -0.12464912235736847, 0.3860107362270355, 0.09769758582115173, -0.3344627916812897, -0.1164955422282219, 0.023441070690751076, -0.06663323938846588, -0.1465001255273819, -0.27599185705184937, 0.5223022103309631, -0.26097697019577026, -0.2049194872379303, 0.09130590409040451], [-0.16283421218395233, 0.028389547020196915, -0.14242468774318695, 0.061678994446992874, 0.08632650226354599, 0.1792975813150406, 0.3088544011116028, 0.10054317861795425, -0.017406005412340164, -0.11848466098308563, -0.136906236410141, -0.08429896831512451, 0.11775096505880356, 0.23623840510845184, 0.10326405614614487, 0.26332974433898926], [-0.0024972783867269754, -0.15415599942207336, 0.2703905999660492, 0.10958725959062576, -0.5633916258811951, -0.16972219944000244, -0.04578348994255066, 0.019167523831129074, -0.4418327212333679, 0.06401385366916656, -0.12090308219194412, 0.3185279071331024, -0.5117907524108887, 0.292452335357666, -0.08664284646511078, 0.13278189301490784], [-0.25288352370262146, 0.09685839712619781, -0.3857073485851288, 0.15016838908195496, -0.25265946984291077, -0.3404383361339569, 0.13706891238689423, 0.1686982959508896, -0.05887056887149811, 0.14019417762756348, 0.40496471524238586, 0.26275861263275146, -0.23049230873584747, -0.5246220231056213, -0.16938742995262146, -0.29993584752082825], [0.2744334042072296, -0.19628402590751648, -0.3800411522388458, 0.36708715558052063, -0.06034790351986885, -0.02400936931371689, 0.621300995349884, 0.22069686651229858, -0.3400273025035858, -0.49501892924308777, -0.2093631476163864, 0.26427191495895386, 0.41597017645835876, -0.013976389542222023, -0.15633781254291534, 0.2146327942609787], [0.34487926959991455, -0.39346960186958313, -0.06254267692565918, 0.18064893782138824, 0.28059643507003784, -0.14827494323253632, 0.09975116699934006, 0.3312572240829468, -0.6246126890182495, 0.2185940444469452, 0.3800206184387207, -0.15676575899124146, -0.1831211894750595, -0.27504962682724, -0.052200283855199814, 0.13373935222625732], [-0.23003563284873962, 0.15810070931911469, 0.3588162362575531, 0.31090855598449707, 0.5162459015846252, 0.1135578453540802, 0.043414317071437836, 0.2794943153858185, -0.2754841446876526, -0.2676027715206146, -0.14071305096149445, -0.29177430272102356, 0.1929774135351181, 0.04333159700036049, -0.12724661827087402, -0.49927419424057007], [-0.2676246762275696, 0.3508426249027252, 0.4170192778110504, 0.5956870317459106, -0.052168264985084534, -0.14229175448417664, -0.03375997021794319, 0.3027379810810089, 0.5525525808334351, 0.1544407606124878, -0.00071891670813784, 0.00390933221206069, -0.16631461679935455, -0.3550235629081726, -0.17948392033576965, -0.010607590898871422], [-0.2834177315235138, 0.4257010519504547, -0.19603945314884186, -0.07271599769592285, -0.1663568913936615, -0.3863481879234314, -0.1858774572610855, 0.3931542634963989, 0.13042399287223816, 0.053795818239450455, -0.061346981674432755, 0.35501042008399963, -0.04415718838572502, -0.07177677005529404, 0.11542987823486328, -0.2388961911201477], [-0.11977177113294601, 0.32645049691200256, 0.46757903695106506, -0.26529088616371155, -0.05737166479229927, -0.09557102620601654, 0.007752344943583012, 0.27153298258781433, -0.2814819812774658, 0.0684082880616188, 0.21433724462985992, 0.3512323796749115, -0.3287886083126068, -0.029964547604322433, 0.05608011409640312, -0.03427485004067421], [-0.24346688389778137, -0.3391879200935364, 0.23537544906139374, 0.13706575334072113, 0.3352540135383606, -0.25329986214637756, -0.15765467286109924, 0.41365206241607666, 0.23597873747348785, 0.207786425948143, 0.15669380128383636, -0.4616323709487915, 0.27305951714515686, -0.4276473820209503, -0.14863836765289307, 0.06999499350786209], [-0.0018122383626177907, -0.24526186287403107, -0.14426778256893158, 0.19524991512298584, -0.06873252242803574, 0.031849101185798645, 0.187818706035614, 0.28337472677230835, 0.06952712684869766, -0.1070367693901062, 0.11354483664035797, -0.09474634379148483, -0.1101001724600792, 0.25562626123428345, -0.14858825504779816, -0.23986460268497467]], [[0.19922414422035217], [0.2034541368484497], [0.5307700634002686], [-0.27883023023605347], [0.4003073275089264], [-0.383974552154541], [-0.766700267791748], [-0.1645667999982834], [0.2845636308193207], [0.2541992664337158], [0.35335808992385864], [0.3671974241733551], [-0.434067040681839], [0.8290325403213501], [0.5850329995155334], [0.03630143776535988]]], "biases": [[0.042727213352918625, 0.05452028661966324, -0.057103171944618225, 0.18870419263839722, 0.06721391528844833, 0.11444415897130966, -0.06510317325592041, 0.1128222867846489, 0.008685710839927197, 0.02219499833881855, 0.1082402765750885, -0.10048108547925949, 0.17332971096038818, 0.16119682788848877, 0.0329153947532177, 0.15082424879074097, -0.014310361817479134, 0.1242600604891777, 0.20474331080913544, 0.11976718157529831, -0.032162073999643326, 0.1515539139509201, 0.014179624617099762, 0.06531167030334473, -0.07611224800348282, -0.020541789010167122, -0.008919073268771172, 0.031884148716926575, -0.12351305782794952, 0.13027963042259216, -0.052312999963760376, -0.07757477462291718], [0.03404712304472923, 0.15754184126853943, 0.07609833031892776, 0.08766155689954758, 0.15137965977191925, 0.18114818632602692, 0.18178632855415344, 0.01366365421563387, -0.04241432622075081, 0.14918607473373413, -0.0018767336150631309, -0.00869490671902895, 0.13147121667861938, 0.0, -0.051655564457178116, 0.0022805724292993546], [-5.441115717985667e-06]], "m_w": [[[-1.644701654868186e-07, -1.572689427575824e-07, 8.175746302185871e-09, 4.4498355578070914e-07, -2.3008412597391725e-07, 1.3584527778220945e-06, -8.856500244291965e-08, 3.631126048730948e-07, 1.5078873616403143e-07, 3.869839702019817e-07, -8.403800322298594e-09, -5.004059744351252e-07, 8.668599775774055e-07, 2.963034262393194e-07, -1.1232503993596765e-06, 5.826282745147182e-07, -3.943715114473889e-07, 6.086372081881564e-07, 2.1295684291544603e-06, 2.5255980062866e-07, 5.528640940610785e-07, 2.0312920412379754e-07, -2.655005459928361e-07, 1.1287770718126922e-08, 9.262607250093424e-07, -9.319556681930408e-08, -1.1079376619708287e-13, -8.68906369078104e-08, -3.8477890029753326e-07, -5.441154939944681e-07, -1.6525762092101104e-08, -2.581126068434969e-07], [-3.913785349141108e-07, -1.042076434032424e-07, 1.443661412636743e-09, 2.75980482911109e-09, 1.8022461745204055e-08, 8.929164891924302e-07, 3.6027495298185386e-07, 1.8415387614822976e-07, -1.101103990208685e-07, -3.890056632371852e-08, -4.745647430581812e-09, -2.3137255311667104e-07, 6.029542873875471e-07, 2.5650945190136554e-07, -7.626646834069106e-07, -1.0605684508391278e-07, 3.155804506604909e-08, 6.764317959095933e-07, 1.374233647766232e-06, 3.8152279557834845e-08, 1.6642925970700162e-07, -1.787675785180909e-08, -1.6998829721615039e-07, 3.549750715592381e-08, 5.386212365010579e-07, -8.607550938677377e-08, -4.876190597136176e-13, -9.112989829418439e-08, -2.0859592098076973e-07, -3.13437425347729e-07, 1.7647545647037077e-09, -3.346582388985553e-08], [-1.740870487765278e-07, -1.8019878922359567e-08, 1.700639185031605e-09, -3.778335866400084e-09, -4.7291068838717365e-09, 2.9096972298248147e-07, 5.12536644237116e-08, 8.57253539265912e-08, -1.8231389731226955e-09, -3.762234257465025e-08, 2.5790905411327003e-08, -8.292531106235401e-08, 2.1752944689978904e-07, 8.792895300757664e-08, -1.608825925814017e-07, -6.739168867397893e-08, 2.142976285313125e-08, 2.9327088668651413e-07, 4.655704515243997e-07, 6.788483375430587e-08, 5.148690007672485e-08, 5.978332495715222e-08, -7.076896935132027e-08, 9.61531654297687e-09, 1.1553963474852935e-07, -2.0202159944915365e-08, -4.4161766257766466e-13, -2.655388087191568e-08, -8.885617575060678e-08, -1.3189425374093844e-07, -2.590017533776745e-09, -2.693776579576479e-08], [2.5757572075235657e-08, -9.950579737960652e-08, 2.5979740581050237e-09, 1.8601795659378695e-07, -8.001988049954889e-08, 2.664113765149523e-07, -3.081136412674823e-07, 5.954625947879322e-08, 8.980067178754325e-08, 2.1608002498396672e-07, -7.585599703929802e-09, -2.1135431893526402e-07, 1.1464240401437564e-07, 5.599972041636647e-08, -3.1419932611242984e-07, 3.1716800208414497e-07, -1.3575014179423306e-07, 2.2529600585130538e-07, 5.106573439661588e-07, -4.1346254420204787e-08, 1.6900598609481676e-07, 4.353059424033745e-08, -7.932774437335866e-09, 6.789695028430742e-09, -3.841510221036515e-08, -1.3813849619737084e-08, -7.682268769828358e-27, -8.54609805145401e-09, -8.618594193876561e-08, -3.888018440534324e-08, -2.7548576753133602e-09, -1.1458418924803482e-07], [-9.829075509060203e-08, -2.4183819391510042e-08, 7.27484961160485e-09, 1.521193837561441e-07, 1.5678372733418655e-07, 3.340529701745254e-07, -6.559415055562567e-08, 1.4724668062626733e-07, 1.7042322042470914e-07, 1.2371597790661326e-07, 3.211895460708547e-08, -7.560147707863507e-08, 1.1537851207776839e-07, -4.832756417272321e-10, -9.340324425011204e-08, 2.0933445910031878e-07, -1.4061944852983288e-07, -2.1920175186096458e-07, 3.4747534982670913e-07, 6.420302867127248e-08, 2.1725443843934045e-07, 2.528158518089185e-07, -1.2236712620961043e-07, 6.6705370116437734e-09, 1.6460353435832076e-07, -1.524463399960041e-08, -2.186341114662066e-13, 1.2095474843931697e-08, -1.190159224506715e-07, -4.085324576408311e-07, -1.338084310020804e-08, -3.3224409889953677e-08], [3.776855805881496e-07, -3.7461170165897784e-08, 9.540159773280266e-09, 7.119487008822034e-07, -2.164412080674083e-07, 4.483619875372824e-07, -9.643258636060636e-07, 3.15679642426403e-07, 4.407325207012036e-07, 8.037421821427415e-07, 8.192181155664002e-08, -2.9005937562942563e-07, -3.4913435342787125e-07, -2.2376451624950278e-07, -4.5753017730021384e-07, 1.0688098655009526e-06, -5.915082965657348e-07, -7.071184882079251e-07, -2.797600870962924e-07, -1.8163564163842238e-07, 7.191396775851899e-07, 1.8170618432122865e-07, -2.3285278416551591e-07, 3.920221303133076e-08, 2.0240278786332055e-07, 1.7367010940461114e-08, -8.25707774723683e-14, 4.61140565732876e-08, -1.6289301640881604e-07, -3.001225650223205e-07, -9.446736726204108e-09, -8.292592212910677e-08], [-2.3455240238945407e-07, 1.4362321998362404e-08, 2.597558168559999e-09, -8.44154612877901e-08, 2.072969778055267e-07, 5.846707722412248e-07, -3.0958821639615053e-07, 7.432653603700601e-08, -4.248447282861889e-08, -1.8057728823350772e-07, 1.4196892550444318e-07, 3.629518730008385e-08, 6.343078950976633e-08, 7.292356940524769e-09, -1.6796233737181865e-08, -1.9397899109208083e-07, 1.1426166679484595e-08, 6.39366021459864e-07, 2.9058315931251855e-07, 1.0592479782189912e-07, 3.305854079371784e-08, 1.7018243170241476e-07, -1.2649294944822032e-07, 9.526569755280434e-09, 1.0771219649541308e-07, -7.546275782033263e-08, -2.194016886572503e-12, -5.018067739115395e-09, -7.499821208512003e-09, -4.5874395482314867e-07, 1.1612160122353998e-09, 1.253905139719791e-07], [-2.8302858368078887e-07, -1.1532679672354718e-10, 2.472815145371622e-34, 3.8918535949505895e-08, 5.703784466959405e-08, 1.7427200305064616e-07, 1.2129763149459905e-07, 1.6927708657021867e-07, 1.412232535358271e-07, -8.474692059223798e-09, 2.4201085579989012e-11, -1.459395093661442e-07, 6.461555557280008e-08, 3.439883045075476e-09, 1.6332116103967564e-08, -1.2326463405543109e-08, -2.168732926577377e-08, 7.486019626412599e-08, 2.9986375693624723e-07, 1.2500443347107648e-08, 1.44409995073147e-07, 1.0908536296483362e-07, -1.4801545944465033e-07, -1.994431638070726e-13, -1.8447224192641443e-08, 3.822274941001069e-09, 2.1082761865508573e-14, -1.741784849684791e-08, -1.44514231692483e-07, -2.4774897156021325e-07, -6.812302943970394e-10, -3.214015720232055e-08], [-1.924780406170612e-07, -4.3081239908815405e-08, 1.1141098710254482e-08, 7.228956633298367e-08, -4.3048959952329824e-08, 7.897845648585644e-07, -3.360609071023646e-07, 1.9049717536745447e-07, -3.4860917708101624e-08, 4.033649148027507e-08, 2.238562331058347e-07, -1.1453739290345766e-08, 2.945031951639976e-07, 1.3480965321832628e-07, -4.1444266685175535e-07, -6.360387061477013e-08, -6.511735506364857e-08, 6.263924774430052e-07, 5.747839963987644e-07, 1.4810369464157702e-07, 1.745792985730077e-07, 1.5159658062202652e-07, -1.7021120868321304e-07, 4.89173146434041e-08, 4.1290294916507264e-07, -4.623531779657242e-08, -2.1488488072263223e-12, -3.616469612666151e-08, -1.229506807476355e-07, -2.1604051880785846e-07, -1.3765633966045243e-08, -2.7404809088693582e-08], [-7.001079893598217e-07, -1.4048909258157494e-10, -2.1049304129573632e-34, 2.0571269487845711e-07, -4.841008660605439e-08, 2.1768437363789417e-06, -3.3406359989385237e-07, 5.543636234506266e-07, 3.3731996040842205e-07, 1.0119707383182686e-07, 3.6247780599296675e-07, -2.850238729479315e-07, 6.374431791300594e-07, 2.7992820150757325e-07, -3.7353734683165385e-07, 6.516526696032088e-08, -9.986270299577882e-08, 7.129012828954728e-07, 6.901029792061308e-07, 3.002977564392495e-07, 5.749253091380524e-07, 5.045282023274922e-07, -6.006462172081228e-07, -5.838182584941287e-13, 7.981884664332028e-07, -1.282220409848378e-07, -1.5932147962027798e-11, -1.7968525867217977e-07, -4.834489573113387e-07, -1.0304390798410168e-06, -5.505632927338411e-08, 1.0569448249952984e-07], [-4.6071301085248706e-07, -8.303646659157948e-09, 1.6502324380812536e-34, 1.8017601632891456e-07, -2.1286837181833107e-08, 1.6946107734838733e-06, -2.977130293402297e-07, 3.8941371371947753e-07, 2.384621211604099e-07, 6.22992786247778e-08, 2.736769317834842e-07, -1.4496971800781466e-07, 4.462137042082759e-07, 2.486318351202499e-07, -2.986365075230424e-07, 4.28692459308877e-08, -4.42396199673567e-08, 3.7286054066498764e-07, 2.4144151211658027e-07, 2.597907666768151e-07, 3.8337611840688623e-07, 3.128315029243822e-07, -4.0806665424497623e-07, -8.1300537049106e-13, 6.368823051161598e-07, -1.0343001122237183e-07, -9.064403741487759e-12, -1.229482506914792e-07, -3.261354777350789e-07, -6.791464102207101e-07, -6.106804306682534e-08, 9.696161384908919e-08], [-1.3320847358500032e-07, -1.3488948846784865e-09, 1.4468916600206718e-34, 3.908684576003907e-08, -7.967994264390654e-09, 3.4655158742680214e-07, -6.10609447448951e-08, 1.0372365721877941e-07, 5.3931167087739595e-08, 1.3233585782757018e-08, 5.42387681434775e-08, -6.155565301924071e-08, 1.0262360206070298e-07, 4.51415615998485e-08, -8.07708602224011e-08, 7.502540810833125e-09, -2.0028716463116325e-08, 1.423209852191576e-07, 1.792750907725349e-07, 4.970121736391775e-08, 1.0120083260289903e-07, 8.225597269984064e-08, -1.0435354624860338e-07, -6.010639577204435e-13, 1.1920307940727071e-07, -2.0366780262293105e-08, -1.342974451264134e-12, -2.7955376680210975e-08, -8.606607337924288e-08, -1.6577907047121698e-07, -7.782592348348771e-09, -5.686052517717144e-09], [-4.292656683446694e-07, -4.086066554553902e-11, 1.4468961599599836e-33, 7.972157334279473e-08, 4.4528185583203594e-08, 4.958437784807757e-07, -1.22440297900539e-07, 2.863046972834127e-07, 1.090243486601139e-07, 2.2882145955804845e-08, 4.223148053483783e-08, -2.6416023501951713e-07, 1.6579325290422275e-07, 5.719083162603056e-08, -2.024155492108548e-07, -5.288178783757758e-10, -6.707711719400322e-08, 5.266273319648462e-07, 8.355044656127575e-07, 6.295704224612564e-08, 2.700790844301082e-07, 2.392793589933717e-07, -2.7350827735972416e-07, -6.576437311389682e-12, 6.855034939690086e-08, -3.17797415050336e-08, 1.2762711623214712e-13, -6.464875212941479e-08, -2.396393483650172e-07, -3.8605097074650985e-07, 1.0977118103383532e-09, -1.3817287936035427e-07], [8.574816412476594e-10, 0.0, 0.0, -1.0727552179901068e-08, 8.89778384305373e-09, -3.85135745517573e-09, 2.4757930816576845e-08, -7.78354447561469e-09, 2.1797881277763054e-09, 1.2229395274232502e-09, -1.3412429389347835e-08, 3.8379477373950976e-10, 3.0132734085697166e-09, -7.873706131533709e-10, 1.9940538109608497e-09, 2.081103955831054e-09, 2.4599093872978983e-09, -4.783088591864271e-09, -1.4337864229219122e-08, 3.3893525763772914e-09, -9.100679321250027e-09, 5.372609912512871e-09, 1.7041472677448155e-09, 0.0, -2.0205190853772592e-09, -1.1124492993452861e-10, -2.2612838251195866e-12, -5.33939670255279e-10, 3.5324594360730543e-09, -3.765242784226075e-09, 2.5109621049068664e-09, 9.929638444816646e-09], [-6.02278873884643e-07, -4.3353075795948826e-08, 1.1141098710254482e-08, 1.3069998772152758e-07, 3.8248749945068994e-08, 1.1145178859806038e-06, -1.3948584864920122e-07, 4.4874221316604235e-07, 1.6945119796218933e-07, 3.313814644911872e-08, 2.1875712263863534e-07, -2.413549964330741e-07, 4.159731759045826e-07, 1.4749130627933482e-07, -3.59692137408274e-07, -8.067068080208628e-08, -1.0076422540805652e-07, 7.224747378131724e-07, 1.0485671282367548e-06, 1.6490555765358295e-07, 3.9996240275286254e-07, 3.1473516060032125e-07, -3.9934852225087525e-07, 4.89171974038527e-08, 4.4884953354085155e-07, -4.510415863023809e-08, -2.2080878792074543e-12, -7.081018082999435e-08, -3.4530765447016165e-07, -6.151282718747098e-07, -1.568398744211663e-08, -5.882348119712333e-08]], [[-5.872399810868956e-08, 1.5497095162686492e-08, 3.7722503520853934e-07, -1.4519477531393932e-07, 2.756549122295837e-07, -6.943977837181592e-08, -5.786693577647384e-07, -1.068311661356347e-07, 4.028311972187337e-12, 1.7709197663862142e-07, -1.1587337001501912e-41, -2.06287026571772e-07, 1.9455569599813316e-07, 0.0, 3.645865120915914e-08, 2.5353553922968786e-08], [-3.0210927093321516e-09, 6.922789008712016e-10, -8.12456768528591e-09, 2.801415455166989e-08, -6.033762378621077e-09, -3.6555354299139253e-09, 4.1778832837735536e-08, 4.031716294150556e-09, 1.0375671853876428e-15, -3.849329743843555e-09, -2.2423578026125723e-41, 7.144328462160843e-10, -9.206735818168e-09, 0.0, 1.6108338621312335e-13, -5.472102215797747e-10], [2.7686921644232143e-09, 0.0, 7.456325334942449e-09, -8.271675011606305e-11, 5.607415420882944e-09, -5.479927178697608e-09, -1.0750100365441995e-08, -1.683079786651831e-09, -1.6128720541535323e-27, 3.5559988287303668e-09, 0.0, 0.0, -5.506953115741453e-09, 0.0, 6.536495490278476e-28, 5.076180031871047e-10], [-1.2420006356705926e-08, -5.351431298095122e-08, 4.4682869315693097e-07, -1.130252016423583e-07, 3.182689454206411e-07, 2.137158077175627e-07, -6.678558293060632e-07, -1.1891340534475603e-07, 5.982571382734392e-11, 2.2047932191071595e-07, -4.90454462513686e-44, -4.890924856226775e-07, 4.5364348011389666e-07, 0.0, 1.1704573310566957e-08, 2.9029237680333608e-08], [-1.3519350972046595e-08, -1.0815314865908476e-08, 9.082235408186534e-09, 2.070361659889386e-08, -1.411084404878693e-08, 1.7906867810779659e-07, -1.2451131681245897e-08, -1.2983978336933433e-09, 1.5050774212002627e-12, 2.061585568924329e-09, 0.0, -1.7735162316512287e-07, 6.86011034645162e-08, 0.0, 1.6366645816390246e-09, 2.234843421433652e-10], [-5.3765422336482516e-08, -2.4261829878469143e-08, -2.8787633254978573e-07, 1.7514788908101764e-07, -2.347871514984945e-07, 2.6406539177514787e-07, 4.6517621399289055e-07, 9.472927331444225e-08, 2.64142475253637e-11, -1.3386735986387066e-07, 0.0, -1.659720396673947e-07, 3.0642746651210473e-07, 0.0, -4.963927047185734e-09, -2.137059240681083e-08], [-5.159539284704806e-08, 9.11076902809782e-09, -1.194302399198932e-07, 5.95881246567842e-08, -9.409887979927589e-08, 1.6954604120655858e-07, 1.62024093697255e-07, 3.5588250568707736e-08, 1.5981382883722972e-11, -6.786663675484306e-08, 0.0, -1.1451527726080712e-08, -3.2937325755710845e-08, 0.0, 2.0474759665489728e-08, -7.902798415670986e-09], [-1.189523572975304e-07, -2.1695201724014623e-07, 4.903567969449796e-07, -8.016369434926673e-08, 2.771793958800117e-07, 1.3610879250336438e-06, -8.833761739879264e-07, -1.1537187560861639e-07, 1.4172141238333325e-10, 2.44851207753527e-07, -1.1074461763559029e-41, -1.122060552916082e-06, 1.081338041331037e-06, 0.0, 8.670478734984499e-08, 2.7658158430199364e-08], [-2.5974586037591507e-08, -5.8480424058870994e-08, 6.887818813083868e-07, -1.7104784433286113e-07, 4.971589646629582e-07, 3.5893143035536923e-07, -1.100915824281401e-06, -1.878508726349537e-07, 4.0784698535079045e-11, 3.312031253699388e-07, -3.738664302818612e-41, -6.097378104641393e-07, 6.305428428277082e-07, 0.0, 1.2236980317936741e-08, 4.6299593492449276e-08], [3.185295938124e-08, -2.3610986943367607e-08, 4.3662231519192574e-07, -1.196582388729439e-07, 3.108871169388294e-07, 1.6408274916557275e-07, -6.082366326154443e-07, -1.1212436845653428e-07, 4.837587969097612e-11, 2.1003469896641036e-07, -3.514456548526641e-42, -4.6107271600703825e-07, 5.481124958350847e-07, 0.0, 2.775543705979544e-08, 2.785554364947984e-08], [-3.13925703210316e-08, 4.250805485384035e-09, -1.411120251759712e-07, 1.0555475427054262e-07, -1.169178602822285e-07, 1.1661572330012859e-07, 2.817292283907591e-07, 5.0820769814663436e-08, 1.1185392889689894e-11, -6.634623872514567e-08, -4.559825202912955e-42, -1.6088580423456733e-07, 1.8101786736224312e-07, 0.0, 9.618347895923307e-09, -1.0609654488291653e-08], [2.6156119048437176e-08, -5.0705736498457554e-08, 1.3048136793258891e-08, -1.4371536849466793e-08, 4.500445349719939e-09, 1.7765924553714285e-07, -9.343877138690004e-08, -4.07814537695117e-09, 7.15328490885625e-12, 3.157587302737852e-09, 0.0, -6.29811296448679e-08, 8.580941823765897e-08, 0.0, -1.6925322254834896e-09, 5.438947625613366e-10], [-2.5100862899307685e-07, -5.3123478949146374e-08, -3.004330437761382e-07, 2.2555316547823168e-07, -3.003084998454142e-07, 1.9227597647386574e-07, 5.982586799291312e-07, 1.2260250059625832e-07, 7.550065433958864e-11, -1.3491244033048133e-07, 0.0, -1.1357228686392773e-06, 1.0305577688995982e-06, 0.0, 1.0513569037584602e-07, -2.6896310956203706e-08], [-1.8606051810365898e-07, -6.507707439595833e-08, -3.244028050630732e-07, 2.00169779418502e-07, -2.9363951625782647e-07, 2.232061859785972e-07, 5.563726404034242e-07, 1.1906818997431401e-07, 5.2322601112875233e-11, -1.530850397557515e-07, 0.0, -5.796317736894707e-07, 4.81625022530352e-07, 0.0, 6.830867249618677e-08, -2.6090154037206048e-08], [2.7033978611257226e-08, -2.3066498044954642e-08, 4.97056333870205e-08, -1.2692841444561509e-08, 2.8681164110366808e-08, -1.5071233150365515e-09, -9.24922929357308e-08, -1.5215739779250725e-08, 0.0, 2.382911468146176e-08, 0.0, -1.6390868662341518e-09, 5.228117316846692e-08, 0.0, 3.91829675296041e-40, 3.4148333050154633e-09], [-3.3105472141414793e-08, -2.7550171921575384e-08, 5.184501787880436e-07, -2.235060776456521e-07, 3.7114790529813035e-07, 1.5410748233080085e-07, -8.122111694319756e-07, -1.508983444864498e-07, 2.601367211918504e-11, 2.4697908429516247e-07, 0.0, -4.74761350233166e-07, 3.162104178500158e-07, 0.0, 4.811251130831806e-08, 3.409875404258855e-08], [-5.5105775942365653e-08, -6.876089031493393e-08, 1.894517254186212e-07, -1.9353620928086457e-08, 9.582171855981869e-08, 5.140257712810126e-07, -3.2859190923772985e-07, -5.3318515824685164e-08, 1.7180715183862105e-11, 9.667408562563651e-08, -2.875884838333822e-41, -5.116692705087189e-07, 3.1503654440712126e-07, 0.0, 5.171268213643998e-08, 1.1025968582600854e-08], [-1.0701711516958312e-07, -3.5093478345515905e-08, -3.643038155587419e-07, 2.261105152001619e-07, -2.940442414001154e-07, 2.805691678986477e-07, 5.975406907055003e-07, 1.1782248066083412e-07, 5.618680520846908e-11, -1.6011414061267715e-07, -1.9389766850862494e-41, -2.7142468184138124e-07, 2.8655398409682675e-07, 0.0, 1.1812504752128916e-08, -2.6640122996468563e-08], [-2.1509578118639183e-07, -4.910878459440937e-08, -4.5555282213172177e-07, 2.648754104939144e-07, -3.7655132700820104e-07, 3.491785207643261e-07, 7.319733299482323e-07, 1.5130430597309896e-07, 5.2706849301698e-11, -1.9973225562353036e-07, -8.731490731207935e-42, -4.241690589878999e-07, 4.4617058847506996e-07, 0.0, 3.0066658496252785e-08, -3.389480696114333e-08], [-1.392570965208506e-07, -2.7427391913192878e-08, -1.6888493803435267e-07, 1.220664529455462e-07, -1.6845530126374797e-07, 8.95788474508663e-08, 3.179895315952308e-07, 7.00789826169057e-08, 5.914097683801245e-11, -8.38696863070254e-08, -5.1357588717504546e-42, -4.2056197457895905e-07, 5.240940481598955e-07, 0.0, 8.534500750556617e-08, -1.4982772356120222e-08], [-1.3481661653713672e-07, -2.0646044873728897e-08, 1.8912082566657773e-07, 1.4179949658910118e-08, 1.1136097555208835e-07, 2.102671317061322e-07, -2.4677854071342153e-07, -3.485995847540835e-08, 3.1900398989037626e-11, 9.748433882350582e-08, -4.591354418360263e-41, -4.476739832171006e-07, 4.358465730547323e-07, 0.0, 2.7285224746265158e-08, 1.0992477150750801e-08], [-1.3145640309630835e-07, 1.7622632519920245e-10, -1.8184363170803408e-07, 1.1902987751000182e-07, -1.4343672205541225e-07, 8.154990638331583e-08, 2.645312235927122e-07, 5.885807397021381e-08, 6.478502630191674e-12, -8.800164863487225e-08, -6.144693766064323e-42, -3.369723629020882e-07, 4.475856840713277e-08, 0.0, 3.0059017497308105e-09, -1.2961370643438386e-08], [-7.828816706023645e-08, -1.1742709915552041e-07, 5.66484629871411e-07, -1.7712031308292353e-07, 3.473199683412531e-07, 8.8898752892419e-07, -9.183328302242444e-07, -1.56392005123962e-07, 4.101102443754279e-11, 2.6524676854933205e-07, -1.9050652622495888e-41, -8.792644052846299e-07, 5.969754397483484e-07, 0.0, 9.540021039811108e-08, 3.4536448367816774e-08], [-6.03979533053689e-09, 2.5080806875799055e-10, -1.61549476018763e-08, 8.457504030445762e-09, -1.2164078633247755e-08, 1.1680613809517126e-08, 2.3329420173467952e-08, 4.653388785413881e-09, 4.1799434510471687e-19, -7.722239736551728e-09, 0.0, 0.0, 1.319507614283566e-08, 0.0, -1.0052244011088432e-27, -1.1031570101849297e-09], [-2.778588381602276e-08, 9.470124240351652e-09, -7.816317548758889e-08, 4.192358815657826e-08, -5.751120824015743e-08, 6.858293488676281e-09, 1.1141690947624738e-07, 2.800897114241252e-08, -1.3330064540384304e-15, -4.0400546907903845e-08, 0.0, -6.123109574929231e-09, 8.956702401974326e-08, 0.0, -9.868748040986475e-10, -5.40942801663391e-09], [-9.148113377932532e-08, -8.327880607339466e-08, 2.346442329326237e-07, -7.265398060951611e-09, 1.3658740272148862e-07, 5.254261168374796e-07, -4.0646864363225177e-07, -5.0933532946828564e-08, 3.954393409943968e-11, 1.1404706867779169e-07, -3.623757828743977e-41, -4.3428178742033197e-07, 4.6887430471542757e-07, 0.0, 3.281189719928079e-08, 1.372826474721478e-08], [3.2907901274440267e-15, 0.0, 1.4075555770844822e-13, -1.728710355202931e-13, 2.4863165454420966e-13, -2.3862688084200223e-13, -4.765081558499862e-13, -1.0219001887095194e-13, -6.829387455565518e-30, 8.538367224624616e-14, 0.0, 1.8270171345865366e-13, -2.69643601067196e-13, 0.0, 1.6948275465347717e-13, 2.2577497190605714e-14], [-1.0904826552859959e-07, -1.1133870714274963e-07, -5.840769290443859e-08, 9.359368391415046e-08, -9.612746509901626e-08, 8.495103998029663e-07, 4.561146127457505e-08, 3.4771019841173256e-08, 1.0004394535023664e-10, -2.9432918324800994e-08, -2.2630970198845796e-42, -4.2594325577738346e-07, 7.108269528544042e-07, 0.0, 8.19612822056115e-08, -8.078316682258446e-09], [-1.691386586344379e-08, -1.57660089428191e-08, 2.1776075698198838e-07, -7.590396933210286e-08, 1.4153590655041626e-07, 4.386910035236724e-08, -3.0330551226143143e-07, -6.045925005082609e-08, 1.5651493989743415e-11, 9.91487780765965e-08, -2.4582978959650266e-41, -2.739544981977815e-07, 1.0630465396843647e-07, 0.0, 4.751214532916492e-08, 1.3615913729836393e-08], [6.794017082256687e-08, -2.993539993667582e-08, 1.6909564237721497e-07, -4.747631265900054e-08, 1.209286324410641e-07, 1.3325168879418925e-07, -3.01211912301369e-07, -4.575566947551124e-08, 8.088064940015016e-12, 8.086723113365224e-08, 0.0, -8.099152637441875e-08, 1.2882364330835117e-07, 0.0, 2.95891743063299e-16, 1.1385422382659272e-08], [-1.5213869053454232e-10, 9.508141496361588e-11, 2.0613670770330828e-09, -3.4313298868937636e-09, 4.97507635088823e-09, -4.436440548261089e-09, -9.563972724890846e-09, -2.0386679011608067e-09, 1.332894038197363e-11, -1.5975931688672063e-09, 0.0, 3.1917535281422715e-09, -2.261204556930352e-09, 0.0, -4.004774289967372e-09, 4.528105113088543e-10], [1.1140590672198414e-08, 6.707043809228708e-09, -1.772534119481861e-08, 1.0427477548091701e-08, -1.3710334201277874e-08, 1.8500788456776718e-08, 8.763223036112322e-09, 5.177554385227268e-09, -3.278798663450072e-26, -8.396455086767673e-09, 0.0, -1.8437759763401118e-08, 4.2331393501626735e-08, 0.0, 1.4312477591982287e-10, -1.1894076834551015e-09]], [[6.259715519263409e-07], [1.948419914299393e-08], [4.1213302210962866e-06], [-2.2598906070925295e-06], [1.987479663512204e-06], [-1.3862867263014778e-06], [-2.1692492282454623e-06], [-1.0205868647972238e-06], [1.242566032705339e-11], [3.0341086585394805e-06], [-1.3858841812172441e-42], [2.0516364429568057e-07], [-1.120768047258025e-06], [0.0], [1.159927265348415e-08], [1.1722694637228415e-07]]], "v_w": [[[9.184772734038837e-12, 8.852416548280409e-14, 3.091844322748857e-15, 2.1898156898902954e-11, 1.418207478537381e-11, 5.1766256212171236e-12, 1.1753706341544046e-10, 2.3260260904878205e-12, 4.283556582357351e-12, 1.7259849799389215e-11, 9.358618480864722e-13, 1.0663754601569764e-11, 5.727228153534769e-12, 2.414614515278135e-12, 2.305086850562521e-11, 6.617887488014063e-11, 4.3135189864429435e-11, 1.7986691996929594e-11, 1.3808188099873053e-11, 5.9394724381822694e-12, 1.3020113633077646e-11, 1.7899932838044696e-12, 4.346141068561904e-12, 1.5339847989938316e-14, 7.415719427417145e-11, 1.742072306722131e-12, 6.118965830019307e-20, 2.3338024221497555e-11, 1.0002120659491354e-12, 1.6199628444235614e-11, 3.068428943954959e-15, 7.019604515712263e-12], [4.992280894233758e-12, 7.238387135771046e-14, 9.752671709632602e-16, 1.0156238697267561e-11, 2.853457921336844e-12, 4.633486736654868e-12, 3.0224718561289166e-11, 7.002116985191376e-13, 2.0610843760870967e-12, 7.811931657109028e-12, 6.216110525619767e-13, 2.5704128495812606e-12, 3.975724263693969e-12, 1.69532844793846e-12, 9.012445303935301e-12, 2.7874150904105832e-11, 8.7359121672681e-12, 1.4476282152176001e-11, 1.0291842031384668e-11, 2.677670151579603e-12, 3.411978382120151e-12, 2.7757630178745774e-13, 8.622426774310132e-13, 1.665528846295835e-14, 2.9059138775822113e-11, 5.425895193214569e-13, 4.790293917161964e-19, 5.0574054492880105e-12, 3.081334558167892e-13, 5.526494626512113e-12, 7.98577241660492e-15, 2.7719040170820497e-12], [9.564502239257228e-14, 4.014628273509057e-15, 9.365245589352283e-17, 2.194555707947174e-13, 1.392443425103293e-13, 1.4674196645129978e-13, 1.058769174763774e-12, 5.1634664290567053e-14, 5.244174777589705e-14, 1.6109739952620272e-13, 2.869540271632082e-14, 8.702236929105864e-14, 1.4946132168274645e-13, 5.810271290788635e-14, 2.9941877427962227e-13, 5.471676172048856e-13, 2.134649743209746e-13, 6.106735126257257e-13, 3.8680435807472713e-13, 1.3161975849496077e-13, 1.1388057109731203e-13, 4.6090803157601556e-14, 3.603928001296927e-14, 4.866003111650983e-16, 7.686280539993817e-13, 1.6947763857447576e-14, 3.808754939958006e-19, 1.166088438916274e-13, 2.055886521136821e-14, 1.6646624671160654e-13, 4.751358261031297e-16, 9.166590555186038e-14], [8.940560965176036e-13, 1.48672086875681e-14, 4.368231494702784e-16, 1.224097212482178e-12, 4.716933224221953e-13, 5.88977000851032e-13, 3.780149370607999e-12, 1.1325635524903066e-13, 2.610047594719944e-13, 1.0699568401412174e-12, 4.5453688691599395e-14, 3.12414238359468e-13, 7.82921253869584e-13, 3.105622855235912e-13, 9.469778477003143e-13, 3.423550505587958e-12, 1.0967672083028734e-12, 2.645524424527146e-12, 2.0348122058838625e-12, 5.900458073526682e-13, 4.765812852865203e-13, 1.6282794882381546e-13, 1.3612961940415863e-13, 1.2045459666534353e-15, 2.6841144324524224e-12, 5.4248052312180425e-14, 3.3488429313532416e-21, 5.109603603940804e-13, 5.72360762301008e-14, 6.267762459218063e-13, 1.6949709492127419e-15, 3.090184629451348e-13], [1.1349562782647649e-12, 1.5328396104491437e-14, 4.975424415964069e-16, 4.078340041981793e-13, 5.22911249890845e-13, 5.088077854008277e-13, 2.389775877187361e-12, 1.959060626395559e-13, 1.0002639856806703e-13, 5.091217161398709e-13, 1.9693002382883268e-13, 2.2332233718530548e-13, 5.222398034854248e-13, 1.4936531558037286e-13, 6.097712395777832e-13, 1.5133767719902047e-12, 7.323867532403605e-13, 3.9470731370838674e-12, 1.7132397930885723e-12, 4.851194858150609e-13, 3.5296602880069416e-13, 4.690197340749547e-13, 1.8991073633383565e-13, 3.1940468946480872e-16, 6.111005256513591e-13, 2.6699406845565737e-14, 1.8126587789303283e-19, 2.1744222091293897e-13, 1.2727073897805113e-13, 3.731005576105423e-13, 9.592936118857018e-16, 1.4971330382015924e-13], [1.4802232790184222e-12, 4.142730402429892e-14, 1.2644964175612529e-15, 7.855421499912418e-13, 8.030620439469782e-13, 1.6150655032104444e-12, 4.021160574657623e-12, 5.004532487203062e-13, 3.173150761245913e-13, 7.478094749338582e-13, 3.9732429043919104e-13, 4.767607749561753e-13, 9.121065448064458e-13, 2.9895714809963225e-13, 1.1499731288749926e-12, 2.545152890526259e-12, 1.2942878106075861e-12, 8.320401659323018e-12, 3.1488462011453056e-12, 9.279714583559917e-13, 4.934966281108788e-13, 8.394136080669412e-13, 4.4875794703511107e-13, 3.2204925338107874e-15, 2.1611360704471005e-12, 6.793030087005533e-14, 4.381965707427509e-20, 5.427695510921982e-13, 2.3401926555442765e-13, 8.114791390928522e-13, 2.6947626886143295e-15, 3.2534825528118816e-13], [1.5604245326428234e-12, 2.0606883509148056e-14, 3.6301404840529837e-16, 6.53877234475797e-13, 4.929804394565585e-13, 6.744178241042953e-13, 2.0889891379216596e-12, 2.423014317399358e-13, 2.9351117348218325e-13, 8.696895742628385e-13, 1.555704214539419e-13, 1.1783120052594187e-13, 8.039610101782946e-13, 2.8699414264359013e-13, 2.689341533756301e-13, 2.5436556073260563e-12, 7.937837128053904e-13, 5.200163216700915e-12, 2.638940715254945e-12, 5.809284802336945e-13, 3.202752733161285e-13, 5.092533924937193e-13, 2.400328471142271e-13, 2.9820581060541814e-16, 5.016504789692733e-13, 3.1617178493370535e-14, 8.104041489595334e-18, 2.583609324743885e-13, 1.084762840533951e-13, 3.7359964297559167e-13, 1.6158984118833032e-15, 9.829912220576248e-14], [1.3768687253702672e-13, 3.5366980799226707e-19, 4.5617072077738805e-22, 3.589526069501352e-14, 1.4829446264713608e-13, 4.235848596791797e-13, 9.901901347475484e-13, 1.4632548373926663e-13, 5.888892211326421e-14, 3.2552821251303e-14, 8.070685775501268e-14, 8.947057911169384e-14, 1.1342710353866997e-13, 4.2702390153645867e-14, 2.63468717329185e-13, 5.6510670437808636e-14, 4.2945508938298585e-14, 1.517280550332456e-12, 3.467351460204743e-13, 1.600982530141487e-13, 6.789334990476431e-14, 1.3644940483493323e-13, 8.111605598369945e-14, 4.733109370452525e-20, 2.908889221078098e-13, 1.3618400061343825e-14, 6.302959620325569e-19, 4.791807684152716e-14, 5.280827926096472e-14, 1.7385470504633488e-13, 5.831826606406186e-16, 5.164942976890359e-14], [2.7841040562380515e-13, 6.644181325997714e-14, 1.941129735113156e-15, 1.0551408108783883e-13, 3.378910107439126e-13, 5.714833445878698e-13, 1.4810490073929872e-12, 2.99107960621825e-13, 8.704118697501484e-14, 5.5324346585070364e-14, 1.5985731618636811e-13, 1.97401922824407e-13, 4.297983952246398e-13, 1.128188661199056e-13, 5.565319255787515e-13, 2.1771287843277282e-13, 1.8137749603023418e-13, 3.277195138526312e-12, 1.6233390499886813e-12, 5.039762010494719e-13, 1.518756772905458e-13, 3.805862688801426e-13, 1.6067617342966495e-13, 6.708085896109904e-15, 1.7642859829331003e-12, 3.920270751360706e-14, 5.097054260917561e-18, 7.265349888548045e-14, 1.1464122023647355e-13, 3.2968744921590964e-13, 2.5930382668138243e-15, 2.0528550918625516e-13], [3.1656968713100753e-12, 1.679269155362354e-16, 2.540382732765803e-21, 1.5568279087760373e-12, 3.3063523707105302e-12, 6.891322582025516e-12, 1.9018524602398834e-11, 4.57823015609371e-12, 1.0301867865714076e-12, 6.480484009661891e-13, 1.82351963390337e-12, 1.7035027902179145e-12, 2.514225156194372e-12, 8.523673845732549e-13, 4.881401272777142e-12, 8.771862901844896e-13, 1.0989226022217746e-12, 3.7867303043226386e-11, 1.1732086656335294e-11, 3.154900602916899e-12, 1.5259555771751643e-12, 2.8930679466659948e-12, 1.8946439469397225e-12, 2.4061430323551674e-19, 1.178465831863651e-11, 3.861497439080347e-13, 3.4584114361398707e-16, 9.473481027422181e-13, 1.3434393571556957e-12, 3.7708425791593836e-12, 1.207574486369531e-13, 1.7857152388722763e-12], [1.4092537900523006e-12, 8.861791043072499e-16, 2.9326931311598584e-21, 6.74085299297994e-13, 1.4869934710642907e-12, 3.1435561619053143e-12, 8.38918691459245e-12, 1.3972672845141698e-12, 4.247666129421346e-13, 2.1492871501646582e-13, 8.113981491905675e-13, 7.829521536314998e-13, 1.0211157006750904e-12, 3.4518397797229927e-13, 2.1655164640643765e-12, 2.1801630596327004e-13, 5.247699518852456e-13, 1.7399430854436737e-11, 5.85439596106907e-12, 1.0588487552032344e-12, 6.714396833668035e-13, 1.165879242107093e-12, 8.238860440233642e-13, 8.397943414126371e-19, 5.699052341157085e-12, 1.3114882172881454e-13, 1.0852145092063713e-16, 2.328614460544304e-13, 4.964470674828636e-13, 1.5552387936518253e-12, 3.43081852261385e-14, 8.750436898512237e-13], [7.653828336092253e-14, 4.373014054481219e-17, 2.2903720374346604e-21, 2.9456536358328164e-14, 8.66083802440222e-14, 1.7443347927106195e-13, 4.952260389962104e-13, 8.143657325094047e-14, 2.5068893833089627e-14, 1.3348640396434065e-14, 4.608180089143814e-14, 4.353813384577916e-14, 6.651363487764073e-14, 2.3235718023587558e-14, 1.3164863893033035e-13, 2.0903631337823234e-14, 2.751588900847847e-14, 9.178136766221923e-13, 2.837084950649271e-13, 8.121243478056983e-14, 3.69222745910322e-14, 7.740724429711535e-14, 4.4426014109881853e-14, 2.341443032792801e-19, 2.897361983580232e-13, 7.331201448592794e-15, 2.606264544010135e-18, 1.683991623447137e-14, 2.827163890907307e-14, 8.970644051805449e-14, 1.0730015381866056e-15, 4.2799056941718316e-14], [3.91279483856824e-13, 2.0044720368140247e-18, 2.2905401473538776e-19, 1.2133286183494546e-13, 4.947288780900172e-13, 9.239722702225617e-13, 2.6571509749440114e-12, 4.493698978463162e-13, 1.5252161783985835e-13, 9.304245606389303e-14, 2.3275148084908603e-13, 2.7009907439985714e-13, 4.939441325575722e-13, 1.7687832806496245e-13, 8.014482090132335e-13, 2.6271432945756956e-13, 1.4150342681450157e-13, 4.1075020988656785e-12, 1.5205443241322891e-12, 7.233992593315419e-13, 1.871614842274827e-13, 5.29224288090685e-13, 2.2947767817915743e-13, 1.4408420862044774e-17, 1.558456597279545e-12, 4.5915921347179645e-14, 8.546056823646467e-19, 1.2894648185584473e-13, 1.525643896155629e-13, 5.451106688432461e-13, 1.5825219256296948e-15, 2.0293082535552398e-13], [3.336712865712366e-15, 0.0, 0.0, 3.794433165024355e-15, 2.087803654325605e-15, 3.752818859842225e-15, 1.2399118156627888e-14, 1.0464960773220056e-14, 1.275964184875892e-15, 1.7443626050374426e-15, 1.688090712340432e-15, 1.0708840616975883e-15, 2.201028242450982e-15, 9.037428618641598e-16, 2.0730400818131994e-15, 2.536496064727521e-15, 1.0813888584303177e-15, 2.048117704351194e-14, 7.517098922493748e-15, 6.003565818714666e-15, 1.308926154380938e-15, 2.925814641900463e-15, 1.7362396649523923e-15, 0.0, 9.173527755024051e-15, 5.723060693836038e-16, 6.136085340922463e-18, 2.5580411947738815e-15, 1.9559398944376605e-15, 5.293005549372558e-15, 4.1593206120809636e-16, 1.3201115420867862e-15], [9.743666377209914e-13, 6.650366699391744e-14, 1.9410299969836167e-15, 3.132942581578202e-13, 1.1561062437243086e-12, 2.3585909701001606e-12, 6.274020799418301e-12, 1.0365319713656618e-12, 3.371237208664446e-13, 1.9187709960396399e-13, 5.625571623119052e-13, 6.156704920184941e-13, 1.0523992701599871e-12, 3.3187255027433693e-13, 1.8458964825412982e-12, 4.627753800827417e-13, 4.290028889856329e-13, 1.111015793253678e-11, 3.755471628119622e-12, 1.3288256129131981e-12, 5.036290395138421e-13, 1.1424541868088056e-12, 5.616712607167673e-13, 6.711889921076023e-15, 3.70890514481137e-12, 1.0319664637799611e-13, 9.528643373397436e-18, 2.4827562965581973e-13, 3.705755591710408e-13, 1.166907391027261e-12, 6.812764345313959e-15, 5.27577168150245e-13]], [[1.2405888490975292e-13, 1.6255902602745759e-13, 1.3469062020224354e-12, 1.4850401182202322e-13, 4.5008837152096803e-13, 9.51580177502298e-13, 2.805552882026441e-12, 8.526190956601246e-14, 9.054429496335278e-17, 2.0477266800614236e-13, 3.849613348600478e-21, 8.195214797578065e-13, 8.54070178295252e-13, 0.0, 1.0669412673237205e-13, 1.3543349554085305e-14], [3.741918392844009e-15, 1.6020577347064904e-16, 2.6415684689553437e-14, 2.8377441794514603e-15, 9.018486844358624e-15, 1.146989252030382e-14, 5.959895933976139e-14, 1.814072251926169e-15, 1.584269778116354e-16, 3.921653702053688e-15, 1.4385435025011482e-20, 1.0947753605112797e-17, 9.832355910629077e-15, 0.0, 9.98902990081681e-15, 2.389383064811039e-16], [8.730901688711252e-16, 0.0, 5.7624943126954615e-15, 2.552878158383452e-16, 1.340642456057928e-15, 1.8962772229736725e-15, 1.135693390052388e-14, 2.8630266835589027e-16, 1.643591995275105e-17, 6.310703565279101e-16, 0.0, 0.0, 1.1030881484730783e-15, 0.0, 1.4870493481337552e-15, 1.0162828356099184e-16], [4.3218485973155196e-13, 1.3911350370265918e-12, 5.033530016407273e-12, 5.481567890569528e-13, 1.5720069560312688e-12, 1.405720266751953e-12, 1.0212936399356387e-11, 3.1093077873696473e-13, 1.2920322940061877e-14, 7.096107555726316e-13, 1.1078808158944973e-25, 7.271468041407381e-13, 2.886549723205012e-12, 0.0, 5.833465763389889e-14, 3.0799510484331646e-14], [3.1764120413807495e-13, 7.037811766740301e-14, 2.380989719621973e-12, 1.0176309393674504e-13, 3.6542093678239296e-13, 1.1173821470953499e-13, 4.397305870124102e-12, 9.78148090953132e-14, 1.5085249155993223e-15, 2.0121132136754344e-13, 0.0, 9.234759766781064e-14, 3.045534405720328e-14, 0.0, 1.99476174375093e-14, 1.1174510616959385e-13], [3.0697947845824067e-14, 1.1367838772093422e-13, 7.987529366225432e-13, 1.0912896020870422e-13, 3.10302104107249e-13, 2.19835448130902e-13, 1.6683382106363887e-12, 5.716760208664476e-14, 3.3813705602739807e-15, 1.2734137474958857e-13, 0.0, 7.902792325707383e-14, 3.614295277995505e-13, 0.0, 7.040828389878653e-15, 3.089365692586954e-15], [1.9408003578812866e-13, 1.9042608473147232e-13, 2.24565852025016e-12, 1.010802227509322e-13, 3.7478578725734513e-13, 8.620653426131761e-14, 3.990095580330699e-12, 9.350247626941505e-14, 1.7341374985838966e-14, 2.11577608731639e-13, 0.0, 9.065014364151303e-14, 6.440671157211322e-14, 0.0, 1.634022642671082e-13, 6.79460150252928e-14], [6.386502004324113e-12, 1.1551834142031758e-11, 5.563502783467733e-11, 3.3275706409069405e-12, 1.1126642142367249e-11, 8.811822799215108e-12, 1.0414469286956773e-10, 2.5479139197787104e-12, 1.5139536217560756e-13, 5.869124197060982e-12, 3.4912789495805765e-21, 5.69876567810268e-12, 1.4815029411585634e-11, 0.0, 3.09102504876535e-12, 1.5895707059648823e-12], [2.3171549314721096e-12, 4.0184266504594834e-12, 2.3495039247478644e-11, 1.5395118990388368e-12, 4.923120071331777e-12, 3.0748305377553686e-12, 4.630977892827737e-11, 1.134871276814442e-12, 3.126277313197576e-14, 2.554286426467711e-12, 3.994099102614261e-20, 1.5752312648720235e-12, 5.23378866287838e-12, 0.0, 5.98689880223352e-13, 6.683204879266713e-13], [3.0536334637114304e-13, 7.574653794820141e-13, 2.469620645137449e-12, 2.983954500591218e-13, 7.951247624725377e-13, 1.30946046107e-12, 4.859835624204667e-12, 1.5302747946848577e-13, 9.423598986107833e-15, 3.7215811487210926e-13, 3.5412521393448496e-22, 9.8640366708036e-13, 2.3692606036795905e-12, 0.0, 4.011582732665886e-13, 1.3697165655109002e-14], [1.3920590923738058e-14, 8.241987177655136e-15, 5.654768103421914e-13, 4.59408918784647e-14, 1.6616253457803903e-13, 2.292880241141354e-13, 1.2183760944584066e-12, 3.440441833334196e-14, 1.8356171278626453e-14, 7.237897889540712e-14, 5.953282078390754e-22, 1.9504325455069194e-13, 1.6492357609795838e-13, 0.0, 4.2693580333368064e-13, 7.682580361267032e-15], [5.066474041519331e-13, 1.1473153156693616e-12, 8.936543345605674e-12, 6.296861361325401e-13, 2.174367890600548e-12, 5.152016508726265e-13, 1.7685873598960455e-11, 4.744881787824284e-13, 1.1420229284540406e-14, 1.0286163197245624e-12, 0.0, 8.736259870904817e-14, 1.1675620322990077e-12, 0.0, 2.8263431159814174e-14, 2.0703711911106842e-13], [2.81692394020136e-13, 4.3372030684822593e-14, 9.39475233718845e-12, 1.0049894944019755e-12, 3.0838001423283412e-12, 4.6804717220017e-12, 1.950460105926144e-11, 6.027040303467623e-13, 1.2401340262861715e-13, 1.3920837139275166e-12, 0.0, 5.259447391492422e-12, 5.415560361266003e-12, 0.0, 5.37060673710954e-12, 1.143263543730566e-13], [5.752596478596911e-14, 3.6396250190128335e-14, 1.943434345744177e-12, 2.1524007077534935e-13, 6.46549328832402e-13, 1.2631146129038484e-12, 3.873949338401017e-12, 1.2286886460523283e-13, 7.184919028008566e-14, 3.109266587687093e-13, 0.0, 1.536051559385132e-12, 1.5115206178709095e-12, 0.0, 1.840485663179292e-12, 1.6603324685710193e-14], [1.082502211241683e-13, 8.750089547241227e-14, 1.4294835931280558e-12, 8.429441498113144e-14, 2.986037252964563e-13, 5.345115016287642e-15, 2.8119175824597997e-12, 6.952333267461544e-14, 0.0, 1.4960461255236757e-13, 0.0, 1.3288374637511632e-15, 2.368027310155861e-14, 0.0, 6.086911834073827e-22, 4.1062076969970024e-14], [3.2623006401312493e-13, 9.179782585119756e-13, 2.835444769602735e-12, 2.2461175172398817e-13, 7.621598664686591e-13, 1.3774045922940181e-12, 5.430946924817048e-12, 1.5525388862968476e-13, 5.091762803082671e-15, 3.6901536513977984e-13, 0.0, 1.2588907780802794e-12, 2.1535624845914203e-12, 0.0, 3.1761637590832503e-13, 2.6419391305730622e-14], [2.6183352361264234e-12, 1.5923502750744833e-12, 1.948223180003872e-11, 5.623773473815985e-13, 2.436823746260197e-12, 1.6282486426863474e-12, 3.50024280393324e-11, 7.086199574173058e-13, 2.5194464773454182e-14, 1.4990979377987879e-12, 2.3657964901843266e-20, 1.4427969452848743e-12, 8.808940989840641e-13, 0.0, 1.0003227629909461e-12, 8.695939476312253e-13], [3.157906878700767e-14, 3.1820886529053405e-14, 8.437769797101091e-13, 8.013548321011282e-14, 2.665619190222318e-13, 3.772982902668087e-13, 1.905899700213598e-12, 5.514137391593628e-14, 1.8599093551635408e-14, 1.0882297802683807e-13, 1.0724996832370245e-20, 1.6259420838795474e-13, 2.768108821587373e-13, 0.0, 2.458727123809401e-13, 1.3785806806006218e-14], [2.604130120906472e-14, 1.5666450341872418e-14, 1.1922065982009067e-12, 1.3183438986753143e-13, 4.221764539520667e-13, 5.548294029072975e-13, 2.7338580618069264e-12, 8.357320369599408e-14, 5.032579340508592e-15, 1.6763114063077927e-13, 2.182767875865659e-21, 4.75920951953368e-13, 5.671740746331089e-13, 0.0, 3.6272531202599656e-13, 1.4994981913595516e-14], [6.327868730306857e-14, 1.869406627381335e-14, 2.884267911312799e-12, 3.1421555895388975e-13, 9.59094782759795e-13, 1.589353757110168e-12, 5.823559950240975e-12, 1.8404185510648152e-13, 1.0446348918270038e-13, 4.57898476080576e-13, 7.491549736410181e-22, 1.7314316213407066e-12, 1.633172438432473e-12, 0.0, 2.2547213662099663e-12, 2.610833031431274e-14], [2.1352913198453144e-13, 2.086781946243968e-13, 1.558514602095773e-12, 2.0462287192348633e-13, 5.320999717228769e-13, 1.6478433201294607e-12, 3.4244159157620357e-12, 9.786388957240891e-14, 1.2423713452317312e-14, 2.6769778342823625e-13, 6.017793240050975e-20, 1.2951669901492546e-12, 1.595498689763164e-12, 0.0, 7.894803517524696e-13, 1.295635741570397e-14], [3.0116988276093076e-14, 3.716344085886238e-16, 5.902321274960098e-13, 5.687494203897303e-14, 1.804489852897176e-13, 2.3959119735926515e-13, 1.2251473707064475e-12, 3.631914308687388e-14, 4.220740823970945e-16, 7.858321740723817e-14, 1.0728770843915018e-21, 2.181948740610784e-13, 1.8359502828614593e-13, 0.0, 1.7856208048630529e-13, 9.082703800221761e-15], [4.280941920398185e-12, 4.019496107482423e-12, 3.00707202194328e-11, 9.830172700148188e-13, 4.10160273800475e-12, 5.469027140880822e-12, 5.607186243095086e-11, 1.1385222192100697e-12, 3.1832294368787026e-14, 2.468468571908966e-12, 1.0367767091053142e-20, 5.09763065092983e-12, 4.799117266779396e-12, 0.0, 1.551625147810931e-12, 1.2693781572745144e-12], [7.881656132580046e-17, 3.239856686366866e-17, 6.743650162587152e-16, 6.704097032672826e-17, 2.356266723551356e-16, 2.8011098986035934e-16, 1.3889716149294165e-15, 4.491773036769947e-17, 6.0315292225437646e-30, 1.0115444803634186e-16, 0.0, 0.0, 2.2739406797319544e-16, 0.0, 5.363696758554642e-18, 1.509654662336335e-18], [2.4019794400004235e-14, 5.082800770984247e-14, 3.6753551048950006e-13, 5.357924187329201e-14, 1.4028935077427945e-13, 2.1848774417292105e-14, 7.547708660328445e-13, 2.560216883602199e-14, 2.5384087180619806e-16, 5.924969716242234e-14, 0.0, 3.068121047478632e-15, 1.2521602678339239e-13, 0.0, 1.0989724153823697e-15, 4.251255397654018e-15], [1.1899294483780354e-12, 1.973072096331241e-12, 1.0949631826240314e-11, 6.519098954237135e-13, 2.1177265670246914e-12, 1.627886844421389e-12, 2.092061940350831e-11, 4.955057631567117e-13, 1.8233022852491045e-14, 1.157063919503265e-12, 3.7552587786752434e-20, 1.069914773096925e-12, 2.2898768384932433e-12, 0.0, 4.709096068818142e-13, 3.32302571960999e-13], [6.407370509300946e-21, 0.0, 7.594761896082921e-19, 2.1380143755006642e-20, 1.805272831542054e-19, 2.824559679011987e-19, 1.9581164216962468e-18, 4.5236378356682613e-20, 1.099616295459518e-19, 1.566372795502568e-20, 0.0, 3.934971844688058e-19, 8.166407805854536e-20, 0.0, 1.1639970808536214e-18, 1.548343166205753e-20], [8.430472574379178e-13, 1.9626492271662688e-12, 5.607869203727578e-12, 2.7991086011536215e-13, 9.633175333811916e-13, 2.526974723221498e-12, 9.930256270052062e-12, 2.216471093035438e-13, 1.1157193875385718e-13, 5.871594443290773e-13, 1.4414971441428797e-22, 2.087462147581931e-12, 3.411657241436661e-12, 0.0, 1.860832668509893e-12, 1.290808687151243e-13], [2.4755062366307867e-13, 3.756206771402676e-13, 2.449619500299871e-12, 9.118649167997803e-14, 3.4593519455256017e-13, 7.750112400797815e-13, 3.675128777691494e-12, 8.269649749053157e-14, 4.53787228876356e-14, 2.2810944214253503e-13, 1.72883284495383e-20, 8.147994540359804e-13, 4.904584225730313e-13, 0.0, 7.982652624853592e-13, 5.5712701026991093e-14], [6.788798581451594e-13, 9.030380609953426e-13, 7.877176341763992e-12, 4.978057896454224e-13, 1.7272898606215947e-12, 3.4966834657791657e-13, 1.5529499561295346e-11, 3.9319231464468585e-13, 8.414684701864316e-16, 8.384610822483041e-13, 0.0, 3.185248085798599e-14, 8.601325489528133e-13, 0.0, 4.423172301592964e-17, 2.2990645303332113e-13], [3.13401078960143e-19, 7.935904622384743e-17, 3.313168695558838e-14, 9.20935513111054e-16, 4.109803860077865e-15, 4.533608324907082e-15, 7.906005629896087e-14, 1.4784777982240153e-15, 1.9629626022516986e-14, 2.6902075571822327e-15, 0.0, 1.6556299110544528e-14, 3.0916437876985945e-15, 0.0, 1.3380674335466275e-13, 3.613764425506802e-15], [4.061129687746301e-13, 2.278922493423319e-13, 3.500908113754364e-12, 1.1171922761898934e-13, 4.886990334976304e-13, 5.210075941638678e-15, 6.577197553953029e-12, 1.3828402398857742e-13, 2.313352858069901e-18, 2.785536829408991e-13, 0.0, 6.72050551669902e-15, 5.0962133682974295e-14, 0.0, 1.8043050819241552e-17, 1.653266147030527e-13]], [[2.6473688692629782e-12], [1.1342966496630247e-11], [2.5058657926457784e-10], [2.0209695028583496e-11], [2.7759886403466716e-11], [2.3110046862284683e-11], [6.802049895560103e-11], [5.4976488639280063e-11], [8.743236034258403e-14], [9.956753477258218e-11], [7.364494284402347e-23], [7.799092101301586e-12], [1.038823627813601e-11], [0.0], [1.2457968142330633e-13], [2.7331026331012254e-11]]], "m_b": [[-6.02279271788575e-07, -4.3353132639367686e-08, 1.1141104039325e-08, 1.306995329741767e-07, 3.8249162059855735e-08, 1.1145183407279546e-06, -1.3948579180578236e-07, 4.487425542265555e-07, 1.6945139691415534e-07, 3.313769880719519e-08, 2.1875703737350705e-07, -2.4135491116794583e-07, 4.159736306519335e-07, 1.4749168997241213e-07, -3.596915973957948e-07, -8.067080869977872e-08, -1.0076372802814149e-07, 7.224761588986439e-07, 1.0485653092473513e-06, 1.6490511711708677e-07, 3.9996280065679457e-07, 3.147349332266458e-07, -3.993486643594224e-07, 4.891720806199373e-08, 4.48849959866493e-07, -4.510423678993902e-08, -2.2080878792074543e-12, -7.080999608888305e-08, -3.4530754078332393e-07, -6.151283855615475e-07, -1.568398744211663e-08, -5.8823346194003534e-08], [-7.27942079947752e-08, -5.4574066155055334e-08, 3.963515737837042e-08, 6.532467722308866e-08, -8.188210998127943e-09, 3.4984020658157533e-07, -2.372956942053861e-09, 6.237433680666982e-09, 4.322122867939093e-11, 2.743606586363967e-08, -2.9193250907278914e-41, -5.144995611772174e-07, 4.384049248074007e-07, 0.0, 3.0957785668306315e-08, -6.484766337192666e-14], [5.1640410562081226e-14]], "v_b": [[9.743665293007742e-13, 6.650369409897175e-14, 1.9410299969836167e-15, 3.1329436657803744e-13, 1.1561057016232223e-12, 2.3585918374618986e-12, 6.274020799418301e-12, 1.0365318629454445e-12, 3.371237750765532e-13, 1.9187707249890967e-13, 5.625572165220138e-13, 6.156705462286027e-13, 1.0523990533195526e-12, 3.3187255027433693e-13, 1.8458958320199947e-12, 4.627752716625244e-13, 4.2900305161595875e-13, 1.1110152728366351e-11, 3.755471628119622e-12, 1.3288255044929809e-12, 5.036289853037335e-13, 1.1424541868088056e-12, 5.616710438763328e-13, 6.711893732724286e-15, 3.708906445853977e-12, 1.0319663960173253e-13, 9.528642546216823e-18, 2.482756025507654e-13, 3.705755320659865e-13, 1.166907391027261e-12, 6.812762651248064e-15, 5.275771139401364e-13], [1.3468868761187108e-13, 2.562343241231668e-13, 3.206163633195924e-13, 1.6286297194211853e-14, 3.991784218438082e-15, 8.923004479396979e-13, 4.611285311928448e-13, 9.606474881727694e-16, 2.1128789635862372e-14, 5.937020623389411e-14, 2.43504604773922e-20, 8.683242384670276e-13, 1.0094200865798375e-12, 0.0, 8.331139597639314e-13, 2.1179643270554033e-16], [4.88653231725268e-25]], "t": 690} \ No newline at end of file diff --git a/backend/ai.py b/backend/ai/engine.py similarity index 93% rename from backend/ai.py rename to backend/ai/engine.py index 843757f..d6185e9 100644 --- a/backend/ai.py +++ b/backend/ai/engine.py @@ -1,12 +1,15 @@ import asyncio -import random import logging +import os +import random from dataclasses import dataclass from enum import Enum from itertools import combinations, permutations + import numpy as np -from card import Card -from game import action_play_card, action_sacrifice, action_end_turn, BOARD_SIZE, STARTING_LIFE, PlayerState + +from game.card import Card +from game.rules import action_play_card, action_sacrifice, action_end_turn, BOARD_SIZE, STARTING_LIFE, PlayerState logger = logging.getLogger("app") @@ -77,7 +80,21 @@ def choose_cards(cards: list[Card], difficulty: int, personality: AIPersonality) elif personality == AIPersonality.CONTROL: # Small cost_norm keeps flavour without causing severe deck shrinkage at D10 scores = 0.85 * pcv_norm + 0.15 * cost_norm - elif personality in (AIPersonality.BALANCED, AIPersonality.JEBRASKA): + elif personality == AIPersonality.BALANCED: + scores = 0.60 * pcv_norm + 0.25 * atk_ratio + 0.15 * (1.0 - atk_ratio) + elif personality == AIPersonality.JEBRASKA: + # Delegate entirely to the card-pick NN; skip the heuristic scoring path. + from ai.card_pick_nn import CardPickPlayer, CARD_PICK_WEIGHTS_PATH + from ai.nn import NeuralNet + if not hasattr(choose_cards, "_card_pick_net"): + choose_cards._card_pick_net = ( + NeuralNet.load(CARD_PICK_WEIGHTS_PATH) + if os.path.exists(CARD_PICK_WEIGHTS_PATH) else None + ) + net = choose_cards._card_pick_net + if net is not None: + return CardPickPlayer(net, training=False).choose_cards(allowed, difficulty) + # Fall through to BALANCED heuristic if weights aren't trained yet. scores = 0.60 * pcv_norm + 0.25 * atk_ratio + 0.15 * (1.0 - atk_ratio) else: # ARBITRARY w = 0.09 * difficulty @@ -97,7 +114,7 @@ def choose_cards(cards: list[Card], difficulty: int, personality: AIPersonality) AIPersonality.DEFENSIVE: 15, # raised: stable cheap-card base across difficulty levels AIPersonality.CONTROL: 8, AIPersonality.BALANCED: 25, # spread the deck across all cost levels - AIPersonality.JEBRASKA: 25, # same as balanced + AIPersonality.JEBRASKA: 25, # fallback (no trained weights yet) AIPersonality.ARBITRARY: 8, }[personality] @@ -320,14 +337,14 @@ def choose_plan(player: PlayerState, opponent: PlayerState, personality: AIPerso plans = generate_plans(player, opponent) if personality == AIPersonality.JEBRASKA: - from nn import NeuralNet + from ai.nn import NeuralNet import os _weights = os.path.join(os.path.dirname(__file__), "nn_weights.json") if not hasattr(choose_plan, "_neural_net"): choose_plan._neural_net = NeuralNet.load(_weights) if os.path.exists(_weights) else None net = choose_plan._neural_net if net is not None: - from nn import extract_plan_features + from ai.nn import extract_plan_features scores = net.forward(extract_plan_features(plans, player, opponent)) else: # fallback to BALANCED if weights not found scores = score_plans_batch(plans, player, opponent, AIPersonality.BALANCED) @@ -339,7 +356,7 @@ def choose_plan(player: PlayerState, opponent: PlayerState, personality: AIPerso return plans[int(np.argmax(scores + noise))] async def run_ai_turn(game_id: str): - from game_manager import ( + from game.manager import ( active_games, connections, active_deck_ids, serialize_state, record_game_result, calculate_combat_animation_time ) @@ -421,7 +438,7 @@ async def run_ai_turn(game_id: str): await send_state(state) if state.result: - from database import SessionLocal + from core.database import SessionLocal db = SessionLocal() try: record_game_result(state, db) diff --git a/backend/nn.py b/backend/ai/nn.py similarity index 98% rename from backend/nn.py rename to backend/ai/nn.py index bfeda46..b712072 100644 --- a/backend/nn.py +++ b/backend/ai/nn.py @@ -1,6 +1,7 @@ -import numpy as np import json +import numpy as np + # Layout: [state(8) | my_board(15) | opp_board(15) | plan(3) | result_board(15) | opp_deck_type(8)] N_FEATURES = 64 @@ -137,7 +138,7 @@ def extract_plan_features(plans: list, player, opponent) -> np.ndarray: Returns (n_plans, N_FEATURES) float32 array. Layout: [state(8) | my_board(15) | opp_board(15) | plan(3) | result_board(15)] """ - from game import BOARD_SIZE, HAND_SIZE, MAX_ENERGY_CAP, STARTING_LIFE + from game.rules import BOARD_SIZE, HAND_SIZE, MAX_ENERGY_CAP, STARTING_LIFE n = len(plans) @@ -217,7 +218,7 @@ class NeuralPlayer: self.trajectory: list[tuple[np.ndarray, int]] = [] # (features, chosen_idx) def choose_plan(self, player, opponent): - from ai import generate_plans + from ai.engine import generate_plans plans = generate_plans(player, opponent) features = extract_plan_features(plans, player, opponent) scores = self.net.forward(features) diff --git a/backend/ai/nn_weights.json b/backend/ai/nn_weights.json new file mode 100644 index 0000000..21235b3 --- /dev/null +++ b/backend/ai/nn_weights.json @@ -0,0 +1 @@ +{"weights": [[[0.1536785066127777, -0.08462539315223694, 0.2882137894630432, 0.09909483790397644, -0.032805971801280975, 0.004697995726019144, 0.17332597076892853, 0.20493870973587036, -0.14327949285507202, 0.15752026438713074, -0.2130434364080429, 0.06489338725805283, 0.08982107043266296, -0.2820565700531006, -0.11343813687562943, 0.12599435448646545, -0.012227753177285194, 0.2625410258769989, -0.4528835415840149, -0.22746457159519196, 0.2842627763748169, -0.022330431267619133, 0.2031441330909729, -0.3643968403339386, -0.19322149455547333, 0.3411925137042999, -0.014960501343011856, 0.022283002734184265, 0.05393475666642189, -0.12057404965162277, -0.16044877469539642, 0.3637219965457916, 0.07317551225423813, -0.12484613806009293, 0.2447156459093094, -0.2787529528141022, -0.18610763549804688, -0.49091726541519165, -0.20548264682292938, 0.1375996321439743, 0.11060744524002075, 0.05640031397342682, 0.2214449793100357, -0.02488817647099495, -0.4581224024295807, -0.11902192234992981, 0.04173796996474266, -0.023659497499465942, 0.3286610543727875, -0.2929728925228119, -0.1666603833436966, 0.02079806476831436, 0.0021689420100301504, 0.18833781778812408, 0.08901210874319077, 0.1473643034696579, -0.042975053191185, 0.3080596923828125, 0.05447380989789963, 0.0558561235666275, 0.2337803989648819, -0.03863655403256416, -0.23873983323574066, -0.185316801071167], [0.18455059826374054, 0.16308918595314026, 0.17374108731746674, 0.02940346673130989, 0.07074537128210068, -0.063901886343956, -0.00033373842597939074, 0.3399781584739685, -0.05207649618387222, 0.3434571921825409, -0.5859928727149963, 0.2719164490699768, 0.09638483077287674, 0.011129340156912804, 0.20206041634082794, -0.15987002849578857, 0.12574750185012817, 0.292270302772522, -0.06991472840309143, -0.07326117902994156, -0.12793494760990143, -0.06134280934929848, 0.32819128036499023, -0.06353329867124557, -0.17715060710906982, 0.4134073853492737, 0.2002352476119995, 0.11408232152462006, -0.028031809255480766, -0.08576002717018127, -0.11849015951156616, -0.2164468616247177, 0.12223231792449951, 0.1039426326751709, 0.11421854048967361, -0.08908645808696747, -0.4576796293258667, -0.21711212396621704, -0.028889264911413193, -0.02484000287950039, -0.04999056085944176, 0.08176573365926743, 0.5618948340415955, 0.05377751216292381, -0.11026236414909363, 0.03589015454053879, -0.2332092970609665, -0.2161090224981308, 0.27889207005500793, 0.43701693415641785, -0.27512434124946594, 0.14794376492500305, 0.08142691850662231, -0.1364445686340332, 0.11341753602027893, 0.1293836086988449, 0.2079809308052063, 0.16246724128723145, 0.22891779243946075, -0.35477516055107117, 0.3697928190231323, 0.3583265244960785, -0.22159133851528168, -0.06696967780590057], [0.0678204819560051, -0.02853773534297943, -0.254459410905838, -0.12492018938064575, -0.009107833728194237, 0.1382293850183487, -0.06204795464873314, 0.443947434425354, 0.04792118817567825, -0.10512783378362656, 0.08807745575904846, -0.04266387224197388, 0.13431812822818756, 0.29274994134902954, 0.06550520658493042, 0.3056936264038086, 0.19911974668502808, 0.3372168242931366, -0.5171763896942139, -0.23802441358566284, 0.10534869879484177, -0.1432298719882965, 0.18149811029434204, -0.0034854209516197443, -0.08762767910957336, 0.35048654675483704, 0.3814500868320465, -0.24625158309936523, 0.37750428915023804, 0.10486222803592682, -0.25985175371170044, 0.10451163351535797, -0.056470636278390884, 0.17343208193778992, 0.2852799892425537, -0.22267624735832214, -0.03727278858423233, -0.13885995745658875, 0.25705304741859436, 0.4604596793651581, 0.006843827664852142, -0.16283230483531952, 0.08644410222768784, -0.09127438068389893, -0.08500189334154129, 0.2513386607170105, 0.13202600181102753, -0.09132445603609085, 0.36216557025909424, 0.2193591296672821, -0.3494894206523895, 0.6461853384971619, 0.3734300434589386, -0.0439281165599823, -0.2798290252685547, 0.10725728422403336, -0.05040021240711212, 0.31052711606025696, 0.014044225215911865, -0.17765001952648163, 0.15334756672382355, -0.2843799889087677, -0.18206918239593506, 0.3243652880191803], [0.0880504697561264, -0.1597532480955124, 0.050279200077056885, -0.06892548501491547, 0.022438256070017815, 0.08168540894985199, 0.11077554523944855, -0.032085176557302475, 0.24963031709194183, 0.05094092711806297, 0.13572466373443604, 0.3612130880355835, -0.149430051445961, -0.10410473495721817, 0.44071829319000244, 0.3638802766799927, 0.24422606825828552, 0.8800878524780273, -0.19759601354599, 0.1961420476436615, 0.1817294806241989, -0.08057882636785507, 0.08148413896560669, 0.0694376528263092, -0.10403279215097427, 0.2675654888153076, 0.24384044110774994, -0.10549841076135635, 0.45685654878616333, -0.3089893162250519, 0.07205770909786224, -0.2966455817222595, 0.03240314871072769, 0.2267950028181076, 0.09183153510093689, -0.26811864972114563, -0.33402231335639954, -0.09169305115938187, -0.017379963770508766, 0.1634262353181839, 0.058279167860746384, -0.14477698504924774, 0.6226832866668701, 0.16499929130077362, -0.4293716847896576, 0.22399117052555084, -0.03387304022908211, -0.08686082810163498, 0.2197689414024353, -0.057876743376255035, -0.21343423426151276, 0.31837496161460876, 0.05064525455236435, 0.048463597893714905, -0.17447838187217712, -0.09352629631757736, 0.3011918067932129, 0.2558993101119995, -0.29250648617744446, -0.0025203016120940447, 0.678187906742096, 0.16592489182949066, -0.37172549962997437, 0.08737555891275406], [0.22084644436836243, -0.2077607810497284, 0.2854069471359253, -0.02385411411523819, -0.1794465184211731, 0.05943483114242554, -0.6490276455879211, -0.13013634085655212, -0.07638252526521683, -0.17114582657814026, 0.13871777057647705, -0.10700108855962753, -0.005360741168260574, 0.04818696901202202, 0.4064900577068329, -0.11011652648448944, 0.37799280881881714, 0.23231306672096252, -0.39795517921447754, 0.12676191329956055, 0.04969444498419762, 0.052562322467565536, 0.18413154780864716, -0.1710575371980667, -0.09373708814382553, 0.41969504952430725, 0.455136239528656, -0.2923971116542816, 0.43841636180877686, -0.3858138620853424, -0.10517498105764389, 0.14211176335811615, 0.11178140342235565, -0.046544838696718216, 0.087079256772995, -0.09449505805969238, -0.32485514879226685, 0.04589571803808212, 0.07497751712799072, -0.03124680183827877, 0.14080847799777985, 0.07100272923707962, 0.39304623007774353, 0.13888850808143616, -0.26368919014930725, 0.007936997339129448, 0.22925786674022675, -0.09065969288349152, 0.2524447739124298, 0.013392827473580837, 0.01503789983689785, -0.013454144820570946, 0.09553755819797516, 0.031485483050346375, -0.1425400972366333, 0.19402839243412018, 0.2304551899433136, 0.47892773151397705, 0.21519748866558075, -0.09388910979032516, 0.3238063156604767, -0.07454303652048111, 0.02754136733710766, -0.0002508110483177006], [-0.06687413156032562, 0.0721079558134079, -0.08158223330974579, 0.3117429316043854, 0.04341663420200348, -0.07882696390151978, -0.02445017732679844, 0.15345653891563416, -0.02921362780034542, 0.029737401753664017, -0.08465619385242462, -0.0545915849506855, -0.00048269136459566653, -0.12770786881446838, 0.3073224723339081, 0.02572054974734783, -0.24497410655021667, 0.08569645881652832, -0.16605089604854584, -0.1469755470752716, -0.014910899102687836, -0.10697482526302338, 0.21519240736961365, -0.1158672645688057, -0.2287350445985794, 0.4207351505756378, 0.07472993433475494, -0.3584209680557251, -0.054708898067474365, -0.261257529258728, 0.09899871796369553, 0.2456749826669693, 0.22245942056179047, 0.08603506535291672, 0.17652097344398499, -0.15951478481292725, -0.20023740828037262, -0.1739046722650528, 0.07585925608873367, -0.05800569802522659, 0.1046864464879036, 0.31010809540748596, 0.232130765914917, 0.1677093803882599, 0.008625473827123642, -0.055911120027303696, 0.11342505365610123, -0.10898402333259583, 0.37950780987739563, -0.2520313858985901, -0.2432333379983902, 0.2983231842517853, 0.14453177154064178, 0.36817944049835205, 0.31241464614868164, -0.07849404960870743, 0.2105875313282013, 0.34545451402664185, 0.3381786346435547, -0.31260791420936584, -0.017342980951070786, -0.18759140372276306, -0.2550103962421417, -0.007936821319162846], [-0.15483838319778442, -0.05041865259408951, 0.30744025111198425, 0.17751672863960266, 0.10900696367025375, -0.06777302920818329, -0.31134581565856934, 0.05214129388332367, -0.3754248321056366, 0.3726345896720886, 0.0008714213036000729, 0.025805138051509857, -0.27642229199409485, 0.25245529413223267, 0.006637266371399164, 0.273963063955307, -0.13760319352149963, 0.12491270899772644, -0.2074916809797287, 0.03862477466464043, -0.049774691462516785, 0.370467871427536, -0.00383255654014647, -0.18209972977638245, -0.1641511619091034, 0.4065581262111664, 0.2847861647605896, -0.2652449905872345, -0.2843594551086426, 0.13143093883991241, -0.024442950263619423, -0.12341587990522385, 0.3336825370788574, 0.08805331587791443, 0.32633206248283386, -0.036603160202503204, 0.16383978724479675, 0.2465849071741104, -0.07111594080924988, 0.2607216238975525, 0.06070709228515625, 0.28228050470352173, 0.06043015047907829, 0.16137847304344177, 0.027485564351081848, -0.40049004554748535, -0.11799459904432297, -0.495720237493515, 0.1911025196313858, 0.1605362445116043, 0.07945489883422852, 0.08792388439178467, 0.1938551813364029, -0.15763933956623077, -0.3826560974121094, -0.026009630411863327, 0.2174631804227829, 0.3140789866447449, -0.3072223365306854, -0.0886063426733017, -0.13518302142620087, 0.10289718210697174, 0.050668131560087204, -0.16770797967910767], [-0.08464120328426361, -0.26913321018218994, 0.2703907787799835, -0.06971578299999237, -0.2837972342967987, 0.14142346382141113, -0.17805588245391846, -0.14859260618686676, -0.12246454507112503, -0.07275354117155075, -0.2782800495624542, -0.052251335233449936, 0.4579036235809326, 0.011738063767552376, -0.08503451198339462, 0.12979863584041595, 0.17468155920505524, 0.16272833943367004, -0.18587923049926758, 0.1629297286272049, -0.0695568099617958, 0.12848389148712158, 0.12450789660215378, -0.5541903972625732, -0.3688841164112091, 0.589483916759491, 0.43908950686454773, -0.09982214123010635, 0.15307004749774933, 0.019130341708660126, 0.47450700402259827, 0.3039615750312805, 0.04570656269788742, -0.13013488054275513, -0.12478971481323242, 0.02078806422650814, -0.36844316124916077, -0.2534778118133545, -0.07755026966333389, -0.07272376865148544, 0.2568168044090271, 0.16096079349517822, 0.23228903114795685, 0.271729439496994, -0.17308419942855835, -0.11427146941423416, 0.39222756028175354, -0.08497942239046097, 0.06614845991134644, 0.03597254306077957, -0.3238492012023926, -0.21377047896385193, 0.10559530556201935, 0.30753469467163086, -0.3048129975795746, 0.10680799186229706, 0.016193579882383347, 0.2747497856616974, -0.036778856068849564, -0.2259109765291214, 0.12513960897922516, -0.1808280199766159, -0.010417887941002846, -0.007057021372020245], [-0.07013218849897385, -0.2473481297492981, -0.07920598238706589, 0.10498612374067307, 0.09674248099327087, -0.1735314279794693, -0.0969395861029625, 0.15264131128787994, -0.41945335268974304, 0.2284105271100998, -0.04905214533209801, 0.12939314544200897, -0.19534915685653687, -0.13716143369674683, -0.1117326021194458, -0.10343685001134872, 0.22939245402812958, -0.1570243388414383, -0.06615162640810013, -0.33624905347824097, 0.02628929167985916, -0.20156648755073547, -0.22005745768547058, -0.2070954591035843, -0.44730156660079956, -0.11038290709257126, 0.2693471312522888, -0.1732451170682907, -0.05235802009701729, -0.27146199345588684, 0.046807385981082916, 0.42394059896469116, 0.0828922912478447, -0.1356181502342224, -0.13421159982681274, -0.054956790059804916, -0.007333079352974892, -0.11664455384016037, -0.019894469529390335, 0.01567125879228115, 0.2416917383670807, -0.026568567380309105, 0.18424686789512634, -0.14731498062610626, -0.0418555773794651, -0.16009245812892914, 0.06517064571380615, -0.17014610767364502, 0.18207746744155884, 0.15013626217842102, 0.008727088570594788, -0.17606180906295776, 0.1326553374528885, -0.031482551246881485, -0.4693239629268646, -0.18041881918907166, -0.42753201723098755, -0.06088250130414963, 0.11505444347858429, 0.18707697093486786, 0.15533475577831268, -0.18623705208301544, -0.05987097695469856, -0.19795477390289307], [0.028541551902890205, 0.1573396623134613, -0.2798060476779938, 0.11641844362020493, 0.13095980882644653, 0.020543554797768593, 0.07485101372003555, 0.4507559835910797, -0.012183798477053642, 0.06359310448169708, -0.009536586701869965, -0.05198168382048607, 0.08335099369287491, 0.018561342731118202, 0.19164623320102692, -0.2077590823173523, 0.2929726839065552, 0.04841432720422745, -0.11196602135896683, -0.21459628641605377, 0.03356790542602539, -0.3008711338043213, -0.16164539754390717, -0.14167220890522003, -0.19279347360134125, -0.2212262898683548, 0.2406255006790161, 0.16959138214588165, -0.18431082367897034, 0.20668210089206696, -0.26305311918258667, -0.06139608100056648, 0.15823505818843842, 0.26194292306900024, -0.19811663031578064, -0.02623712457716465, 0.02770378254354, -0.24479371309280396, 0.4500693380832672, 0.04677353799343109, 0.13553187251091003, 0.05393584445118904, 0.21400690078735352, -0.09430873394012451, -0.1695113629102707, -0.08842863887548447, 0.3074344992637634, 0.14049161970615387, 0.42957979440689087, -0.29403290152549744, -0.26049041748046875, -0.17330339550971985, 0.015319564379751682, 0.3221668004989624, -0.4773683547973633, 0.33465829491615295, -0.11549146473407745, -0.22323885560035706, -0.11615549772977829, -0.3174683451652527, 0.3784751892089844, -0.05165352299809456, -0.4228803515434265, -0.029582267627120018], [-0.14128334820270538, 0.28138408064842224, 0.004942223429679871, -0.5479503273963928, -0.002068321919068694, 0.06522294878959656, -0.4304756820201874, 0.09437781572341919, -0.18219073116779327, 0.258658766746521, 0.25384053587913513, 0.3242999017238617, -0.13807611167430878, -0.0786929503083229, 0.6054632663726807, -0.25646331906318665, 0.3177518844604492, -0.09653519839048386, -0.24365916848182678, -0.2893388569355011, 0.06433582305908203, -0.46587350964546204, 0.03259465470910072, -0.24130581319332123, -0.07188797742128372, 0.3217710554599762, 0.1265266090631485, 0.1718987673521042, -0.6692663431167603, 0.01634666509926319, 0.153033047914505, -0.06414013355970383, 0.18272264301776886, -0.023065023124217987, -0.6632922887802124, -0.10887416452169418, -0.14272306859493256, 0.2682275176048279, 0.18050800263881683, 0.11724445968866348, 0.14928822219371796, -0.5425596833229065, 0.22123494744300842, -0.15032052993774414, -0.24060633778572083, -0.4479692280292511, -0.12369933724403381, -0.11923129856586456, 0.4126551151275635, -0.09631985425949097, -0.1836242824792862, -0.03704862296581268, -0.1502431482076645, 0.13459749519824982, -0.025762448087334633, -0.10579180717468262, 0.023642802610993385, -0.2804265320301056, 0.12243210524320602, -0.23713411390781403, 0.24305438995361328, 0.10338383167982101, -0.3092477023601532, -0.1575389802455902], [-0.16466911137104034, 0.052937623113393784, -0.19565637409687042, 0.4195530116558075, -0.3831344246864319, 0.0787530466914177, -0.06068931519985199, 0.10405595600605011, -0.17286764085292816, 0.1560620367527008, 0.08281728625297546, 0.2026626467704773, -0.036223672330379486, 0.2332785725593567, 0.008926333859562874, 0.016920695081353188, -0.04767640307545662, -0.12807482481002808, -0.25235533714294434, 0.005414594430476427, -0.10039770603179932, -0.017523687332868576, -0.13285012543201447, 0.022785454988479614, -0.17729493975639343, -0.04835553094744682, 0.288568377494812, -0.2447960078716278, -0.014101865701377392, -0.3262055218219757, 0.21864931285381317, 0.2567070424556732, 0.3592335879802704, 0.034933462738990784, 0.12835656106472015, 0.2206791490316391, -0.4113510549068451, -0.3222140669822693, -0.05123424902558327, 0.04347458481788635, 0.1833968609571457, 0.011597773060202599, -0.1743733137845993, -0.1479639708995819, -0.1046280637383461, -0.08643439412117004, -0.1274462789297104, -0.32088080048561096, -0.020571552217006683, 0.016072962433099747, -0.24485543370246887, 0.4624788165092468, 0.2707151174545288, 0.022790133953094482, -0.3347752094268799, 0.14223788678646088, 0.033113885670900345, -0.23411227762699127, 0.44797277450561523, 0.123015858232975, 0.1977148950099945, -0.04521841183304787, -0.17267222702503204, 0.24404174089431763], [-0.05126442387700081, 0.26324886083602905, 0.12769292294979095, 0.10311437398195267, 0.11419074982404709, -0.026579203084111214, 0.07239420711994171, -0.1571478694677353, -0.058239296078681946, 0.06268122792243958, 0.034406330436468124, 0.2317204624414444, -0.0519920215010643, 0.02325303852558136, 0.11895003914833069, 0.05494042858481407, 0.03622271865606308, 0.4066276550292969, 0.1982044130563736, -0.0018223612569272518, -0.1602984368801117, -0.3732931315898895, -0.09895855188369751, -0.022428447380661964, -0.02143653854727745, -0.10956047475337982, 0.006128443405032158, 0.18563216924667358, -0.034627966582775116, 0.0818994864821434, -0.04144451394677162, 0.1084134429693222, 0.43510574102401733, -0.28555727005004883, -0.09563346952199936, -0.024617347866296768, -0.23259544372558594, -0.27735641598701477, 0.07463899254798889, -0.04745779559016228, 0.32288113236427307, 0.016755806282162666, -0.2870674729347229, -0.13333159685134888, 0.36341264843940735, 0.23124441504478455, 0.12148166447877884, -0.22671331465244293, 0.2268749624490738, 0.0698503777384758, -0.0438305102288723, 0.1709095984697342, 0.10242783278226852, 0.22309425473213196, 0.30930888652801514, -0.06771473586559296, -0.006771942600607872, -0.07329908758401871, 0.21453909575939178, -0.014799971133470535, -0.20770283043384552, -0.006506877951323986, -0.30636486411094666, -0.16947852075099945], [-0.25644075870513916, -0.18545246124267578, -0.0427413135766983, 0.10652858763933182, 0.2137046903371811, -0.4241654872894287, -0.00746076600626111, 0.05390213429927826, -0.21064084768295288, 0.30603817105293274, -0.1236787661910057, 0.1894189417362213, -0.14804737269878387, 0.39523380994796753, 0.0877213403582573, 0.36099565029144287, -0.07973375916481018, -0.018727004528045654, -0.02280396781861782, -0.4233029782772064, -0.23790645599365234, 0.17817853391170502, 0.05498536676168442, -0.08120407164096832, -0.08179154247045517, 0.18098779022693634, 0.061687253415584564, 0.21106146275997162, -0.0794321820139885, -0.20460283756256104, 0.14168867468833923, 0.22333918511867523, 0.16967982053756714, -0.18671531975269318, -0.20284362137317657, -0.011324991472065449, -0.021425986662507057, 0.19193986058235168, -0.11721280217170715, -0.3153264820575714, -0.16501761972904205, 0.19141919910907745, -0.0898822546005249, 0.14841392636299133, 0.006338783539831638, 0.023393945768475533, -0.0895785391330719, 0.20375323295593262, 0.4953291714191437, -0.23726323246955872, -0.2098543494939804, 0.3649374544620514, 0.3279184103012085, 0.47605592012405396, 0.09839066863059998, 0.03322739154100418, 0.023876218125224113, -0.1172751635313034, 0.007584570441395044, 0.016548197716474533, 0.10503280162811279, 0.02124064974486828, 0.21749591827392578, -0.011194383725523949], [0.09936732798814774, -0.08447232097387314, 0.11527958512306213, -0.3262104094028473, 0.0737699493765831, -0.016902899369597435, -0.029703497886657715, 0.3612619936466217, 0.15263521671295166, -0.11842373758554459, -0.06694315373897552, 0.08227406442165375, 0.14188973605632782, 0.10399820655584335, -0.0035628466866910458, 0.17997460067272186, -0.027411064133048058, 0.30429449677467346, -0.03845882788300514, -0.14193032681941986, 0.12182570993900299, -0.15334656834602356, -0.23007597029209137, 0.10392419993877411, 0.3036145567893982, -0.09494215995073318, 0.05455624684691429, -0.0329316109418869, 0.07809294015169144, -0.21915744245052338, -0.17495061457157135, 0.15169872343540192, 0.30013811588287354, 0.06237369775772095, -0.22524097561836243, 0.2724964916706085, -0.3513439893722534, -0.21963833272457123, 0.1890864074230194, -0.07203084975481033, -0.31809788942337036, 0.08738407492637634, -0.08805207163095474, 0.06344608962535858, 0.028521863743662834, 0.23705235123634338, 0.11489585041999817, -0.01353487093001604, 0.18543697893619537, -0.27417516708374023, -0.1504909098148346, -0.0066098421812057495, 0.05030355975031853, 0.10787717998027802, 0.04352092742919922, 0.021960757672786713, -0.3916102945804596, 0.21301387250423431, -0.09491768479347229, 0.19678370654582977, -0.062486469745635986, -0.04917559772729874, 0.003857057774439454, 0.02221345528960228], [0.26063811779022217, 0.03580750524997711, -0.045622944831848145, -0.12586204707622528, -0.11535944789648056, 0.26455792784690857, -0.23032328486442566, 0.5130258202552795, -0.26108691096305847, -0.5114802122116089, 0.28335681557655334, -0.23065468668937683, 0.10175205767154694, -0.28575214743614197, -0.03578639775514603, -0.12425544112920761, -0.024521438404917717, -0.4253394305706024, -0.35705801844596863, 0.010950394906103611, 0.25400882959365845, -0.03544808179140091, -0.3566276729106903, 0.0586811788380146, -0.035210225731134415, -0.13210265338420868, 0.5632723569869995, 0.26683107018470764, -0.3322230577468872, -0.008586214855313301, -0.1006595566868782, -0.14958816766738892, 0.17692770063877106, -0.17206425964832306, -0.42013293504714966, -0.14664572477340698, 0.06657027453184128, 0.11685405671596527, -0.006835648324340582, 0.07259391248226166, 0.12005508691072464, 0.0803772509098053, -0.1413298398256302, 0.08031196892261505, 0.2941334545612335, -0.06322699785232544, 0.14854325354099274, 0.07984460145235062, 0.07121282815933228, -0.20853784680366516, 0.2625097632408142, 0.1591949164867401, 0.4814319312572479, 0.002733214758336544, 0.2821069359779358, -0.05977128446102142, -0.1854550540447235, 0.006227410864084959, -0.14665132761001587, 0.05534248799085617, 0.10965216904878616, -0.06584933400154114, -0.15003986656665802, 0.27338337898254395], [0.40137359499931335, -0.09145493805408478, -0.07050959765911102, -0.2439395934343338, 0.05439468100667, -0.2996211349964142, -0.13523273169994354, -0.26624980568885803, -0.2196010798215866, 0.06594222784042358, 0.1639975607395172, 0.0341167226433754, -0.3215630352497101, -0.26496103405952454, 0.024387774989008904, 0.4459937810897827, 0.18553771078586578, -0.23480650782585144, 0.05046004056930542, -0.003616977483034134, 0.1660975217819214, -0.0006213979795575142, -0.03719151020050049, -0.5807245969772339, 0.23291824758052826, 0.2733014225959778, 0.15134784579277039, 0.07803723961114883, -0.22355996072292328, 0.011641799472272396, -0.41055724024772644, -0.010745254345238209, 0.44411930441856384, 0.0994403138756752, -0.16634754836559296, -0.1864112913608551, 0.161529079079628, -0.5328570008277893, 0.16163595020771027, -0.35310909152030945, -0.30071407556533813, -0.21163888275623322, -0.2617890536785126, 0.33933863043785095, -0.20347748696804047, 0.15511564910411835, 0.007795288693159819, -0.036101046949625015, -0.1739017814397812, -0.5158042907714844, 0.1216900572180748, 0.05510552600026131, -0.07676883786916733, 0.03247792273759842, 0.18257929384708405, 0.15895743668079376, -0.19183437526226044, 0.268471360206604, -0.1489991545677185, 0.13315603137016296, 0.005565563216805458, -0.005317477509379387, 0.09251697361469269, -0.03363513574004173], [0.026986749842762947, -0.19448378682136536, -0.2657126486301422, -0.21161450445652008, 0.2334872931241989, -0.02256501466035843, 0.11451390385627747, 0.12884733080863953, 0.17344799637794495, -0.1978931427001953, 0.19116370379924774, 0.10358884930610657, 0.28336840867996216, -0.33152520656585693, 0.3120580017566681, 0.07201142609119415, 0.3313605785369873, -0.2820708453655243, 0.0063470941968262196, -0.32633882761001587, 0.12343287467956543, 0.3330386281013489, -0.16287559270858765, 0.11330829560756683, 0.0692562609910965, -0.01465331669896841, 0.005586970131844282, 0.1320509910583496, 0.33728328347206116, 0.06387050449848175, 0.1704961359500885, 0.17641063034534454, 0.2903870642185211, 0.269376665353775, -0.0626104548573494, -0.34272390604019165, 0.3135921359062195, -0.01678578369319439, 0.09593117237091064, -0.1665315330028534, 0.05458411946892738, -0.05797641724348068, 0.20892132818698883, 0.18359915912151337, 0.2601929008960724, 0.1979684680700302, 0.004689691122621298, 0.30082446336746216, 0.24858365952968597, -0.16856954991817474, 0.06276772916316986, 0.37007495760917664, 0.11076466739177704, 0.1806175708770752, 0.09642567485570908, 0.05757627636194229, 0.022578632459044456, -0.058617569506168365, -0.16822853684425354, -0.3186599314212799, 0.18921512365341187, -0.21171075105667114, -0.1346539855003357, -0.4233241677284241], [0.008860530331730843, -0.4100951850414276, -0.027930794283747673, -0.08859395235776901, -0.05491572991013527, 0.32830703258514404, 0.07274965196847916, 0.15923935174942017, -0.2762451469898224, 0.47977161407470703, -0.12948919832706451, -0.280256450176239, 0.24822655320167542, 0.6304177641868591, 0.2936383783817291, 0.1569688320159912, 0.27326470613479614, 0.04279715195298195, 0.06121149659156799, -0.16985681653022766, 0.31585657596588135, -0.10155647993087769, -0.2296266257762909, -0.08863649517297745, -0.2001885026693344, 0.12507522106170654, -0.16487596929073334, -0.14047282934188843, 0.015706859529018402, 0.3323425352573395, 0.4023365378379822, -0.35388118028640747, 0.06300612539052963, 0.2815680205821991, -0.3494167923927307, -0.25776156783103943, 0.06124397739768028, -0.04006331413984299, 0.019514597952365875, -0.3704083263874054, -0.008821939118206501, 0.02172599919140339, -0.005758346989750862, 0.07301810383796692, -0.004869148600846529, 0.18745385110378265, 0.01586627960205078, 0.36588969826698303, 0.020614882931113243, 0.0067598517052829266, -0.03940887376666069, 0.3425888419151306, 0.18958300352096558, 0.0026520441751927137, 0.002375667216256261, -0.14735738933086395, -0.2748580873012543, 0.24373549222946167, -0.23515291512012482, -0.16622205078601837, -0.21894040703773499, 0.010279632173478603, -0.034907858818769455, 0.17927563190460205], [-0.06908821314573288, 0.006961014587432146, -0.32545244693756104, 0.29020121693611145, -0.1779855340719223, 0.035882510244846344, -0.0568741112947464, 0.3426075875759125, -0.02406316064298153, -0.009935819543898106, 0.10675772279500961, -0.030123990029096603, 0.16664168238639832, 0.6101912260055542, 0.027203232049942017, -0.35627129673957825, 0.14697033166885376, 0.30366021394729614, -0.1758856326341629, 0.14175274968147278, 0.6149464845657349, -0.17045435309410095, 0.33937257528305054, 0.0533764511346817, -0.09030574560165405, 0.16175436973571777, 0.016887445002794266, -0.2707726061344147, -0.30800938606262207, -0.2742817997932434, 0.32212868332862854, -0.010289679281413555, 0.282687246799469, -0.3325917422771454, -0.03665211796760559, 0.023356445133686066, -0.6251331567764282, 0.1843174397945404, 0.13475410640239716, -0.2643396258354187, 0.3781214654445648, 0.12564782798290253, 0.1088140681385994, 0.0840776339173317, -0.018816906958818436, -0.022903190925717354, -0.0594194196164608, -0.2081020325422287, 0.02736484631896019, -0.23065337538719177, -0.2656545341014862, 0.036697205156087875, -0.015510893426835537, 0.3535081446170807, 0.0354144312441349, -0.053520556539297104, -0.18667630851268768, 0.066640205681324, 0.1698588728904724, 0.04931109771132469, 0.32104626297950745, -0.1030600368976593, 0.041384533047676086, -0.09922244399785995], [0.22714227437973022, 0.39158880710601807, -0.0926000326871872, 0.025968879461288452, -0.370892196893692, -0.028268752619624138, -0.17132695019245148, 0.1473187357187271, -0.4048100411891937, -0.23806117475032806, 0.02235003374516964, 0.6134306192398071, 0.09339554607868195, 0.03627242147922516, 0.17708754539489746, 0.18657107651233673, -0.023252738639712334, 0.0756101906299591, 0.02798965387046337, 0.17491532862186432, -0.042454540729522705, -0.08270169794559479, -0.09256590157747269, -0.10881654173135757, 0.1927279680967331, -0.18156664073467255, 0.47879981994628906, 0.10518433153629303, 0.07047396898269653, 0.153092160820961, 0.05335330218076706, 0.006627153139561415, 0.27083227038383484, 0.34371474385261536, -0.06224222853779793, -0.3896927237510681, -0.418799489736557, -0.06508427113294601, -0.26505470275878906, -0.1819804161787033, -0.18249909579753876, 0.2060350477695465, 0.07031384110450745, 0.03886166214942932, 0.2577207386493683, 0.017943168058991432, -0.12445070594549179, -0.27474430203437805, -0.0710490420460701, -0.025928625836968422, 0.4549911916255951, 0.023587657138705254, -0.06380366533994675, 0.387270987033844, 0.3240884840488434, -0.2129727303981781, -0.17021921277046204, -0.3358164429664612, -0.11305809020996094, -0.040167681872844696, 0.04485728219151497, -0.18020589649677277, 0.08545871078968048, 0.34504422545433044], [0.3197258710861206, -0.1350916177034378, -0.6665400862693787, 0.10290425270795822, -0.4800304174423218, 0.19552096724510193, -0.06163834035396576, -0.3483718931674957, -0.0920051708817482, 0.2660450041294098, -0.03727434203028679, -0.3883642256259918, -0.011919435113668442, -0.16123837232589722, -0.23750627040863037, 0.32377275824546814, -0.2406257838010788, 0.08888359367847443, -0.08913234621286392, -0.12766587734222412, 0.30693963170051575, -0.19943366944789886, -0.015005752444267273, -0.25227639079093933, -0.05186307057738304, -0.11324626207351685, 0.26762861013412476, 0.319704532623291, -0.21774010360240936, -0.2837880551815033, 0.29622992873191833, -0.12014591693878174, -0.20896387100219727, 0.2637181878089905, -0.08942936360836029, 0.13216757774353027, -0.05696328729391098, 0.010850038379430771, 0.2553020119667053, -0.35720160603523254, 0.10395399481058121, 0.1536473035812378, 0.4153878390789032, 0.2303663045167923, 0.14055313169956207, 0.29528677463531494, 0.22154048085212708, -0.36683517694473267, 0.5357093214988708, -0.13709594309329987, 0.23364105820655823, -0.037411220371723175, -0.17458191514015198, -0.14361901581287384, 0.4623125195503235, -0.18473373353481293, -0.24535547196865082, -0.17366795241832733, 0.2511507272720337, 0.2249567210674286, 0.3458895981311798, -0.30904942750930786, -0.27054324746131897, 0.4259767234325409], [-0.00932774692773819, 0.21228526532649994, -0.03502826392650604, -0.04266422614455223, 0.028350230306386948, 0.45052286982536316, -0.05788812413811684, 0.1567671000957489, 0.06974340975284576, 0.05110539123415947, 0.3373093605041504, 0.06710638850927353, 0.1808355748653412, 0.04521147161722183, 0.009599325247108936, 0.0745706632733345, -0.09775686264038086, -0.3310762643814087, 0.2013569325208664, -0.3359232544898987, 0.02644338831305504, -0.06964477151632309, 0.03179677948355675, 0.21855637431144714, 0.08776812255382538, -0.10459791123867035, 0.061065591871738434, -0.02146083489060402, 0.034458182752132416, 0.3356967270374298, 0.04811447113752365, 0.10879600048065186, 0.08942535519599915, 0.12595537304878235, 0.0635455995798111, -0.357734352350235, -0.024113906547427177, -0.19555449485778809, -0.23597989976406097, -0.001260136254131794, 0.3297264873981476, 0.09576679021120071, 0.20979614555835724, 0.10159618407487869, 0.03177108243107796, 0.7278309464454651, 0.11936959624290466, -0.539671003818512, 0.34620022773742676, -0.00270339148119092, 0.10094571113586426, -0.05790654197335243, 0.14461193978786469, -0.2682691812515259, -0.031119899824261665, -0.17892003059387207, -0.16094885766506195, 0.09995803982019424, 0.40388360619544983, 0.05340888723731041, -0.03367481753230095, 0.12300917506217957, 0.20359136164188385, 0.15013249218463898], [0.027216555550694466, 0.025815702974796295, -0.3938427269458771, 0.15350991487503052, -0.009063110686838627, 0.055316295474767685, -0.10633574426174164, 0.09276340901851654, 0.08943594247102737, -0.09965821355581284, 0.4742377698421478, 0.019761327654123306, 0.1610957384109497, 0.3020040690898895, -0.04318850859999657, 0.006186995655298233, -0.451111763715744, 0.23356235027313232, -0.14204636216163635, 0.5941576361656189, -0.028419209644198418, 0.06328403204679489, 0.3786884546279907, 0.3483506739139557, 0.4921487867832184, 0.21439142525196075, 0.2860158085823059, 0.08709175139665604, 0.3691817820072174, -0.04223288968205452, -0.16464170813560486, -0.24423840641975403, 0.08476946502923965, -0.09195484220981598, 0.10635210573673248, 0.13141971826553345, -0.04572634771466255, -3.170888476233813e-06, -0.04798638075590134, 0.10562283545732498, -0.0700971707701683, -0.21206748485565186, -0.06493121385574341, 0.20521491765975952, 0.2054050713777542, 0.38915082812309265, -0.15149016678333282, 0.20341269671916962, 0.164925217628479, 0.1646268665790558, -0.11939384788274765, 0.25408631563186646, 0.11054935306310654, 0.4546850919723511, 0.18070469796657562, 0.22768330574035645, -0.09764432162046432, -0.12315095216035843, -0.09073801338672638, -0.38007867336273193, 0.12219356745481491, -0.08350466936826706, -0.06232725828886032, -0.09788232296705246], [0.1386270821094513, 0.08160117268562317, -0.39838436245918274, -0.46757403016090393, 0.12254096567630768, 0.23635783791542053, 0.3757087290287018, 0.18370908498764038, -0.13644514977931976, -0.061970483511686325, 0.012850633822381496, 0.16153068840503693, 0.24365833401679993, 0.294167697429657, 0.27449122071266174, 0.2847099304199219, -0.3812341094017029, -0.0923144668340683, -0.20692679286003113, 0.1950305551290512, 0.2843649983406067, -0.24034135043621063, 0.48826199769973755, -0.06260206550359726, 0.03915359079837799, -0.044219255447387695, -0.23126067221164703, 0.05323146656155586, 0.4612947702407837, 0.005119523033499718, -0.019504031166434288, -0.43565407395362854, -0.11153502762317657, -0.068050317466259, 0.23160022497177124, -0.197035551071167, -0.08415665477514267, -0.41278937458992004, 0.31212666630744934, 0.20352722704410553, -0.28348323702812195, 0.4137815833091736, -0.09594014286994934, 0.25259435176849365, -0.1593378633260727, 0.4389157295227051, -0.14814190566539764, -0.14164689183235168, 0.12453152239322662, 0.2230396717786789, -0.11869048327207565, 0.4731118679046631, 0.13130655884742737, 0.4948914647102356, -0.27594372630119324, -0.5377814769744873, 0.15683986246585846, 0.41728439927101135, -0.5833102464675903, -0.22242245078086853, 0.16374514997005463, 0.3072553873062134, -0.012454625219106674, 0.054603539407253265], [0.022809265181422234, 0.40371406078338623, -0.11534442007541656, -0.15112294256687164, 0.10173092037439346, -0.15008091926574707, 0.00042575629777275026, 0.40689364075660706, 0.06837582588195801, -0.30728819966316223, 0.14233370125293732, -0.15889611840248108, 0.32282721996307373, -0.05070839449763298, 0.27701711654663086, 0.8668835163116455, -0.17046521604061127, 0.022433346137404442, -0.41118088364601135, 0.39833903312683105, 0.0467551089823246, -0.2400478571653366, 0.27739307284355164, 0.05073396861553192, 0.33838045597076416, 0.3209190368652344, 0.08835155516862869, 0.13612066209316254, 0.20141169428825378, 0.12366992235183716, 0.06670523434877396, -0.3895335793495178, 0.029828064143657684, 0.08993364125490189, 0.05401666462421417, -0.09722704440355301, -0.4300720989704132, -0.15301287174224854, 0.49787595868110657, 0.029560096561908722, 0.08687981963157654, 0.31659749150276184, 0.11939443647861481, 0.46169817447662354, -0.3663901686668396, 0.4244360029697418, 0.08314767479896545, -0.02319413051009178, 0.3483245074748993, 0.6182096004486084, -0.07890104502439499, 0.5077001452445984, 0.22996841371059418, 0.36466604471206665, -0.11780110746622086, -0.03019891120493412, -0.05674410238862038, 0.526325523853302, -0.33161529898643494, 0.08082088083028793, 0.4206698536872864, -0.20205892622470856, -0.37034741044044495, -0.02501961588859558], [0.31953296065330505, -0.16653208434581757, -0.11170800775289536, -0.11514905095100403, 0.4184931218624115, 0.2534484267234802, 0.541951060295105, -0.1928895264863968, -0.031333841383457184, -0.5230295658111572, 0.4011888802051544, 0.06622229516506195, 0.29025059938430786, 0.013378437608480453, 0.36378124356269836, -0.009297716431319714, 0.1986328363418579, 0.08240920305252075, -0.5538167357444763, 0.2270060032606125, -0.42428356409072876, 0.48012107610702515, -0.16555991768836975, -0.08518466353416443, 0.09652633965015411, 0.0710086077451706, 0.5084003210067749, -0.18993757665157318, 0.014877543784677982, -0.06371009349822998, -0.08420366048812866, 0.5286691784858704, -0.29737144708633423, -0.09863526374101639, 0.22682778537273407, -0.027527611702680588, 0.017966434359550476, 0.025749310851097107, -0.040678590536117554, 0.24222607910633087, 0.006258137058466673, -0.17462757229804993, 0.28619444370269775, 0.28262820839881897, 0.1835157573223114, -0.0057222479954361916, 0.44485974311828613, -0.20566363632678986, -0.2897636890411377, 0.11067406088113785, -0.2531103193759918, 0.05311611294746399, 0.1471911519765854, -0.04638967663049698, 0.19117437303066254, 0.07913307100534439, 0.07293962687253952, -0.018930237740278244, 0.012035833671689034, 0.096412792801857, 0.05384546145796776, 0.27412107586860657, -0.4239959418773651, 0.3741833567619324], [0.12565244734287262, 0.19427965581417084, 0.05364832654595375, -0.1502329707145691, 0.5481091737747192, 0.004492155741900206, 0.5288475155830383, -0.379181444644928, -0.08166112750768661, -0.6540705561637878, 0.10275006294250488, 0.4205687940120697, -0.1282283216714859, -0.13691380620002747, 0.1492079198360443, 0.33734452724456787, -0.1508650779724121, 0.25815796852111816, -0.19273565709590912, 0.26982876658439636, -0.22097843885421753, 0.3945258855819702, -0.5050082802772522, -0.002186843426898122, -0.1541627049446106, -0.13402898609638214, 0.46656131744384766, 0.12600739300251007, -0.015288801863789558, 0.3101827800273895, 0.18196508288383484, 0.5862816572189331, 0.22307778894901276, 0.08072510361671448, 0.16866962611675262, -0.3372659385204315, -0.026294341310858727, -0.2801686227321625, 0.2458345890045166, 0.015134714543819427, -0.05580950900912285, -0.19521008431911469, 0.32471758127212524, 0.20722070336341858, -0.0068006981164216995, 0.3040824830532074, 0.105207659304142, -0.44186776876449585, 0.06323541700839996, -0.032930728048086166, -0.18907910585403442, -0.2621219754219055, -0.28742045164108276, -0.17850981652736664, -0.1528444141149521, 0.26118728518486023, 0.08072400838136673, -0.16438226401805878, -0.194446861743927, -0.183259978890419, 0.13173247873783112, 0.4990667700767517, -0.6375344395637512, 0.32614070177078247], [0.08396676182746887, 0.17056821286678314, 0.18062826991081238, -0.11087268590927124, 0.43391168117523193, -0.009372608736157417, 0.6114112734794617, 0.0043212780728936195, 0.6675524711608887, -0.41346028447151184, -0.09200797230005264, -0.12930159270763397, -0.14901193976402283, -0.33433201909065247, 0.3020951449871063, 0.26569241285324097, -0.2592037618160248, 0.348918616771698, -0.579079270362854, 0.17429779469966888, -0.030348781496286392, 0.09628141671419144, -0.04721730202436447, -0.4900261163711548, -0.5736526846885681, 0.10513392090797424, 0.45809605717658997, -0.33907392621040344, -0.005519857630133629, 0.15179778635501862, -0.12080036103725433, 0.11368301510810852, -0.12217719852924347, 0.03293655440211296, 0.03655504807829857, 0.20392346382141113, -0.11129794269800186, -0.18066264688968658, 0.3547169268131256, 0.24252155423164368, 0.2781635820865631, -0.20151734352111816, 0.20585981011390686, -0.033251963555812836, -0.19341498613357544, 0.2853242754936218, 0.1786281168460846, -0.1914694458246231, 0.16928832232952118, -0.20398780703544617, -0.27025488018989563, -0.08306987583637238, 0.1168045848608017, -0.32078656554222107, 0.17865698039531708, -0.02596111223101616, 0.1959977000951767, 0.23675581812858582, -0.16720347106456757, 0.177608460187912, 0.03457912057638168, 0.4660975933074951, -0.16352206468582153, 0.08674304187297821], [0.13577395677566528, 0.11591041833162308, -0.1490618884563446, 0.0550515353679657, 0.08649494498968124, 0.40008148550987244, 0.3455430269241333, -0.1856265366077423, 0.7790833115577698, -0.12146633118391037, 0.09003110229969025, 0.30780839920043945, -0.2274947166442871, -0.22931808233261108, -0.0034138676710426807, 0.06635789573192596, 0.27188995480537415, 0.33223944902420044, 0.07142792642116547, 0.17714227735996246, -0.15194763243198395, -0.27813541889190674, -0.17665429413318634, -0.12031365931034088, 0.3714073896408081, 0.34468206763267517, -0.10049284994602203, -0.17432455718517303, -0.002111655892804265, 0.4494176506996155, -0.29374560713768005, -0.07621249556541443, -0.3440132737159729, -0.09498536586761475, 0.07400757074356079, -0.11713094264268875, -0.07055947184562683, -0.11563856154680252, 0.07760392874479294, -0.13666066527366638, -0.019036725163459778, 0.10453838109970093, 0.25932204723358154, -0.22476588189601898, 0.23705092072486877, 0.21598206460475922, 0.22433079779148102, -0.06884045898914337, 0.2841808795928955, 0.0722385123372078, -0.5534721612930298, -0.261997252702713, 0.01176636666059494, -0.07999949902296066, 0.5252728462219238, 0.524930477142334, 0.13374033570289612, -0.07167726010084152, -0.24840305745601654, -0.25049901008605957, 0.0036457637324929237, -0.1769580990076065, -0.031027531251311302, 0.12402184307575226], [-0.44710540771484375, 0.3958936333656311, -0.4231288433074951, 0.12173730134963989, 0.4538632333278656, -0.00017842352099251002, -0.2403896152973175, 0.17143645882606506, 0.8649427890777588, 0.5392845869064331, -0.07267292588949203, 0.1843193918466568, -0.2051873356103897, -0.09438912570476532, 0.6481935977935791, -0.11995133757591248, 0.3276507556438446, 0.22670137882232666, 0.1289081871509552, -0.06818737834692001, -0.04578050598502159, -0.3860004246234894, 0.24693964421749115, -0.042563293129205704, 0.40765026211738586, -0.04337361082434654, -0.05002380162477493, -0.10597764700651169, 0.17219513654708862, 0.22508707642555237, -0.47552525997161865, -0.05739141255617142, -0.6031762361526489, -0.293556809425354, -0.05793043226003647, 0.18730561435222626, -0.4229755103588104, 0.4794926345348358, 0.28675931692123413, 0.0006536624860018492, -0.0014128086622804403, -0.11882273107767105, 0.19645562767982483, 0.011991887353360653, 0.05288616940379143, 0.24184945225715637, -0.04769241437315941, -0.15137962996959686, 0.24531881511211395, 0.17465509474277496, -0.1261005401611328, -0.5934113264083862, 0.3397877812385559, 0.006532175932079554, 0.2787391245365143, 0.08736620098352432, 0.21803590655326843, -0.09296965599060059, -0.28983256220817566, -0.13191427290439606, -0.08104946464300156, -0.34659579396247864, -0.10642778128385544, 0.40164899826049805], [0.2049676924943924, 0.28124284744262695, -0.037656575441360474, -0.030275797471404076, -0.011678486131131649, 0.35674384236335754, 0.3105129897594452, 0.32582831382751465, 0.8963892459869385, 0.25722333788871765, 0.016277458518743515, 0.3331943452358246, 0.06203637272119522, -0.19228538870811462, 0.22028906643390656, 0.14963805675506592, 0.29192739725112915, 0.10410966724157333, -0.3420765995979309, -0.2716979682445526, -0.41779106855392456, 0.06120501831173897, 0.1717958301305771, 0.04311360791325569, 0.4515347480773926, 0.20790068805217743, -0.19089928269386292, -0.19396920502185822, -0.11942809075117111, 0.17147351801395416, 0.05025852844119072, -0.21044209599494934, -0.3924925923347473, -0.5672242641448975, 0.12379097193479538, -0.39957183599472046, -0.1833604872226715, -0.03511862829327583, 0.4592961370944977, -0.21248123049736023, -0.44077691435813904, -0.05376668646931648, 0.4506293535232544, 0.2129184901714325, 0.11206050962209702, 0.0804995596408844, 0.10594481974840164, -0.31932657957077026, 0.3412221670150757, 0.13139842450618744, 0.0559946745634079, 0.4808451533317566, 0.395792156457901, -0.08258269727230072, 0.16178685426712036, -0.15398263931274414, -0.23433281481266022, -0.05102922394871712, -0.14990831911563873, -0.1523139774799347, 0.1336110532283783, 0.19804240763187408, -0.03179014474153519, 0.262765496969223], [0.02789284847676754, -0.018340718001127243, 0.3547042906284332, -0.17257149517536163, 0.2891969382762909, -0.17570450901985168, -0.06325145810842514, -0.07735245674848557, 0.009732096455991268, 0.049360331147909164, -0.10226084291934967, 0.0001470023998990655, 0.1555895060300827, 0.022775055840611458, 0.28082072734832764, -0.03764630854129791, 0.10289950668811798, -0.11618184298276901, -0.6063247919082642, -0.023387297987937927, 0.21659301221370697, 0.16227257251739502, 0.27288195490837097, 0.19211331009864807, -0.027200620621442795, 0.23969648778438568, 0.09396221488714218, -0.1637822389602661, 0.3359965682029724, 0.24866746366024017, -0.18724973499774933, 0.03312285244464874, 0.18666432797908783, 0.12881456315517426, -0.3486334979534149, -0.36481887102127075, -0.10417339205741882, -0.41166359186172485, -0.16629543900489807, 0.05083094909787178, -0.2598035931587219, 0.10554349422454834, 0.16965702176094055, -0.09913698583841324, 0.005243356805294752, -0.18996134400367737, 0.25393885374069214, -0.18260270357131958, 0.4190969467163086, -0.49612855911254883, -0.36982232332229614, 0.11011401563882828, 0.16360323131084442, -0.24583345651626587, 0.008269702084362507, 0.05192633345723152, -0.2416202872991562, 0.5197498202323914, -0.49075937271118164, 0.12768307328224182, -0.07006803154945374, 0.18128032982349396, -0.16403606534004211, 0.2306777983903885], [0.01265550684183836, -0.2912341058254242, 0.28182852268218994, -0.24976083636283875, 0.13886402547359467, -0.4153302311897278, -0.25538066029548645, 0.09888305515050888, 0.34618332982063293, -0.1399659365415573, -0.22836247086524963, -0.11635410785675049, -0.05222728103399277, 0.11291162669658661, -0.042023420333862305, 0.11766649037599564, 0.3756462633609772, 0.12052728235721588, -0.13770750164985657, -0.2570803463459015, 0.16923488676548004, 0.037495482712984085, -0.06185165047645569, -0.08995284140110016, 0.09175897389650345, 0.40676000714302063, 0.12051314115524292, -0.2527245581150055, 0.17945408821105957, 0.017724130302667618, -0.2472456395626068, 0.4345002770423889, 0.3587494492530823, 0.6672486662864685, -0.4610464572906494, -0.12509967386722565, -0.1421358585357666, -0.48226678371429443, -0.20456477999687195, 0.3551765978336334, -0.20964327454566956, -0.1891162097454071, -0.0625506266951561, -0.557314932346344, -0.23747611045837402, -0.32935774326324463, 0.17758174240589142, -0.0868268683552742, -0.024535037577152252, -0.3810848295688629, 0.11197017133235931, -0.22264277935028076, 0.3641716539859772, -0.5221400856971741, -0.11120866984128952, -0.32898321747779846, -0.03222164139151573, 0.27734699845314026, -0.18294790387153625, 0.023698776960372925, -0.12921923398971558, 0.11930400133132935, -0.2780711352825165, 0.5951173305511475], [-0.20463530719280243, -0.08819390088319778, 0.5246006846427917, -0.03212451934814453, -0.09664319455623627, -0.1655770093202591, 0.06684503704309464, 0.4377812147140503, -0.1827683299779892, 0.14106811583042145, -0.5729004144668579, 0.04180851951241493, 0.026046590879559517, 0.14335444569587708, -0.02638673596084118, 0.20877604186534882, 0.39954131841659546, -0.13586966693401337, -0.3030512034893036, -0.2700809836387634, -0.07264776527881622, 0.013611547648906708, 0.012144791893661022, 0.041927412152290344, 0.3504059910774231, 0.24626871943473816, 0.5649644136428833, -0.24523569643497467, -0.12447216361761093, 0.07590721547603607, 0.08045203983783722, 0.28207820653915405, 0.16045404970645905, 0.0805356353521347, -0.30811652541160583, 0.030728882178664207, 0.016836006194353104, -0.20688669383525848, -0.003353540087118745, 0.14309996366500854, -0.2678470015525818, -0.17575334012508392, 0.6204410195350647, -0.17009057104587555, -0.07891441136598587, -0.24351291358470917, 0.14679013192653656, -0.19407905638217926, 0.08135554939508438, 0.018888121470808983, 0.21871814131736755, -0.17867328226566315, -0.07360918819904327, 0.01092952024191618, -0.2516272962093353, -0.02991698868572712, -0.2780880630016327, 0.4077918231487274, -0.3897591233253479, 0.04538650065660477, 0.18912969529628754, -0.07617367058992386, -0.2403978407382965, 0.3687031865119934], [0.018332812935113907, 0.004953357856720686, 0.3281994163990021, -0.2268364429473877, 0.6304721236228943, 0.02338847517967224, 0.19458279013633728, -0.21519888937473297, 0.39877447485923767, 0.39627841114997864, -0.14342807233333588, 0.4529454708099365, -0.0913974940776825, -0.00633811904117465, -0.16263845562934875, 0.3302338421344757, 0.12211207300424576, 0.1860956996679306, -0.9134418964385986, 0.23674167692661285, -0.1412716805934906, 0.05142448842525482, 0.2551482319831848, -0.33998075127601624, 0.40544718503952026, 0.6027239561080933, -0.1164119616150856, 0.07338684052228928, -0.4484056830406189, 0.13974356651306152, 0.011374037712812424, -0.009258517064154148, -0.2904336750507355, 0.15041399002075195, -0.11312718689441681, -0.24733692407608032, 0.0826752781867981, -0.21899554133415222, -0.10431274026632309, 0.0763452798128128, -0.34558409452438354, -0.028458796441555023, 0.411471962928772, -0.33975642919540405, 0.3314419388771057, 0.2726527750492096, 0.007681914605200291, -0.054177768528461456, -0.11523093283176422, 0.404752641916275, 0.14820271730422974, 0.22048228979110718, 0.07748045027256012, -0.195959210395813, 0.10043001174926758, 0.11702999472618103, 0.09454640001058578, 0.15030142664909363, 0.15108148753643036, -0.5077216625213623, 0.081389419734478, -0.13106249272823334, 0.03853145241737366, 0.15948034822940826], [0.43480366468429565, 0.6436062455177307, 0.1303796023130417, 0.04861639812588692, 0.292685866355896, 0.2070508599281311, 0.20797398686408997, 0.5017268657684326, 0.25167733430862427, 0.20455749332904816, 0.1371208131313324, 0.14575089514255524, 0.35393181443214417, -0.18618568778038025, -0.0190958883613348, 0.038025643676519394, 0.010853664018213749, 0.17244848608970642, -0.22296442091464996, 0.406920850276947, -0.35620224475860596, 0.07792206108570099, -0.18556560575962067, -0.07026349753141403, 0.29192376136779785, 0.3196693956851959, 0.23494818806648254, -0.052364375442266464, -0.39292004704475403, 0.20398187637329102, -0.005252597853541374, 0.09954996407032013, -0.10852406173944473, -0.07496219128370285, 0.13280995190143585, -0.10941242426633835, 0.0440916009247303, -0.04049745202064514, 0.17745301127433777, -0.041486699134111404, -0.32626649737358093, 0.19547070562839508, 0.04667586460709572, -0.09969420731067657, 0.3062931299209595, 0.17261628806591034, 0.15010268986225128, 0.0998997911810875, -0.008296982385218143, -0.14185035228729248, -0.018297262489795685, -0.08528795838356018, 0.20594584941864014, 0.0008611049852333963, -0.12571850419044495, 0.002600966952741146, -0.18787021934986115, -0.19810231029987335, -0.35484230518341064, 0.04276562109589577, -0.15523290634155273, 0.33253204822540283, 0.056929174810647964, -0.1742142140865326], [-0.03794412687420845, 0.11757651716470718, 0.053381238132715225, -0.07834585756063461, 0.07919726520776749, 0.09045486152172089, 0.3802037239074707, 0.5388754606246948, -0.0008484554127790034, -0.15190042555332184, -0.02763664536178112, 0.07381875813007355, -0.08815696090459824, -0.18433500826358795, 0.27817070484161377, 0.2532804012298584, 0.002888306276872754, -0.06329265236854553, -0.3199019134044647, -0.08918528258800507, 0.07019831985235214, 0.06823422014713287, -0.27441737055778503, -0.37981101870536804, -0.043786365538835526, 0.004331148695200682, 0.25499826669692993, -0.2630009353160858, -0.2585388422012329, -0.05732191354036331, -0.07029404491186142, 0.08759137988090515, -0.09337522834539413, 0.0064156549051404, -0.11653917282819748, -0.1515928953886032, 0.16565686464309692, 0.05498284846544266, -0.002624634187668562, 0.2295854091644287, 0.1846182644367218, -0.27953481674194336, 0.24136212468147278, 0.14050017297267914, -0.17654025554656982, -0.024130159988999367, 0.2044806033372879, -0.011320735327899456, 0.13435888290405273, 0.18134306371212006, -0.15967272222042084, -0.28490737080574036, 0.4417486786842346, 0.17756132781505585, -0.10560023784637451, -0.12229180335998535, -0.28105947375297546, 0.2363816201686859, 0.027419721707701683, -0.12589804828166962, 0.2370067536830902, 0.02614356391131878, 0.1329076737165451, -0.07064267247915268], [-0.6879012584686279, 0.34762948751449585, 0.5810273885726929, -0.011291288770735264, 0.3696552813053131, 0.5105059146881104, -0.7175343632698059, -1.104140043258667, 0.7318223118782043, 0.7816703915596008, -1.0510674715042114, -0.42651137709617615, -0.41700810194015503, -0.4090483784675598, -0.8618507981300354, -0.8372340798377991, 0.39520683884620667, -0.04696688428521156, -0.29339927434921265, -0.5564326047897339, 0.5401266813278198, -0.5139405727386475, 0.597417414188385, -0.44457748532295227, -0.9196754693984985, 0.46320948004722595, 1.0194066762924194, -0.12223184108734131, -0.632659912109375, 0.3229944705963135, 0.42509424686431885, 0.3834059238433838, 0.8321821093559265, -0.2830398678779602, -0.6531680822372437, 0.054553158581256866, -0.07462604343891144, 0.2128491848707199, -0.7076570987701416, -0.0005182346794754267, 0.31742119789123535, 0.01815711334347725, 0.6857851147651672, 0.5371965765953064, -0.23619197309017181, 0.7342022061347961, -0.9485447406768799, 0.3596813976764679, 0.37648624181747437, -0.4172113537788391, -0.027238359674811363, 0.5663984417915344, -0.8853642344474792, 0.5205016136169434, -0.11180964857339859, 0.42417219281196594, -0.4890075623989105, -0.6962290406227112, -0.19088894128799438, -0.713718831539154, -0.9613236784934998, 0.6995932459831238, -0.14485402405261993, -0.3173840343952179], [0.15464910864830017, -0.16699348390102386, 0.24541178345680237, 0.012966115027666092, 0.10500036925077438, 0.14794087409973145, 0.055582303553819656, 0.06788011640310287, -0.17255988717079163, -0.06486719846725464, 0.6087197065353394, 0.28435397148132324, -0.16013649106025696, -0.16093924641609192, 0.27273842692375183, 0.23781827092170715, 0.2272157222032547, -0.04346553236246109, 0.03207539767026901, 0.27097901701927185, -0.00930176954716444, -0.3788905441761017, 0.13765397667884827, -0.061666276305913925, 0.1846616417169571, 0.6464071273803711, 0.28580790758132935, -0.1547641009092331, 0.25014641880989075, -0.04451316222548485, -0.015114677138626575, 0.1452884078025818, 0.5052593946456909, -0.15388648211956024, 0.26420727372169495, -0.37167996168136597, 0.032055944204330444, -0.3199748694896698, 0.035000838339328766, 0.01715467870235443, 0.21150176227092743, 0.1772496998310089, -0.15037766098976135, -0.12468069046735764, -0.05146985873579979, 0.011529872193932533, 0.11656009405851364, -0.2590440511703491, 0.4985647201538086, 0.19924874603748322, -0.42887356877326965, -0.05399952083826065, 0.30117636919021606, 0.4058068096637726, -0.36837053298950195, -0.3421533405780792, 0.3872012495994568, 0.3080199956893921, -0.05775516480207443, 0.11242098361253738, -0.2686119079589844, -0.13278257846832275, 0.034473106265068054, 0.2983938753604889], [0.03892911225557327, -0.13599726557731628, -0.09203711152076721, -0.11633670330047607, -0.16291502118110657, -0.0506967194378376, -0.2012312263250351, 0.4189085066318512, 0.22416648268699646, -0.1524023860692978, -0.05228489637374878, -0.1150120198726654, 0.015382552519440651, 0.11717691272497177, 0.7201479077339172, -0.16211171448230743, 0.3265945613384247, 0.23680303990840912, 0.03859642893075943, 0.22423994541168213, -0.09701074659824371, -0.01846454292535782, 0.0197078138589859, 0.17525622248649597, 0.11995899677276611, 0.013554243370890617, -0.0504315160214901, -0.1549600511789322, 0.0016875044675543904, -0.07562719285488129, -0.01392419170588255, -0.21688945591449738, 0.0789182111620903, 0.12753239274024963, 0.2867564260959625, -0.4770458936691284, -0.2336297631263733, -0.1706639975309372, 0.3101315200328827, -0.029728621244430542, -0.37437641620635986, -0.003969050012528896, -0.036836154758930206, -0.3591437339782715, -0.15220041573047638, 0.24630557000637054, -0.03931022435426712, -0.7036458849906921, 0.2033972293138504, 0.3569013178348541, 0.031379010528326035, -0.13794437050819397, 0.158366858959198, 0.014913521707057953, 0.09385911375284195, 0.08853685855865479, -0.01064193993806839, 0.21664893627166748, 0.07892072945833206, 0.2265866994857788, 0.39360931515693665, -0.03031061589717865, 0.03207946941256523, 0.434757798910141], [0.18179266154766083, -0.13007527589797974, 0.2531011700630188, 0.07125458121299744, 0.029845427721738815, -0.10411432385444641, 0.07746671140193939, 0.1417892575263977, 0.07740955799818039, 0.17477983236312866, 0.4840628504753113, 0.38487961888313293, 0.16979965567588806, 0.29111921787261963, -0.030395766720175743, 0.10097404569387436, 0.4141944646835327, 0.025061102584004402, -0.15580423176288605, 0.17002561688423157, -0.4435622990131378, 0.0796823650598526, -0.2955285310745239, -0.04847538843750954, 0.16598522663116455, 0.11417914927005768, -0.2575969696044922, 0.16438254714012146, 0.18931984901428223, 0.17403285205364227, -0.1567600816488266, 0.2940793037414551, -0.3987419605255127, 0.1977577656507492, 0.010003861971199512, 0.09362143278121948, -0.22759471833705902, -0.24287191033363342, 0.26555144786834717, 0.0027292578015476465, 0.1822511851787567, -0.5049080848693848, 0.09966667741537094, -0.5185324549674988, 0.18756891787052155, -0.07154445350170135, 0.03930803760886192, 0.06696971505880356, 0.030168669298291206, -0.03616715222597122, -0.13763223588466644, -0.8160610198974609, 0.16683350503444672, -0.8375420570373535, -0.06608419865369797, 0.007541853468865156, 0.19542211294174194, -0.03480467572808266, -0.053016602993011475, 0.158550426363945, 0.18659228086471558, 0.09289495646953583, -0.14436867833137512, -0.04790866747498512], [0.4095509648323059, -0.08465160429477692, -0.42483988404273987, -0.318209171295166, -0.11781291663646698, -0.09891553968191147, 0.04577335715293884, 0.5439717769622803, 0.10120584815740585, -0.45648130774497986, 0.4536156952381134, 0.6081914305686951, 0.3312057852745056, 0.5546431541442871, 0.7409796118736267, 0.45021891593933105, -0.047471873462200165, 0.24652259051799774, 0.05727039650082588, 0.32050618529319763, -0.4456251561641693, 0.5595637559890747, -0.631026029586792, 0.567759096622467, 0.3241957426071167, -0.5057988166809082, -0.37245237827301025, -0.37357935309410095, 0.45211586356163025, 0.14872291684150696, -0.3814406096935272, -0.2187027782201767, -0.08972582966089249, 0.12813939154148102, -0.0349840372800827, 0.28218576312065125, 0.339672327041626, -0.2202194482088089, 0.5585355162620544, 0.4211336374282837, -0.3379030227661133, -0.43403494358062744, -0.0328134186565876, -0.08488009870052338, 0.16431847214698792, -0.4331384301185608, 0.49326443672180176, -0.3713301122188568, -0.3051866292953491, 0.29616835713386536, 0.5731036067008972, -0.2598123550415039, 0.423999160528183, -0.2615068852901459, 0.15779991447925568, -0.01709400676190853, -0.189876526594162, -0.1793048083782196, 0.22192996740341187, -0.03273477405309677, 0.41690951585769653, -0.22114701569080353, 0.2365463376045227, 0.46741318702697754], [0.0672745630145073, -0.14218522608280182, 0.030674107372760773, -0.31357133388519287, 0.04250195994973183, -0.16082781553268433, -0.26008179783821106, 0.2761363089084625, 0.11979778856039047, -0.0815623551607132, 0.42540907859802246, 0.05267855152487755, 0.08310168236494064, 0.3267609477043152, 0.1643073707818985, 0.17271147668361664, 0.03894532471895218, -0.00800823513418436, 0.10996774584054947, 0.20567543804645538, -0.23847998678684235, 0.009950889274477959, -0.15286816656589508, 0.08814222365617752, 0.08109195530414581, 0.011717543937265873, -0.2012970894575119, 0.06838152557611465, 0.3367442488670349, -0.020274940878152847, -0.2935931980609894, -0.07417052984237671, -0.2621220350265503, 0.0576617494225502, 0.07574640959501266, -0.2689880132675171, -0.18981608748435974, -0.10022269189357758, 0.45425739884376526, 0.1174173504114151, 0.09025841951370239, -0.2589283585548401, -0.11830099672079086, -0.5215780138969421, -0.006189730949699879, -0.5835059881210327, 0.13211950659751892, 0.018685996532440186, -0.017169924452900887, 0.6197054386138916, -0.04822760447859764, -0.4934203326702118, 0.1427294909954071, -0.55666583776474, -0.12385746091604233, -0.11896947771310806, 0.31228628754615784, 0.0011995808454230428, 0.059087108820676804, -0.011318319477140903, 0.5674252510070801, -0.11458122730255127, 0.2841017544269562, 0.18861787021160126], [0.24808500707149506, -0.1602272391319275, -0.0043389154598116875, -0.3507634699344635, -0.6955180764198303, -0.04343254491686821, 0.20825627446174622, -0.03910301998257637, -0.14725743234157562, 0.3090938627719879, 0.4951666593551636, 0.1600411832332611, 0.3136177957057953, 0.1271621584892273, -0.03175273910164833, 0.040909916162490845, 0.31669220328330994, -0.3328953683376312, 0.07442029565572739, 0.1203790083527565, -0.027118034660816193, 0.20686796307563782, 0.34447619318962097, 0.1366930902004242, 0.21653017401695251, -0.3713172674179077, 0.061080366373062134, -0.12225330621004105, 0.2234937995672226, -0.43010494112968445, -0.2649926245212555, -0.4225011169910431, -0.04033827781677246, 0.0331241600215435, -0.030992312356829643, 0.18438495695590973, -0.10012246668338776, -0.07239091396331787, 0.453823447227478, 0.05496753379702568, -0.32062315940856934, 0.007268967106938362, 0.11227560043334961, -0.15462099015712738, 0.18806417286396027, -0.0711396187543869, -0.23709218204021454, -0.2380167841911316, -0.005625274032354355, -0.012143155559897423, -0.22583931684494019, -0.0585210882127285, 0.30418193340301514, 0.30366504192352295, -0.11255192756652832, 0.11612696945667267, -0.1370057761669159, -0.09613825380802155, 0.1456676423549652, 0.020799944177269936, 0.08083179593086243, -0.5474814176559448, 0.12410160154104233, 0.2597923278808594], [-0.05687973275780678, -0.6758577823638916, -0.3756752014160156, 0.02590123564004898, -0.8791288733482361, -0.2587757110595703, 0.3065653145313263, 0.5991883277893066, -0.2586749792098999, -0.007913464680314064, 0.44899454712867737, -0.017624417319893837, 0.41945257782936096, 0.42158252000808716, 0.5040565729141235, 1.0518107414245605, -0.4512935280799866, 0.19027315080165863, -0.060380980372428894, 0.4786447584629059, -0.4233136475086212, 0.03246040642261505, -0.29133936762809753, 0.09722064435482025, -0.08950303494930267, -0.2279275357723236, -0.3977857530117035, -0.24571625888347626, 0.26576295495033264, -0.04204612970352173, -0.47537752985954285, -0.42177122831344604, -0.3634487986564636, 0.4011220932006836, 0.33260804414749146, 0.3279709815979004, -0.1269107460975647, -0.12324685603380203, 0.39635124802589417, 0.5648958086967468, -0.39075562357902527, -0.04797031730413437, -0.3369901478290558, -0.38956978917121887, 0.2907303273677826, -0.33331191539764404, 0.25556308031082153, -0.27416592836380005, 0.006979955360293388, 0.44385865330696106, 0.07192154228687286, -0.18707115948200226, 0.22671383619308472, 0.10477247089147568, 0.12708307802677155, 0.20872735977172852, 0.4147302508354187, 0.15477359294891357, -0.24401678144931793, 0.18317846953868866, 0.5511570572853088, -0.5996830463409424, 0.17157481610774994, 0.48523402214050293], [0.2113804817199707, -0.6520774364471436, 0.03291243687272072, -0.6788893342018127, -0.48809441924095154, -0.40719011425971985, 0.5333448648452759, 0.3319401741027832, -0.18693101406097412, 0.29258212447166443, 0.09756898134946823, 0.44752782583236694, 0.2691713869571686, 0.23208431899547577, 0.3867985010147095, -0.03238861635327339, -0.06756792962551117, -0.1345399022102356, -0.10588280856609344, 0.0647151991724968, 0.09622181951999664, -0.14726288616657257, 0.04184115305542946, -0.12166624516248703, -0.25472670793533325, -0.1073705330491066, -0.4408503770828247, -0.014190442860126495, -0.10287521034479141, 0.01077686995267868, 0.05231714993715286, -0.22750793397426605, 0.22811119258403778, 0.1939155012369156, 0.24979344010353088, 0.10033237934112549, -0.06834731251001358, 0.05913906171917915, 0.32951125502586365, 0.33145004510879517, -0.4962179660797119, -0.21061313152313232, -0.09838074445724487, -0.15105034410953522, 0.07236247509717941, 0.11007443815469742, 0.3417744040489197, -0.21701130270957947, -0.027401117607951164, 0.10105027258396149, -0.25646719336509705, -0.03533445671200752, 0.21029622852802277, -0.048704538494348526, 0.03129344806075096, -0.10750273615121841, -0.06098585203289986, -0.20711246132850647, -0.03440765291452408, 0.29756322503089905, 0.29649269580841064, -0.5328463912010193, 0.10965041816234589, 0.010608408600091934], [0.32585927844047546, -0.1981811225414276, -0.013916854746639729, 0.18821731209754944, -0.3200433552265167, -0.33605465292930603, 0.2760269045829773, 0.30795910954475403, -0.829353392124176, -0.5110389590263367, 0.14112766087055206, 0.1444258838891983, 0.15037177503108978, -0.1575375199317932, 0.09574819356203079, 0.3370122015476227, -0.4079389274120331, 0.11099256575107574, -0.20929394662380219, -0.0023069295566529036, 0.18058203160762787, -0.361446350812912, -0.37180617451667786, 0.011260373517870903, 0.3013029396533966, -0.18660350143909454, 0.1148376390337944, 0.1767396479845047, 0.002852238714694977, -0.4038112759590149, -0.1308053582906723, -0.015866931527853012, 0.25874313712120056, 0.044456589967012405, -0.0717248022556305, -0.15166769921779633, 0.2514302730560303, -0.39825963973999023, 0.2943894565105438, -0.1751537024974823, -0.020319698378443718, 0.1308525800704956, -0.3882296681404114, -0.06115564703941345, 0.3758956789970398, 0.04895094782114029, 0.44012778997421265, -0.3115633428096771, -0.17714154720306396, 0.10184971988201141, -0.006195794325321913, -0.08357755839824677, 0.22783489525318146, -0.20509299635887146, -0.107452891767025, -0.25102806091308594, -0.18930934369564056, 0.18569281697273254, 0.3421536982059479, -0.03756994381546974, 0.16928432881832123, 0.15117906033992767, -0.33131515979766846, 0.421883225440979], [0.46726953983306885, -0.0436883307993412, -0.44882962107658386, 0.2348586916923523, -0.15752412378787994, -0.126571923494339, 0.37427592277526855, 0.382371723651886, -0.3350873589515686, -0.25323253870010376, 0.054050181061029434, 0.09011084586381912, 0.1179429218173027, 0.1376662701368332, 0.4690606892108917, 0.6678014397621155, -0.5624913573265076, -0.01757722720503807, -0.5351995825767517, 0.216885507106781, 0.0051152678206563, -0.13331027328968048, -0.35321280360221863, 0.5008780360221863, 0.601746678352356, -0.1552278846502304, -0.16638314723968506, 0.2066008597612381, 0.20408102869987488, -0.20476964116096497, -0.049084294587373734, -0.09307285398244858, -0.15126553177833557, 0.19119291007518768, -0.24425654113292694, -0.15303835272789001, 0.1794663518667221, -0.48825183510780334, 0.20581041276454926, -0.18904833495616913, -0.33355391025543213, -0.5225138664245605, -0.4374845027923584, -0.11035601049661636, 0.4893341660499573, -0.2309974879026413, 0.6191271543502808, 0.08464432507753372, -0.42805561423301697, 0.22010375559329987, 0.3997029662132263, -0.3136996030807495, 0.4811481237411499, -0.04540860280394554, -0.3580419421195984, -0.17613615095615387, 0.39499932527542114, 0.23259174823760986, -0.04842223972082138, 0.10324236750602722, 0.13549456000328064, 0.0014463941333815455, -0.02241918072104454, 0.39829111099243164], [0.3151324987411499, -0.35500288009643555, 0.01155424490571022, -0.11380737274885178, 0.08445338159799576, -0.4550752341747284, 0.3912818133831024, 0.16784198582172394, -0.33447501063346863, 0.024642059579491615, 0.0556052029132843, 0.047886740416288376, -0.15635687112808228, -0.028190981596708298, 0.35595768690109253, 0.17788510024547577, -0.582934558391571, -0.01814892143011093, -0.3033924102783203, -0.4148539900779724, -0.016834281384944916, -0.43346184492111206, 0.16491441428661346, 0.27902600169181824, 0.24833546578884125, 0.1001698300242424, -0.02805737592279911, -0.0673697218298912, -0.10212796926498413, -0.41911476850509644, -0.021796884015202522, 0.10032407939434052, 0.2161906212568283, -0.04704538732767105, -0.012950103729963303, -0.12144705653190613, -0.12166079878807068, 0.09359323233366013, 0.04624636098742485, -0.18301628530025482, -0.4544639587402344, -0.19760596752166748, 0.13105949759483337, 0.07244900614023209, 0.33281001448631287, -0.021770711988210678, 0.037495944648981094, -0.2069072723388672, -0.19589953124523163, 0.43371331691741943, -0.13257427513599396, 0.025697264820337296, 0.3055649399757385, 0.014738374389708042, -0.11211477965116501, -0.0516560897231102, 0.4188118875026703, 0.02087152563035488, -0.2505960166454315, -0.18405920267105103, 0.3172909617424011, -0.3785127103328705, -0.1301475465297699, 0.09273973852396011], [0.10309213399887085, 0.12918148934841156, -0.1405409723520279, 0.020298859104514122, -0.00021349693997763097, -0.010737407021224499, -0.31992003321647644, 0.2558967173099518, 0.3305590748786926, -0.14731073379516602, 0.1827550232410431, -0.10476914793252945, 0.18598081171512604, 0.3676142394542694, 0.17412012815475464, 0.3386446535587311, -0.4445720911026001, -0.04227001219987869, -0.11872489005327225, -0.3358325958251953, -0.4410175085067749, 0.04599958658218384, 0.20313091576099396, 0.18013213574886322, 0.05603575333952904, -0.14784877002239227, -0.34847941994667053, 0.2473934143781662, 0.19076740741729736, 0.1554853320121765, -0.1641979217529297, -0.6500881910324097, -0.2582351565361023, 0.5702365636825562, -0.3841004967689514, 0.039433252066373825, 0.23552650213241577, -0.2059045135974884, 0.13771185278892517, 0.11726890504360199, -0.10546891391277313, 0.3243028521537781, -0.3275352418422699, 0.31021958589553833, -0.17144188284873962, 0.388045996427536, 0.1826036274433136, -0.15288619697093964, 0.026246001943945885, -0.38007882237434387, -0.06666567921638489, 0.15621432662010193, 0.1826593279838562, 0.26756995916366577, 0.23140454292297363, 0.014872865751385689, -0.19157317280769348, -0.22655917704105377, 0.22920234501361847, 0.357124000787735, 0.033605631440877914, 0.001052875304594636, -0.34198009967803955, 0.29783862829208374], [0.608199954032898, 0.5187267065048218, -0.6413126587867737, -0.3363128900527954, 0.15562264621257782, -0.2713482975959778, -0.27814462780952454, 0.26493945717811584, 0.3351342976093292, -0.48368096351623535, -0.13792675733566284, 0.6897312998771667, 0.5625710487365723, 0.13794778287410736, 0.47473353147506714, 0.5880900621414185, -0.5333094000816345, -0.35302042961120605, -0.4164218306541443, 0.3184785842895508, -0.9409536719322205, 0.5413293242454529, -0.33908987045288086, 0.1183653175830841, 0.10669243335723877, -0.4659883975982666, -0.19229191541671753, -0.42547333240509033, 0.6542695760726929, 0.09786000847816467, -0.9344733953475952, -0.5651126503944397, -0.05619468167424202, -0.17295819520950317, -0.17101792991161346, 0.13240231573581696, 0.0670023113489151, -0.19406312704086304, 0.4252691864967346, -0.3936808407306671, 0.07663242518901825, -0.15669819712638855, -0.4063350558280945, -0.276315301656723, 0.16174998879432678, -0.11862856894731522, 0.317615270614624, 0.014673387631773949, -0.03373444825410843, 0.33091866970062256, -0.18108288943767548, 0.11561336368322372, 0.48869985342025757, -0.3351033627986908, 0.33507001399993896, 0.18728233873844147, 0.45460429787635803, 0.24363215267658234, -0.3093353807926178, 0.47323423624038696, 0.6418806314468384, -0.39620497822761536, -0.27724340558052063, 0.37995681166648865], [0.13280606269836426, 0.22204278409481049, -0.35784855484962463, -0.19721102714538574, 0.4334220886230469, -0.17469505965709686, 0.13632847368717194, -0.08637506514787674, -0.21135808527469635, -0.31379303336143494, 0.19331109523773193, 0.4664306938648224, 0.3870929479598999, -0.03309641778469086, 0.1597452014684677, 0.545813262462616, -0.6163816452026367, -0.1309099793434143, -0.03792073205113411, 0.3790164887905121, -0.21492190659046173, 0.27722206711769104, -0.05238332226872444, 0.35901740193367004, 0.47475433349609375, -0.18062256276607513, -0.20115530490875244, -0.1053319051861763, 0.22614677250385284, -0.6565683484077454, -0.3167823553085327, -0.7263938784599304, -0.2418375462293625, -0.17612044513225555, -0.5219905972480774, -0.40401914715766907, -0.2963910400867462, 0.2534984350204468, -0.04202158749103546, -0.21357253193855286, 0.04054723307490349, -0.033648330718278885, -0.303438663482666, -0.33963653445243835, 0.17618542909622192, 0.6562028527259827, 0.11200539767742157, -0.229797825217247, -0.2598779499530792, -0.014674944803118706, -0.05527415871620178, -0.08681365847587585, 0.6785172820091248, 0.3460397720336914, -0.018979528918862343, 0.020209599286317825, 0.3101746439933777, 0.32330194115638733, -0.051330629736185074, 0.254494845867157, 0.3621503710746765, -0.41105467081069946, -0.6436149477958679, 0.33800366520881653], [0.1249491274356842, 0.010725194588303566, -0.16025543212890625, -0.22100433707237244, -0.29721951484680176, 0.45474791526794434, 0.5231810212135315, 0.052835818380117416, 0.2755032479763031, 0.30466315150260925, 0.08424749970436096, 0.2191481739282608, 0.16630250215530396, -0.31534746289253235, 0.340840607881546, 0.2473500669002533, -0.2598036527633667, 0.44916853308677673, -0.2993190586566925, 0.21401366591453552, 0.46021223068237305, 0.05054726451635361, -0.2329103648662567, 0.23418311774730682, 0.37069374322891235, 0.05465845763683319, 0.058972012251615524, -0.05458685755729675, -0.11399081349372864, -0.05991150438785553, 0.19534063339233398, -0.26266705989837646, -0.6051647067070007, 0.41700366139411926, -0.029126878827810287, -0.053029317408800125, 0.2667812705039978, 0.40556880831718445, 0.08055262267589569, -0.034605253487825394, 0.08069159090518951, 0.12637700140476227, 0.35455432534217834, 0.23688621819019318, 0.24703435599803925, 0.0448978915810585, -0.11639594286680222, -0.08446545898914337, -0.00810735672712326, -0.056086115539073944, 0.002998280804604292, 0.20139265060424805, 0.25988370180130005, -0.27730175852775574, 0.32138437032699585, -0.23140819370746613, -0.1018037348985672, -0.09979544579982758, 0.11159798502922058, -0.1459774523973465, 0.03735186159610748, -0.09982967376708984, -0.6383154988288879, 0.5488017797470093], [0.33442601561546326, -0.11420591920614243, -0.4066709578037262, -0.3366893529891968, -0.028154347091913223, 0.5578800439834595, 0.2560924291610718, 0.36960309743881226, 0.24845203757286072, -0.1519908607006073, 0.044714465737342834, 0.2404465675354004, -0.10832729935646057, 0.11944872885942459, 0.19978561997413635, 0.19184134900569916, -0.12453405559062958, 0.05191276967525482, -0.22774916887283325, 0.055373311042785645, 0.20921476185321808, -0.369670569896698, 0.15162776410579681, 0.5222040414810181, 0.2061518132686615, -0.18009153008460999, -0.13617944717407227, -0.13191485404968262, -0.04789825528860092, -0.1370876580476761, 0.5042703151702881, -0.17261838912963867, -0.44676733016967773, -0.1324661523103714, 0.020197955891489983, -0.15334109961986542, 0.2519131004810333, 0.07345180213451385, 0.17992621660232544, 0.26856985688209534, 0.07000423222780228, 0.11063394695520401, -0.04014416038990021, -0.08989515900611877, 0.21128246188163757, -0.0056701600551605225, 0.22302429378032684, -0.05057965964078903, -0.015067496336996555, -0.169159933924675, 0.010599132627248764, -0.14554738998413086, 0.20576328039169312, -0.22222812473773956, 0.3888680636882782, -0.2038850337266922, 0.1922534704208374, -0.2534589469432831, 0.02853807434439659, 0.17221078276634216, 0.01965194195508957, 0.04736478999257088, 0.13462473452091217, -0.39217978715896606], [0.19057752192020416, -0.4131469428539276, -0.40198230743408203, 0.2023237645626068, -0.42788708209991455, 0.031044868752360344, 0.12899580597877502, 0.5142860412597656, -0.3174777030944824, -0.08037199825048447, 0.4292473793029785, 0.455490380525589, 0.0789433941245079, -0.03875919431447983, 0.5135791301727295, 0.49470847845077515, 0.1556989699602127, 0.037611495703458786, -0.0763126015663147, 0.12173477560281754, 0.07287970185279846, 0.4124206602573395, 0.11499803513288498, -0.09050321578979492, 0.40359312295913696, 0.25322961807250977, 0.16537147760391235, 0.19532522559165955, -0.09924118220806122, 0.09270504862070084, 0.06700828671455383, -0.2933679223060608, -0.14651919901371002, 0.4874821901321411, -0.25853216648101807, -0.10421024262905121, 0.36333268880844116, 0.06105349212884903, 0.07203423231840134, -0.1486978977918625, 0.057548657059669495, -0.03479690104722977, -0.37674471735954285, 0.11738011986017227, 0.26325708627700806, -0.0835513323545456, 0.24713918566703796, 0.16819240152835846, 0.04426359012722969, 0.23717935383319855, -0.035394009202718735, 0.044617872685194016, 0.18778176605701447, -0.2030908465385437, -0.24495035409927368, -0.04646218195557594, -0.10684186965227127, -0.018554383888840675, -0.18505288660526276, -0.02764686942100525, 0.5302432775497437, 0.36581265926361084, 0.25162366032600403, -0.1783110648393631], [0.10266245901584625, -0.2405652403831482, -0.13456638157367706, -0.08940137922763824, 0.21276940405368805, -0.05139028653502464, 0.08371077477931976, 0.2773935794830322, 0.46000584959983826, -0.30817681550979614, 0.24608968198299408, 0.026376858353614807, -0.22289276123046875, 0.17312948405742645, 0.11665015667676926, -0.04913540184497833, -0.2593372166156769, 0.005153951700776815, 0.5192296504974365, 0.07817110419273376, 0.21919512748718262, 0.12967362999916077, -0.22025814652442932, 0.18861430883407593, -0.11875627934932709, -0.23088987171649933, -0.364610880613327, -0.006965296342968941, -0.06222556531429291, 0.06164970621466637, 0.07462500780820847, 0.15315666794776917, -0.18875788152217865, 0.06512148678302765, 0.22111062705516815, 0.2202601432800293, -0.23671755194664001, 0.04058336094021797, -0.460589200258255, 0.050273120403289795, 0.39894014596939087, -0.13985617458820343, -0.4368128776550293, 0.11517209559679031, -0.3907443881034851, -0.02522396296262741, 0.1668333262205124, -0.10521392524242401, -0.2855594754219055, 0.19356374442577362, 0.019143352285027504, 0.01754770055413246, 0.06790444254875183, 0.1376606971025467, -0.13135221600532532, -0.03688666969537735, -0.13499274849891663, 0.036641404032707214, -0.15737777948379517, -0.028836531564593315, -0.3627434968948364, -0.4747462272644043, 0.09932936728000641, -0.08332841843366623], [0.051668599247932434, -0.10391546785831451, -0.12826935946941376, 0.023559125140309334, -0.014242724515497684, -0.04307889938354492, -0.0813896432518959, -0.23228183388710022, 0.19763478636741638, -0.19097639620304108, 0.042063821107149124, 0.5441498756408691, 0.16456717252731323, -0.03499455749988556, 0.21261736750602722, 0.12475807964801788, 0.4897272288799286, -0.022302420809864998, -0.08644474297761917, -0.003035076428204775, 0.09979012608528137, -0.00305144302546978, 0.1335790902376175, 0.4168715476989746, -0.06338463723659515, 0.15296852588653564, 0.1236800104379654, 0.019827494397759438, 0.13589993119239807, 0.1452842354774475, 0.0861203745007515, -0.12015096843242645, -0.09412012994289398, 0.002553425030782819, 0.07333207875490189, 0.1258537769317627, 0.033647119998931885, -0.13259385526180267, 0.5661356449127197, 0.19091618061065674, 0.4166569709777832, 0.07971875369548798, 0.21286648511886597, 0.3430400490760803, 0.23245804011821747, 0.42460691928863525, 0.1791752427816391, 0.03438028320670128, 0.18773658573627472, -0.002853803103789687, 0.05907256528735161, 0.026534708216786385, 0.2259250432252884, 0.3539682626724243, -0.06111627817153931, -0.08820696175098419, 0.09076999127864838, 0.018125714734196663, -0.13634611666202545, 0.3340492844581604, 0.08671457320451736, -0.2048296183347702, -0.23195837438106537, -0.18106383085250854], [0.04982776194810867, -0.30051305890083313, 0.12036208063364029, -0.059801407158374786, 0.5505374073982239, 0.29117998480796814, -0.05976089835166931, -0.11496253311634064, 0.19665522873401642, 0.2963941693305969, -0.1241222694516182, -0.2050143927335739, -0.06220201775431633, 0.03929779306054115, 0.07109317183494568, 0.15800558030605316, -0.10240627825260162, -0.3675358295440674, 0.1488906741142273, -0.20170658826828003, -0.3323492705821991, -0.009670237079262733, 0.10805092751979828, -0.05598016083240509, 0.042728736996650696, 0.039308883249759674, -0.054229430854320526, -0.19681280851364136, -0.058231204748153687, 0.03600190207362175, 0.08709321171045303, -0.005706290248781443, -0.26491132378578186, -0.16250620782375336, -0.42643001675605774, -0.005391012877225876, 0.26853758096694946, -0.2602267563343048, -0.16822609305381775, 0.0681084617972374, 0.24951337277889252, -0.19351515173912048, 0.0034000547602772713, -0.33586037158966064, -0.004880514927208424, 0.33669164776802063, 0.016655702143907547, -0.02288905903697014, 0.13978169858455658, -0.1030154749751091, -0.13443024456501007, 0.08786407113075256, -0.0016154446639120579, 0.04379387944936752, -0.19377878308296204, 0.3059200644493103, 0.1461597979068756, -0.12823887169361115, 0.2266339808702469, -0.12254926562309265, -0.10973119735717773, -0.02470858208835125, -0.3122698962688446, 0.17975455522537231], [-0.2877330780029297, -0.19456414878368378, -0.2956061363220215, -0.1589866280555725, 0.007790455594658852, -0.08838705718517303, -0.1370985209941864, -0.15635310113430023, 0.013447980396449566, 0.1759406328201294, -0.15117067098617554, -0.0027924382593482733, 0.1299625039100647, 0.24956941604614258, 0.2735055387020111, -0.1426883041858673, 0.009639489464461803, 0.08343985676765442, -0.23100683093070984, 0.02520986646413803, 0.08873508870601654, -0.038503266870975494, -0.05958451330661774, -0.4998253583908081, -0.40018150210380554, 0.10047409683465958, 0.12138669937849045, 0.07455260306596756, -0.1450725644826889, -0.07404627650976181, 0.003012611297890544, -0.3107159435749054, 0.04672390967607498, 0.07722742110490799, -0.0718156099319458, 0.024953670799732208, -0.3249346613883972, 0.07354559749364853, -0.010220285505056381, -0.3707040250301361, -0.07581008970737457, -0.0761970579624176, 0.007762393448501825, -0.14286436140537262, -0.12311597913503647, 0.057012367993593216, 0.0213689636439085, -0.12482808530330658, 0.11721687018871307, 0.25445300340652466, -0.269599974155426, 0.2207489162683487, 0.0939103215932846, 0.10249331593513489, -0.01810643821954727, -0.07591865956783295, 0.11277026683092117, 0.041135527193546295, 0.039064425975084305, -0.12386543303728104, 0.31399253010749817, -0.05988852679729462, -0.07036971300840378, 0.08173153549432755], [-0.15757633745670319, -0.3033422529697418, 0.20120994746685028, -0.3134186267852783, 0.3077767491340637, 0.2450833022594452, 0.2171890139579773, -0.036537233740091324, -0.09500721842050552, -0.12187755852937698, -0.03950181230902672, 0.037076685577631, 0.20858238637447357, -0.21320536732673645, -0.05839542672038078, -0.08200652152299881, -0.3091581165790558, 0.0690174475312233, -0.12798461318016052, 0.04214935749769211, -0.11074879765510559, -0.2375480830669403, 0.02412758581340313, -0.043472521007061005, 0.006534770131111145, -0.11966370046138763, 0.10046118497848511, 0.23101843893527985, 0.010461072437465191, 0.15038776397705078, -0.24709007143974304, 0.0906369611620903, -0.2026309370994568, -0.21380065381526947, -0.23765496909618378, 0.16893886029720306, 0.1595039814710617, 0.03842190280556679, -0.2538009285926819, -0.029168015345931053, 0.06018773466348648, 0.07283437997102737, -0.28788483142852783, -0.2637312412261963, -0.008273369632661343, 0.0931432768702507, -0.44809842109680176, -0.017118655145168304, 0.04945213347673416, 0.1579323410987854, 0.1479804366827011, 0.08339188247919083, -0.17986640334129333, -0.40162473917007446, -0.020890027284622192, 0.26493051648139954, 0.2548045814037323, 0.15730765461921692, -0.02152729593217373, 0.12828658521175385, -0.11648418009281158, 0.004339100327342749, 0.32811224460601807, -0.1751086562871933], [0.30808088183403015, -0.16598615050315857, 0.33892446756362915, -0.3985658884048462, 0.037096746265888214, 0.10002783685922623, -0.058772727847099304, 0.24464534223079681, 0.24328140914440155, -0.17933131754398346, -0.26750069856643677, 0.1247674897313118, 0.22613710165023804, 0.14229726791381836, 0.30559539794921875, -0.019605427980422974, 0.5247297883033752, 0.14748084545135498, -0.3536631762981415, -0.15719230473041534, -0.004601723048835993, 0.06238227337598801, 0.18116001784801483, 0.2270326018333435, 0.10362030565738678, 0.21522676944732666, 0.07434693723917007, 0.12856370210647583, 0.13368968665599823, 0.17526045441627502, 0.14477385580539703, 0.04770869016647339, 0.4067341089248657, -0.3367292582988739, -0.07020099461078644, -0.18435543775558472, -0.0007753368117846549, 0.27354830503463745, -0.13503427803516388, -0.3872184753417969, 0.004809821955859661, 0.18820425868034363, 0.27082860469818115, 0.03807153180241585, -0.18327899277210236, 0.05671995133161545, 0.2238728553056717, -0.2630639970302582, 0.44919466972351074, 0.2270943969488144, -0.1373358815908432, 0.05745936557650566, 0.2372492551803589, -0.05414793640375137, 0.1529865860939026, 0.07977115362882614, -0.0843580961227417, 0.49574458599090576, -0.04856330528855324, 0.09621007740497589, -0.006123424507677555, 0.1216488778591156, -0.15811146795749664, -0.45310771465301514], [0.3548848032951355, 0.18694615364074707, 0.07782948017120361, -0.175930917263031, 0.17413586378097534, -0.029055381193757057, 0.004037331789731979, 0.025266660377383232, 0.03293050825595856, 0.17982754111289978, 0.1574227660894394, -0.16153742372989655, 0.06239579990506172, 0.3225333094596863, 0.6209682822227478, 0.08666933327913284, 0.09999953210353851, -0.2916995584964752, -0.036635465919971466, -0.1387888342142105, 0.21568557620048523, -0.18328897655010223, -0.09876786917448044, -0.304482102394104, -0.5912116765975952, 0.2786845862865448, -0.20731349289417267, -0.010112722404301167, -0.2935410737991333, -0.12076112627983093, 0.1719987541437149, 0.09156069159507751, -0.14844316244125366, 0.11402872949838638, 0.07998126745223999, 0.05438317731022835, -0.35923877358436584, -0.15492767095565796, -0.4992274343967438, -0.045582130551338196, -0.28149858117103577, 0.12385293841362, 0.1882905215024948, -0.26934635639190674, -0.22490669786930084, -0.07274254411458969, 0.010883491486310959, -0.2808229923248291, 0.10634186863899231, 0.02076675184071064, -0.3257744014263153, -0.009739995002746582, 0.45132142305374146, -0.13778211176395416, -0.443686306476593, 0.13658390939235687, -0.08622457087039948, 0.08950280398130417, -0.20732642710208893, -0.14380091428756714, 0.5729320645332336, 0.1662851870059967, 0.13682393729686737, -0.20847533643245697], [-0.20349714159965515, -0.5018829703330994, -0.14307966828346252, 0.1691228300333023, 0.09138409048318863, -0.03915838152170181, -0.003942170646041632, -0.12177891284227371, 0.036196596920490265, 0.13538943231105804, -0.2856511175632477, 0.052970729768276215, 0.16483275592327118, -0.07338005304336548, 0.12386754155158997, 0.49756529927253723, -0.018445374444127083, 0.0695275217294693, -0.13047128915786743, 0.03204098343849182, 0.08136529475450516, 0.034443583339452744, -0.1802583634853363, 0.03647995367646217, 0.2584821879863739, 0.07930834591388702, 0.17005692422389984, -0.04189819097518921, 0.13256488740444183, 0.04936804622411728, -0.16809885203838348, 0.05630708858370781, -0.17530885338783264, -0.11187848448753357, 0.033468835055828094, 0.05254586040973663, -0.2102285921573639, 0.18632011115550995, 0.10111737996339798, -0.12457956373691559, -0.2718091607093811, -0.0256157536059618, -0.07883245497941971, 0.020000595599412918, -0.06419055908918381, -0.35487157106399536, -0.06865068525075912, -0.05402633920311928, 0.11201650649309158, -0.1234254315495491, 0.29675057530403137, -0.3379334807395935, 0.23178385198116302, -0.03965436667203903, 0.15195457637310028, 0.01410704292356968, 0.20144686102867126, -0.06847657263278961, -0.194210484623909, 0.25111207365989685, -0.02006073296070099, 0.039166372269392014, 0.21827536821365356, -0.1824256330728531]], [[0.22765929996967316, -0.15195798873901367, -0.05069220811128616, 0.1393812745809555, -0.24311216175556183, -0.17872044444084167, 0.3044220507144928, 0.33040186762809753, -0.06341318786144257, -0.07518909126520157, -0.06340303272008896, 0.2321145385503769, 0.0068903109058737755, -0.16681045293807983, 0.30912914872169495, -0.0920928493142128, 0.47708386182785034, -0.2849487066268921, 0.2441869080066681, -0.18062765896320343, 0.05814731493592262, 0.013260271400213242, 0.025485415011644363, -0.05432169884443283, 0.10148120671510696, 0.12622444331645966, 0.09100935608148575, -0.0019273447105661035, 0.030163466930389404, -0.3878152072429657, -0.0856219008564949, 0.487375408411026], [-0.4056793451309204, 0.2658343017101288, -0.07403430342674255, 0.2750639319419861, 0.439371258020401, 0.045412126928567886, -0.29781821370124817, 0.2590390741825104, 0.22556166350841522, 0.048584192991256714, -0.01601380668580532, -0.06901618093252182, -0.18364217877388, 0.3952086865901947, -0.3258717358112335, 0.3420499265193939, -0.5320466160774231, -0.45645439624786377, 0.03334109112620354, 0.052553270012140274, -0.4549625813961029, 0.2657566964626312, -0.31416910886764526, 0.5260726809501648, 0.2663609981536865, -0.436271607875824, 0.5002635717391968, -0.28832244873046875, 0.0821744054555893, -0.04960586503148079, -0.10425569862127304, 0.31461235880851746], [-0.07774768769741058, 0.09592466801404953, -0.049269113689661026, -0.25805285573005676, -0.030329203233122826, 0.1114630326628685, -0.0944778174161911, 0.17306075990200043, 0.29241910576820374, -0.15657681226730347, -0.3855721652507782, -0.051370345056056976, -0.1835853010416031, -0.1657017320394516, -0.0743197575211525, 0.3258228302001953, -0.0036262343637645245, 0.048455413430929184, 0.2848512530326843, -0.05851856619119644, 0.03756112977862358, 0.056938834488391876, -0.15316753089427948, 0.001528245280496776, 0.14121109247207642, 0.009458129294216633, 0.656562864780426, -0.22723931074142456, -0.08272028714418411, -0.21186481416225433, 0.24355244636535645, 0.2265443503856659], [0.23635686933994293, -0.45965829491615295, -0.43528738617897034, 0.0015827780589461327, 0.2776012420654297, -0.28486835956573486, -0.5277746915817261, 0.19916792213916779, 0.1222974881529808, -0.19205410778522491, -0.2430099993944168, -0.16539421677589417, -0.02554914727807045, -0.05294598266482353, 0.10455497354269028, -0.37175995111465454, -0.15015141665935516, -0.2350061684846878, -0.07506798207759857, -0.04854844883084297, 0.13963480293750763, -0.10952837765216827, 0.02093324065208435, 0.19431598484516144, 0.4918324649333954, -0.10209111869335175, 0.1297825425863266, -0.30701830983161926, -0.4386684000492096, 0.24526530504226685, -0.01645231805741787, 0.3101412057876587], [-0.6017388701438904, 0.09192916750907898, 0.33216241002082825, 0.45826783776283264, 0.39207983016967773, -0.30481332540512085, -0.5998584032058716, 0.594350278377533, -0.08969796448945999, 0.2530057728290558, -0.3483133614063263, -0.49508219957351685, -0.07033290714025497, 0.1903788447380066, -0.19166748225688934, 0.4385066330432892, -0.5585357546806335, 0.14464661478996277, -0.11904308199882507, 0.17102152109146118, -0.3344568908214569, 0.054377805441617966, -0.14836254715919495, 0.7444469332695007, 0.3945765197277069, -0.3823476731777191, 0.5939639806747437, -0.17113840579986572, 0.03391915559768677, -0.32004934549331665, 0.14430266618728638, 0.522777259349823], [-0.18696299195289612, 0.21109317243099213, -0.02691030129790306, 0.0562286376953125, 0.3977297842502594, -0.1551603525876999, 0.0465095117688179, 0.12503975629806519, -0.1246243417263031, 0.11795675754547119, -0.3520415127277374, -0.44710659980773926, -0.39650291204452515, 0.3065832853317261, -0.28199300169944763, 0.0003796905220951885, -0.3210930824279785, -0.19845063984394073, -0.38986819982528687, 0.06489074975252151, -0.18234051764011383, -0.10100927203893661, -0.1316252499818802, 0.25327351689338684, 0.5958296656608582, -0.4213886857032776, 0.31410425901412964, -0.08550932258367538, -0.138959601521492, 0.019720934331417084, 0.08282594382762909, 0.2795849144458771], [0.529498279094696, 0.05510527268052101, 0.0857977494597435, 0.11840099096298218, -0.24775677919387817, 0.18557508289813995, 0.41360849142074585, -0.3613133430480957, -0.586486279964447, -0.022084029391407967, -0.14577309787273407, -0.0601591058075428, 0.1755848526954651, -0.1740521639585495, 0.08930342644453049, 0.019189929589629173, 0.0492803156375885, -0.3006252944469452, -0.11278535425662994, 0.09521587938070297, 0.17565543949604034, -0.5428866147994995, 0.20903106033802032, -0.6187863349914551, 0.06907132267951965, 0.31813767552375793, -0.4757988452911377, 0.19275246560573578, -0.19880235195159912, -0.1549047976732254, 0.18045632541179657, -0.3583533465862274], [0.28318479657173157, -0.0677579715847969, 0.20970262587070465, -0.2335600107908249, -0.2564540207386017, 0.37720873951911926, 0.17785051465034485, 0.17978088557720184, 0.3883983790874481, -0.1637621968984604, 0.14563855528831482, -0.20824244618415833, 0.3324927091598511, 0.02513290010392666, 0.36721014976501465, -0.1516277939081192, -0.03879434987902641, 0.060681119561195374, -0.38995814323425293, -0.1414908915758133, 0.4483891427516937, 0.12494412809610367, 0.6181209683418274, 0.2381669580936432, -0.07682205736637115, 0.3018890619277954, -0.19265075027942657, -0.04008328542113304, -0.17725880444049835, -0.13172273337841034, -0.34692078828811646, 0.011887745000422001], [-0.3520817160606384, -0.33661332726478577, 0.05583850294351578, 0.43368005752563477, 0.4045041501522064, -0.32297295331954956, -0.17676641047000885, 0.5759369134902954, 0.20954842865467072, -0.1827213168144226, -0.1159709095954895, 0.12043311446905136, -0.6599347591400146, 0.5551843047142029, -0.6904000043869019, 0.5139100551605225, -0.5387465953826904, 0.03997206315398216, -0.33240872621536255, -0.11316808313131332, -0.5463399887084961, 0.5182045102119446, -0.22628335654735565, 0.6782397031784058, 0.10093460232019424, -0.1751376837491989, 0.4176050126552582, -0.6303989887237549, 0.0061067151837050915, 0.008667541667819023, -0.21832087635993958, 0.5372558832168579], [-0.2612743079662323, -0.09661955386400223, -0.14222773909568787, -0.03944384679198265, 0.22361347079277039, -0.010694017633795738, -0.051795411854982376, 0.3607000410556793, 0.30124998092651367, -0.1080952137708664, -0.08771070837974548, -0.25540560483932495, -0.2556467652320862, -0.1955713927745819, 0.048195142298936844, 0.3707427680492401, -0.0027333905454725027, 0.19231818616390228, -0.1931544989347458, 0.07505656033754349, -0.19188815355300903, 0.24026425182819366, -0.1601606011390686, 0.12796591222286224, 0.3709481358528137, 0.012897751294076443, 0.12754586338996887, -0.053365420550107956, -0.20820897817611694, -0.2555181682109833, -0.09778118878602982, 0.4115634262561798], [0.2683081328868866, -0.38604751229286194, -0.08729162812232971, -0.5516778230667114, 0.3790896236896515, -0.06049978733062744, 0.3951875567436218, 0.04742211103439331, -0.2077881246805191, -0.25763019919395447, 0.159704327583313, -0.17406165599822998, 0.17498590052127838, -0.051852159202098846, -0.15336523950099945, -0.35397055745124817, 0.2524484097957611, -0.1153704896569252, -0.10789744555950165, 0.031409475952386856, 0.35498788952827454, -0.04130684211850166, 0.10070106387138367, -0.03066536970436573, -0.3217732608318329, 0.20313307642936707, -0.032418522983789444, 0.17841601371765137, -0.3402489125728607, -0.2155391424894333, -0.14881643652915955, -0.07803083211183548], [0.1810828149318695, 0.23663190007209778, -0.1054641529917717, -0.12376303970813751, 0.25012320280075073, 0.029314426705241203, 0.2668130099773407, 0.1670338660478592, -0.19974415004253387, -0.35330790281295776, -0.35405072569847107, 0.08163156360387802, 0.2926959693431854, 0.35750508308410645, 0.24370388686656952, 0.24714049696922302, 0.08924160152673721, -0.22971408069133759, 0.11849545687437057, -0.03384419158101082, 0.10965874791145325, 0.16354592144489288, 0.13296407461166382, 0.2501007914543152, 0.2876148521900177, 0.23763097822666168, 0.043259721249341965, 0.05187011510133743, -0.08634519577026367, -0.2049468755722046, -0.158279150724411, 0.24959802627563477], [-0.04275178164243698, 0.001959490356966853, -0.1417965441942215, 0.24662837386131287, -0.039394550025463104, -0.2879292666912079, 0.2134724259376526, -0.011040326207876205, 0.04825526848435402, -0.0755448266863823, -0.03394245728850365, -0.1793249249458313, -0.04038963094353676, -0.17730122804641724, 0.29124513268470764, 0.06825298815965652, 0.0938924252986908, 0.1885775327682495, -0.43247175216674805, -0.2902962565422058, -0.1541507989168167, 0.03910507261753082, -0.17199677228927612, 0.21615895628929138, 0.02877672202885151, 0.18150249123573303, -0.02749778889119625, 0.20786519348621368, 0.11673478782176971, -0.00010331941302865744, -0.2702089846134186, 0.34024578332901], [0.021681243553757668, -0.19489288330078125, -0.05632716044783592, -0.295602947473526, 0.013390692882239819, 0.14920060336589813, 0.16747505962848663, -0.26221975684165955, 0.021082835271954536, 0.14457374811172485, 0.15454964339733124, 0.3428860902786255, 0.34047919511795044, 0.19719937443733215, -0.11415323615074158, 0.1496649831533432, 0.13321268558502197, -0.07273983955383301, 0.01933501847088337, 0.03570453077554703, 0.18107236921787262, -0.08177057653665543, 0.24262431263923645, -0.11455412954092026, -0.02651253156363964, 0.04980437457561493, -0.1016814112663269, 0.2414790838956833, -0.18772540986537933, 0.373467355966568, -0.378117173910141, -0.14049503207206726], [0.30544018745422363, 0.048218004405498505, -0.008140143007040024, 0.0977083146572113, 0.03125035762786865, 0.166032612323761, 0.4830845594406128, 0.14537471532821655, 0.09673716872930527, -0.25557801127433777, -0.06491392105817795, -0.06796790659427643, 0.03435511887073517, -0.10675057768821716, 0.046563200652599335, 0.07097463309764862, 0.10227634757757187, 0.28456389904022217, -0.18199311196804047, -0.10480216145515442, 0.3310893476009369, 0.040143754333257675, 0.3554999530315399, -0.2394023984670639, 0.3349544405937195, 0.23015950620174408, -0.16158930957317352, 0.03650285303592682, 0.13775935769081116, -0.12951485812664032, 0.022753220051527023, -0.029628446325659752], [0.05424472689628601, 0.251798152923584, -0.09237387776374817, 0.19794054329395294, -0.09504881501197815, -0.0027148041408509016, 0.24910536408424377, 0.15040527284145355, -0.1835218369960785, 0.10573693364858627, 0.19607223570346832, 0.07720471918582916, 0.10611672699451447, -0.17401738464832306, 0.19901670515537262, -0.20555514097213745, 0.4151761531829834, -0.40956807136535645, -0.033721502870321274, -0.07368078082799911, 0.1513592153787613, 0.31080231070518494, 0.3544749617576599, 0.25622129440307617, -0.113096222281456, 0.444810688495636, -0.004261697642505169, 0.5868896245956421, -0.19224676489830017, -0.2916850447654724, 0.0034334645606577396, 0.08491553366184235], [-0.11496341228485107, -0.162034809589386, 0.005530743394047022, -0.07807827740907669, 0.3882457911968231, -0.2719905972480774, -0.21750245988368988, 0.1947297751903534, 0.4032232165336609, -0.5133811831474304, -0.08727321773767471, -0.06367728859186172, -0.35444551706314087, 0.25785940885543823, -0.5189520120620728, 0.39442577958106995, -0.21472957730293274, 0.19941365718841553, -0.1307593137025833, -0.08278854936361313, 0.007310593966394663, 0.4998433291912079, -0.4746103584766388, 0.23454685509204865, 0.4384024739265442, -0.09944970160722733, 0.16488301753997803, -0.9888282418251038, 0.08866959810256958, 0.08625782281160355, -0.3791441321372986, -0.14189039170742035], [0.30847787857055664, 0.005934856832027435, -0.06322618573904037, 0.3417658507823944, 0.03376214578747749, 0.47190743684768677, -0.07106660306453705, -0.03471299260854721, -0.3583061993122101, -0.01893051341176033, -0.3303634822368622, 0.0927763283252716, 0.10580462217330933, 0.22189390659332275, 0.17359818518161774, 0.2476828396320343, 0.10509984940290451, -0.1837960183620453, 0.0011141932336613536, -0.10953584313392639, 0.43202829360961914, -0.11873745173215866, 0.09247931092977524, -0.20709285140037537, 0.04956292361021042, 0.10122288763523102, -0.3242664635181427, 0.31998735666275024, -0.17759384214878082, -0.06960220634937286, 0.4981127977371216, -0.368144690990448], [0.10629346966743469, -0.18197910487651825, 0.14025303721427917, -0.23321883380413055, 0.2701399326324463, 0.17183782160282135, 0.10446778684854507, 0.10664532333612442, -0.03470417857170105, -0.09589409083127975, 0.3844183087348938, -0.14472618699073792, -0.2581608295440674, 0.2249779850244522, -0.25303682684898376, -0.040914371609687805, -0.2904132008552551, -0.09029746055603027, -0.01719595305621624, 0.024215316399931908, 0.16113315522670746, 0.11471975594758987, -0.08042881637811661, 0.09845278412103653, -0.03261242434382439, 0.12962959706783295, 0.1802392452955246, -0.2221093773841858, -0.17412321269512177, -0.5786875486373901, 0.15775185823440552, 0.1802937537431717], [0.27389732003211975, -0.06078868359327316, 0.21577773988246918, -0.15943171083927155, 0.23988667130470276, 0.05574502423405647, -0.006525563541799784, 0.01320305373519659, -0.04996754974126816, 0.024829501286149025, -0.16896504163742065, -0.03007487766444683, 0.5393158197402954, 0.20517133176326752, 0.20356078445911407, -0.12815465033054352, 0.41614970564842224, 0.08214014023542404, -0.030432717874646187, -0.054041046649217606, 0.14261431992053986, -0.5625540614128113, 0.19294646382331848, -0.17207254469394684, 0.14649368822574615, 0.20613861083984375, -0.45828166604042053, 0.0015993195120245218, -0.19081653654575348, -0.06612523645162582, 0.28210699558258057, 0.09711003303527832], [-0.46477800607681274, -0.0170726515352726, -0.26318058371543884, 0.5094234347343445, 0.13854269683361053, -0.04553581401705742, -0.29778173565864563, 0.5040343999862671, 0.5009422898292542, -0.03461074084043503, -0.15428997576236725, -0.2644839584827423, -0.4101274907588959, -0.08211547881364822, -0.1315479427576065, 0.12052299082279205, -0.297126829624176, -0.026070859283208847, -0.14649313688278198, 0.08126065880060196, -0.5594974756240845, 0.43214449286460876, -0.4148148000240326, 0.4710891842842102, 0.1653744876384735, -0.20657260715961456, 0.39069172739982605, -0.13564682006835938, -0.18525287508964539, 0.09566237032413483, -0.18774950504302979, 0.30486860871315], [0.5092770457267761, 0.10367385298013687, -0.025746190920472145, -0.15104670822620392, -0.01197878085076809, 0.15549328923225403, -0.0971185639500618, -0.1829400509595871, -0.4461299180984497, 0.23555906116962433, -0.2042085826396942, -0.5729121565818787, 0.3385281562805176, -0.026525627821683884, 0.0005503979627974331, -0.5850285291671753, 0.8424572348594666, -0.04745373874902725, 0.0835077315568924, -0.18769840896129608, -0.18687684834003448, -0.05328887328505516, 0.2314821034669876, -0.24803343415260315, -0.335359126329422, 0.3292442858219147, -0.16791582107543945, 0.006618693005293608, 0.08681290596723557, -0.15076102316379547, -0.27130696177482605, -0.0489848330616951], [-0.08057491481304169, -0.03914477303624153, -0.2336450070142746, 0.1601075530052185, 0.08149301260709763, -0.3937508761882782, -0.27183273434638977, 0.2757052183151245, 0.5321557521820068, -0.05581888556480408, -0.09790469706058502, -0.35014188289642334, -0.08718335628509521, -0.5760959386825562, -0.08170773088932037, 0.02429485321044922, 0.0942024365067482, -0.15151937305927277, 0.06758197396993637, 0.029059402644634247, -0.22980628907680511, 0.17166252434253693, -0.32140135765075684, 0.2287413328886032, 0.32076072692871094, -0.1658761203289032, 0.09069479256868362, 0.17320357263088226, 0.13816507160663605, -0.04080144688487053, 0.12100911140441895, 0.08862058073282242], [0.08346009254455566, 0.03765476495027542, -0.33249861001968384, 0.19370374083518982, -0.22385109961032867, -0.045512694865465164, 0.29948994517326355, -0.02756841666996479, -0.105194091796875, -0.0551781952381134, 0.14743368327617645, -0.05256304889917374, 0.2014724463224411, 0.08744106441736221, -0.36547309160232544, -0.15385742485523224, -0.010102655738592148, 0.08584391325712204, -0.4680643677711487, 0.31768667697906494, 0.044416896998882294, 0.14986494183540344, 0.22398273646831512, 0.45016154646873474, 0.15112999081611633, 0.2069689780473709, -0.10060667991638184, 0.04736100882291794, -0.08519459515810013, -0.17272907495498657, -0.20752575993537903, -0.19075831770896912], [0.22445601224899292, -0.326193243265152, 0.006241926923394203, 0.09929681569337845, -0.20558220148086548, 0.029888059943914413, 0.7533178925514221, 0.15474677085876465, -0.3768387734889984, -0.025673912838101387, -0.014794007875025272, -0.2091023325920105, 0.08863597363233566, 0.12105049192905426, 0.10574793815612793, -0.06705226749181747, 0.6067948937416077, 0.21867211163043976, -0.1843179166316986, -0.02896428294479847, 0.35502389073371887, -0.11619962006807327, 0.13679347932338715, 0.23759141564369202, -0.11408250778913498, 0.5045168995857239, -0.5163843035697937, -0.12087396532297134, -0.10173365473747253, -0.5619297623634338, -0.08730988949537277, -0.0705096423625946], [-0.09015785902738571, -0.21742801368236542, 0.0865517258644104, 0.13447058200836182, 0.021398769691586494, 0.043363068252801895, 0.016443250700831413, 0.01509664487093687, 0.22378502786159515, 0.12974236905574799, -0.38793912529945374, -0.2363717406988144, 0.10429354757070541, -0.29213982820510864, -0.07728895545005798, 0.3146403431892395, 0.3068389594554901, 0.01028306595981121, -0.27150267362594604, 0.04938714578747749, 0.40184640884399414, -0.1040903776884079, 0.4017316997051239, 0.26190662384033203, 0.49788257479667664, 0.11803551018238068, 0.24077388644218445, 0.2911227345466614, 0.07079779356718063, -0.0877804309129715, 0.28013160824775696, 0.060294490307569504], [-0.47388625144958496, -0.043381791561841965, 0.19159461557865143, -0.1567211151123047, 0.3559083938598633, 0.1402105838060379, -0.322620689868927, 0.4685524106025696, 0.16873830556869507, 0.20964238047599792, -0.05750192329287529, -0.25209513306617737, -0.15294526517391205, -0.20837335288524628, -0.2842630445957184, 0.16008879244327545, 0.0028743832372128963, 0.2041744887828827, -0.14480523765087128, -0.20580396056175232, -0.30776700377464294, 0.47662556171417236, -0.20941703021526337, 0.4823685884475708, 0.46717116236686707, -0.18102595210075378, 0.3532429337501526, -0.3877403736114502, -0.054350871592760086, 0.30199289321899414, 0.20980972051620483, 0.35672932863235474], [0.009109485894441605, -0.20967108011245728, -0.020487699657678604, -0.07009553164243698, -0.18327821791172028, 0.03708210214972496, -0.08514098078012466, 0.1457279473543167, -0.20197255909442902, 0.21694694459438324, 0.2753449082374573, -0.036958880722522736, -0.18207110464572906, -0.24432890117168427, -0.2886531949043274, -0.30643415451049805, 0.30091172456741333, 0.02273711934685707, 0.05597361549735069, -0.4496803879737854, -0.17237553000450134, 0.26353147625923157, 0.13621574640274048, -0.016591165214776993, -0.040584366768598557, 0.3688158690929413, -0.1667238175868988, -0.003218960715457797, 0.0398704968392849, 0.5496368408203125, -0.3495689630508423, -0.0356367826461792], [0.09080597013235092, 0.05363766476511955, -0.146891787648201, -0.02939075045287609, 0.18441641330718994, 0.5691408514976501, 0.26359421014785767, -0.1425686627626419, -0.018794499337673187, -0.10885047912597656, -0.36149972677230835, -0.10180769860744476, 0.21621552109718323, -0.21517035365104675, 0.30207934975624084, 0.14270690083503723, 0.06448248028755188, -0.033274635672569275, 0.27339404821395874, 0.04083694890141487, 0.03855618089437485, 0.16656816005706787, 0.10701587796211243, -0.0028704768046736717, -0.3779745399951935, 0.4416957199573517, -0.09736276417970657, 0.24938486516475677, -0.015267541632056236, -0.111039899289608, -0.057829827070236206, -0.2144968956708908], [0.26194339990615845, -0.23218224942684174, -0.1840515434741974, -0.06632979214191437, 0.43063005805015564, -0.06419260799884796, -0.336739182472229, 0.3511970341205597, 0.3545472323894501, 0.06912942975759506, -0.02242295816540718, 0.3517877161502838, 0.12383721023797989, -0.15061867237091064, 0.12710586190223694, 0.32895395159721375, 0.02391291782259941, -0.2980363965034485, -0.06381593644618988, -0.1090134009718895, 0.05714596435427666, 0.36219215393066406, -0.5445494055747986, 0.18920885026454926, 0.43054234981536865, -0.22861388325691223, 0.2844347059726715, -0.18075977265834808, 0.06537389010190964, -0.10795062780380249, -0.1489926129579544, -0.10114720463752747], [-0.16622164845466614, -0.025132333859801292, -0.025801466777920723, 0.20882698893547058, 0.040365949273109436, 0.08715555816888809, -0.35278597474098206, 0.11870626360177994, 0.24422410130500793, -0.008187412284314632, -0.32612791657447815, 0.3107580840587616, -0.23669925332069397, 0.06218642741441727, -0.4864345192909241, 0.03550252318382263, -0.19245769083499908, -0.275812029838562, 0.008558093570172787, 0.07132598757743835, -0.2830752432346344, 0.4232349991798401, -0.17619387805461884, 0.5531966090202332, 0.20012372732162476, -0.2832701802253723, 0.32017838954925537, -0.2842269837856293, 0.16990245878696442, 0.42263299226760864, -0.07092491537332535, 0.39527350664138794], [-0.23832696676254272, -0.15837427973747253, -0.3378235995769501, 0.1787015199661255, -0.05953962355852127, 0.007879788987338543, -0.2741197645664215, 0.28372493386268616, 0.27741485834121704, -0.25196319818496704, -0.31162747740745544, 0.010379426181316376, -0.19044095277786255, -0.1052756980061531, -0.35312768816947937, 0.307298481464386, -0.28796955943107605, 0.007902689278125763, -0.21965104341506958, 0.00687717879191041, -0.44419345259666443, 0.3829534351825714, -0.3808692991733551, 0.8196505904197693, 0.5652925968170166, -0.6105323433876038, 0.4060319662094116, -0.3566291928291321, 0.28508809208869934, -0.24969452619552612, -0.24632835388183594, 0.5681141018867493], [-0.4944462776184082, -0.09570593386888504, -0.038925837725400925, 0.2561505138874054, 0.08967627584934235, -0.28251373767852783, -0.28582659363746643, 0.31791478395462036, 0.2835319936275482, -0.06807781010866165, -0.0433785542845726, 0.15903274714946747, -0.20803402364253998, -0.004537458997219801, -0.5158184170722961, 0.18553932011127472, -0.2228326052427292, 0.1396576315164566, -0.13560423254966736, -0.14824309945106506, -0.3172163963317871, 0.37726864218711853, -0.0335795134305954, 0.24929755926132202, 0.43689993023872375, -0.2533327639102936, 0.23076127469539642, -0.1471419334411621, 0.11769324541091919, 0.11212819069623947, 0.5625312328338623, 0.14829356968402863], [0.21983855962753296, -0.12198949605226517, -0.14322538673877716, -0.050669778138399124, 0.023585425689816475, 0.6817988753318787, 0.11293411999940872, -0.26927468180656433, -0.10000915080308914, -0.428363174200058, -0.005883526988327503, -0.049172405153512955, 0.27356064319610596, 0.3533462584018707, 0.10158582031726837, -0.1668904721736908, 0.056253690272569656, -0.2106814682483673, 0.023986592888832092, -0.25098711252212524, 0.05240657925605774, -0.2010282725095749, 0.21877263486385345, 0.2733760476112366, -0.457974374294281, -0.1911398470401764, -0.2467292994260788, 0.14964842796325684, 0.03993794694542885, 0.004698736593127251, 0.038564544171094894, -0.12306556850671768], [0.34864577651023865, -0.3484239876270294, -0.08404329419136047, 0.007128309458494186, -0.07106558978557587, 0.4569939076900482, 0.031551893800497055, -0.0849471464753151, 0.07880423963069916, -0.14285129308700562, -0.23929864168167114, -0.08278840780258179, 0.312298059463501, -0.18626263737678528, -0.07255551218986511, 0.1559886485338211, 0.0232465211302042, -0.11359099298715591, 0.028339799493551254, 0.05033128708600998, 0.5444878339767456, 0.0725453644990921, 0.3077034056186676, -0.16901835799217224, -0.1804388016462326, 0.10409335047006607, -0.06326717883348465, -0.2321118712425232, -0.03470676764845848, 0.2448474019765854, 0.14781127870082855, 0.011239482089877129], [0.13958030939102173, -0.10001543164253235, -0.09183334559202194, -0.3648766279220581, 0.24285291135311127, 0.08081963658332825, 0.13756847381591797, -0.20655010640621185, 0.5099680423736572, -0.26443588733673096, -0.003650912782177329, 0.05593164637684822, 0.22136621177196503, 0.14497992396354675, 0.4404749274253845, -0.050079334527254105, -0.02505999058485031, -0.05959682539105415, 0.05208806321024895, 0.32715553045272827, -0.09531331807374954, 0.248799130320549, 0.1876048445701599, 0.14912483096122742, -0.05831613764166832, -0.00010944261157419533, -0.03603518754243851, 0.24479295313358307, 0.17292124032974243, -0.20683611929416656, -0.12931498885154724, -0.19558125734329224], [0.21070264279842377, 0.03526255488395691, -0.1852891743183136, 0.06841399520635605, -0.22024989128112793, -0.22579599916934967, -0.08913755416870117, -0.19910402595996857, -0.22282885015010834, -0.17652709782123566, -0.29364341497421265, 0.34922507405281067, 0.19946600496768951, -0.09940284490585327, 0.12716329097747803, -0.023974567651748657, 0.29364126920700073, -0.1363695114850998, 0.1629326492547989, -0.15035530924797058, -0.23637616634368896, 0.16231851279735565, 0.29321154952049255, 0.46781402826309204, -0.11075522005558014, 0.19863954186439514, -0.15581049025058746, 0.29554522037506104, -0.2582296133041382, -0.5072978138923645, -0.1308397501707077, -0.10383132845163345], [-0.0680113285779953, 0.0910034030675888, 0.16419617831707, 0.07243628799915314, 0.3389730155467987, 0.08217617869377136, -0.21615390479564667, 0.2303590178489685, -0.10400603711605072, 0.1569746881723404, 0.16784098744392395, 0.10161512345075607, -0.2202509641647339, -0.1080181747674942, 0.1724868267774582, -0.08292638510465622, 0.06051360070705414, 0.09663170576095581, 0.09303749352693558, 0.14860035479068756, -0.03327048942446709, -0.2261311113834381, 0.14694370329380035, 0.05445230379700661, -0.047811929136514664, 0.18532365560531616, -0.030810784548521042, -0.15142077207565308, -0.1600569188594818, -0.41398870944976807, 0.06642122566699982, 0.21824169158935547], [0.28334516286849976, -0.006950245704501867, -0.13003507256507874, -0.17930950224399567, -0.3075672686100006, 0.0874757394194603, 0.3527733087539673, 0.06210704892873764, 0.05471353232860565, -0.3015219569206238, 0.25550347566604614, 0.02259841188788414, 0.39097705483436584, -0.067579485476017, 0.37734976410865784, -0.019865166395902634, 0.5206703543663025, -0.3079102039337158, -0.12019436061382294, -0.13763926923274994, 0.3710346519947052, 0.3347148895263672, 0.2508801817893982, -0.12880325317382812, -0.08615444600582123, 0.29114627838134766, -0.3457765579223633, 0.3611179292201996, -0.1902148574590683, -0.02307988330721855, -0.3424021899700165, -0.09653553366661072], [0.10338297486305237, 0.3073209524154663, -0.0320342518389225, -0.5111441016197205, -0.2677668333053589, 0.12942425906658173, 0.26049578189849854, -0.08399131149053574, -0.024328846484422684, 0.18642616271972656, -0.3016466796398163, 0.173503577709198, -0.1637987196445465, -0.3544055223464966, -0.22620826959609985, -0.034214798361063004, 0.12297460436820984, 0.01781235821545124, -0.009908418171107769, -0.18579521775245667, 0.12645088136196136, -0.44104355573654175, 0.3850465416908264, -0.22050604224205017, -0.14277951419353485, 0.40731146931648254, -0.34370872378349304, -0.21842369437217712, -0.19481921195983887, -0.1525540053844452, 0.16166473925113678, -0.05387190729379654], [0.28629767894744873, -0.4253503680229187, 0.1290428638458252, 0.06390373408794403, 0.018817758187651634, -0.25279802083969116, -0.29393360018730164, 0.5013653635978699, 0.32277026772499084, 0.07197759300470352, 0.01663872040808201, -0.28276190161705017, -0.3770008087158203, -0.3490099012851715, -0.2819141149520874, 0.170008584856987, -0.1471150815486908, 0.038290396332740784, -0.2807821035385132, 0.23438549041748047, -0.14605951309204102, 0.21837137639522552, -0.46037557721138, 0.27982577681541443, 0.04634612426161766, -0.26447030901908875, 0.38169077038764954, -0.08551103621721268, -0.156132772564888, 0.026205258443951607, -0.4336123466491699, 0.48185935616493225], [-0.11583565920591354, 0.16004414856433868, -0.10020629316568375, 0.11496230214834213, -0.013558318838477135, 0.06083497405052185, -0.22451715171337128, 0.24955815076828003, -0.06660841405391693, -0.37565797567367554, -0.32524311542510986, -0.27592965960502625, -0.13148994743824005, -0.2774488031864166, 0.06650862097740173, -0.044771987944841385, -0.06518501043319702, 0.10056255012750626, 0.0973905473947525, 0.04710416495800018, -0.2302550971508026, -0.04697956517338753, -0.23009659349918365, 0.09713802486658096, 0.1522240936756134, -0.16900931298732758, 0.18994095921516418, -0.14702720940113068, -0.01842687651515007, 0.43358367681503296, 0.02893965132534504, 0.16970254480838776], [-0.011608763597905636, -0.12654879689216614, -0.17804697155952454, 0.03779478743672371, 0.2522622048854828, 0.04195166379213333, -0.18459436297416687, 0.40847107768058777, 0.10539887845516205, -0.31787917017936707, -0.2508052587509155, -0.007124091498553753, 0.2953736484050751, -0.3083144426345825, 0.09839336574077606, 0.4105605185031891, -0.08389217406511307, -0.05998067557811737, -0.21571120619773865, -0.07624644786119461, 0.07713968306779861, 0.2521509528160095, 0.22101831436157227, -0.0823778361082077, -0.09248276799917221, -0.02102123200893402, 0.14139346778392792, -0.11934032291173935, -0.06727248430252075, 0.11762656271457672, 0.4982612133026123, 0.17338617146015167], [-0.47138407826423645, -0.11990492045879364, -0.05282915383577347, 0.8358771800994873, 0.29349783062934875, -0.3617786765098572, -0.44696933031082153, 0.750847339630127, 0.4046372175216675, 0.0748225674033165, -0.15216796100139618, 0.03698036074638367, -0.9193623065948486, 0.1060699000954628, -0.4365360140800476, 0.4500591456890106, -0.6223812699317932, -0.08424707502126694, -0.10709301382303238, 0.2716713547706604, -0.5355927348136902, 0.892140805721283, -0.42227989435195923, 0.3148110508918762, 0.5164211988449097, -0.6540923118591309, 0.11215416342020035, -0.005451211705803871, 0.11221180856227875, 0.19858939945697784, -0.08665681630373001, 0.3064814805984497], [0.011645449325442314, 0.1300646960735321, -0.1872173547744751, -0.22628886997699738, -0.014324753545224667, -0.03211826831102371, 0.06442715227603912, 0.2016007900238037, -0.1946040838956833, 0.016284530982375145, 0.13640159368515015, -0.3023875653743744, 0.18053260445594788, 0.2513023316860199, -0.21937642991542816, -0.4002337157726288, 0.014907626435160637, -0.13239477574825287, 0.12161064893007278, -0.20907549560070038, -0.140137180685997, -0.08041578531265259, 0.21249595284461975, 0.00456451578065753, -0.12547528743743896, 0.04573408514261246, 0.05810857191681862, -0.14734065532684326, 0.2314382791519165, -0.18903498351573944, 0.07936201989650726, 0.4469843804836273], [-0.44356971979141235, -0.10036978125572205, -0.22403590381145477, 0.4771989583969116, 0.5075283646583557, 0.04409756883978844, -0.032046373933553696, 0.27088654041290283, -0.18255315721035004, -0.31004709005355835, 0.1921243518590927, -0.0011217219289392233, -0.4013279974460602, 0.23415374755859375, -0.4691888093948364, 0.12467017024755478, -0.27892571687698364, 0.08751773089170456, -0.017976941540837288, -0.19192063808441162, -0.26074105501174927, 0.5084059834480286, -0.2368062287569046, 0.4677409529685974, 0.3561784029006958, -0.29515284299850464, -0.0980684831738472, -0.06424508988857269, 0.00643584318459034, 0.2256888747215271, 0.12104297429323196, 0.3374006748199463], [0.20900751650333405, -0.20950980484485626, -0.027472451329231262, -0.00819789245724678, -0.25779083371162415, 0.021640829741954803, -0.02515966258943081, -0.324724406003952, -0.23869943618774414, -0.10887312889099121, -0.20563669502735138, -0.03323947265744209, 0.4050694704055786, -0.2214633822441101, 0.35717326402664185, 0.004678645171225071, 0.4393901824951172, -0.12449178099632263, -0.1539771556854248, -0.5887637138366699, 0.40786510705947876, 0.4393393099308014, 0.08546328544616699, -0.028191395103931427, -0.11219817399978638, 0.24887120723724365, 0.11407486349344254, -0.26643019914627075, 0.06606980413198471, -0.14936958253383636, 0.21680113673210144, 0.02829371578991413], [-0.14416895806789398, -0.056767769157886505, -0.06671962887048721, 0.4130672216415405, 0.3237990736961365, -0.01931048184633255, -0.3443804085254669, 0.1374003142118454, 0.3525393307209015, 0.03342253342270851, 0.05869648605585098, 0.2812882363796234, 0.054788194596767426, 0.1477702409029007, -0.16961106657981873, -0.25734183192253113, -0.20152565836906433, -0.08131618052721024, 0.06296221166849136, 0.04412706941366196, -0.14341874420642853, -0.074856698513031, -0.26308485865592957, 0.3414892256259918, 0.5780377388000488, -0.25120705366134644, 0.32296282052993774, 0.26382118463516235, -0.14433684945106506, 0.11237584054470062, -0.14120987057685852, 0.4513646364212036], [0.20651383697986603, 0.009928377345204353, -0.1634313017129898, 0.13304567337036133, 0.49743878841400146, 0.00880065280944109, 0.09696394205093384, 0.07254717499017715, 0.32230064272880554, -0.1393418312072754, -0.6253628730773926, 0.1932782530784607, 0.17550523579120636, -0.35866162180900574, -0.014144347049295902, 0.44396138191223145, 0.5087850093841553, 0.1694246083498001, -0.07759471982717514, 0.04890192300081253, 0.1315411925315857, 0.15830077230930328, -0.04037558659911156, -0.12041500955820084, 0.25049346685409546, 0.09585306793451309, 0.2841178774833679, 0.055526211857795715, -0.01402839832007885, 0.04866853356361389, 0.18045789003372192, -0.21411608159542084], [0.21923868358135223, -0.26104986667633057, 0.09807456284761429, -0.019732510671019554, -0.3927024006843567, 0.5321035385131836, 0.7194452285766602, -0.19929897785186768, -0.10846493393182755, 0.4629818797111511, -0.25403639674186707, 0.022580303251743317, 0.3379742205142975, 0.05563105270266533, 0.3396008014678955, -0.15585368871688843, 0.12389734387397766, -0.1213640570640564, -0.1738877296447754, -0.07213205844163895, 0.21063746511936188, -0.2565983831882477, 0.5549648404121399, -0.27979201078414917, -0.31064215302467346, 0.2704717814922333, -0.15204882621765137, -0.06496398150920868, 0.04153468832373619, -0.240606427192688, 0.48807263374328613, -0.07712177187204361], [-0.050306983292102814, -0.15115652978420258, -0.033767394721508026, 0.16894155740737915, -0.04163539782166481, -0.005321551114320755, 0.032087936997413635, -0.07702179253101349, -0.15567608177661896, -0.4308890104293823, 0.2876037061214447, -0.02776123210787773, -0.09329161792993546, 0.38181638717651367, 0.04089396819472313, -0.13366730511188507, 0.1681123822927475, 0.058024849742650986, 0.039492104202508926, -0.2128031700849533, 0.07590840011835098, 0.10796443372964859, 0.09674254059791565, -0.333231657743454, -0.06888040155172348, 0.3057714104652405, -0.2388450801372528, -0.18279924988746643, -0.0772404745221138, -0.1588253527879715, -0.43568286299705505, -0.0527302585542202], [-0.27261632680892944, -0.03685072064399719, -0.04964360594749451, 0.46453791856765747, 0.5184026956558228, -0.3153780996799469, -0.38687795400619507, 0.36576488614082336, 0.36431217193603516, 0.32704970240592957, -0.26271775364875793, 0.030414603650569916, -0.26312845945358276, -0.2883220911026001, -0.25932201743125916, 0.09096571803092957, -0.5653727650642395, 0.03982635214924812, -0.08540383726358414, 0.17644977569580078, -0.33452683687210083, 0.15028154850006104, -0.3188316226005554, 0.1548299342393875, 0.6634349822998047, -0.5826317071914673, 0.3318103849887848, -0.27080827951431274, 0.10314008593559265, -0.12718331813812256, -0.2313775271177292, 0.5272533297538757], [0.37056592106819153, 0.01894240826368332, -0.19129565358161926, -0.1529606282711029, -0.006311261560767889, -0.028298452496528625, 0.4114530086517334, 0.10435523837804794, -0.023793980479240417, -0.3356860876083374, 0.262963205575943, -0.061688318848609924, 0.32622265815734863, -0.3268113434314728, 0.33033818006515503, -0.2802893817424774, 0.5054482817649841, -0.06663727760314941, -0.04828879237174988, 0.0126862283796072, 0.009040472097694874, 0.10366643965244293, 0.3624844253063202, 0.4324415922164917, 0.09426909685134888, 0.44956663250923157, -0.2642800211906433, 0.5156314373016357, -0.3294820785522461, -0.22062735259532928, -0.25142499804496765, -0.22562691569328308], [-0.44646409153938293, -0.02607717365026474, -0.06507799029350281, 0.47574371099472046, 0.7326929569244385, -0.474890798330307, -0.34940052032470703, 0.4080454111099243, 0.3306676149368286, 0.003281383076682687, -0.2873366177082062, 0.32852205634117126, -0.3060516119003296, -0.11971618980169296, -0.9190347790718079, 0.22313860058784485, -0.03358297795057297, -0.07424381375312805, 0.17351198196411133, 0.3300706744194031, -0.4529156982898712, 0.43305227160453796, -0.8629567623138428, 0.6758719682693481, 0.4390578866004944, -0.46510040760040283, 0.2046625316143036, -0.42223426699638367, 0.0059649767354130745, 0.05281669646501541, -0.5398892164230347, 0.7625951766967773], [-0.17960034310817719, -0.32540076971054077, -0.040241457521915436, 0.10351398587226868, 0.2412608563899994, 0.2460494488477707, -0.038565125316381454, 0.14378328621387482, -0.24032290279865265, 0.1362205445766449, -0.04258273169398308, -0.08213376253843307, -0.5962019562721252, 0.35119354724884033, -0.5911126136779785, 0.09409396350383759, -0.11453913152217865, -0.22759000957012177, -0.29809048771858215, -0.3871268928050995, 0.020525338128209114, 0.08046599477529526, 0.4020095765590668, 0.08813431113958359, 0.04923310503363609, -0.34621667861938477, 0.2218925952911377, -0.2967931628227234, 0.06988292187452316, -0.45030948519706726, -0.1672292798757553, -0.1248171329498291], [-0.3410671651363373, -0.11017346382141113, -0.06653713434934616, -0.028471561148762703, 0.39014121890068054, 0.1555924117565155, -0.13520534336566925, -0.3409171402454376, -0.10430997610092163, -0.13529562950134277, -0.24616768956184387, -0.17777223885059357, -0.07612976431846619, -0.19863653182983398, -0.22113938629627228, 0.08864481747150421, 0.16659998893737793, -0.17428691685199738, 0.1510227769613266, -0.1630498766899109, -0.32078278064727783, 0.21782702207565308, -0.23751665651798248, 0.06273364275693893, -0.3452133238315582, 0.251049280166626, 0.1306966245174408, -0.21917392313480377, -0.2663149833679199, 0.1863105595111847, -0.025892389938235283, -0.044855568557977676], [-0.20679467916488647, -0.060454871505498886, -0.03768988326191902, 0.12783262133598328, -0.15895898640155792, -0.15086066722869873, 0.23911920189857483, 0.045976195484399796, -0.2510734498500824, 0.25489240884780884, -0.10486739873886108, 0.17862747609615326, 0.1785314977169037, -0.42970091104507446, 0.09596671164035797, 0.23290875554084778, 0.062314100563526154, -0.09165053069591522, -0.06481525301933289, -0.5195019841194153, 0.47252318263053894, -0.16687019169330597, 0.30103665590286255, -0.08690430968999863, 0.22587434947490692, 0.2334366738796234, -0.03585783764719963, 0.061811234802007675, 0.1074911504983902, -0.5729938745498657, 0.32521501183509827, -0.22677968442440033], [0.2837298512458801, -0.00075656728586182, 0.09114842116832733, 0.18163524568080902, -0.3771265745162964, -0.1811133325099945, 0.14888763427734375, 0.23701658844947815, 0.3634149134159088, 0.02425355277955532, -0.3129005432128906, -0.1636900156736374, 0.011682411655783653, -0.5508800148963928, 0.3330893814563751, 0.10275457054376602, 0.33085477352142334, -0.2385067641735077, 0.1716068536043167, 0.3497781753540039, -0.17267370223999023, 0.3323231637477875, -0.007565592881292105, -0.14542774856090546, 0.18792682886123657, 0.20109343528747559, -0.03132125735282898, 0.30719560384750366, -0.3001161813735962, -0.48997846245765686, 0.18463166058063507, 0.10990279912948608], [-0.16056299209594727, 0.0917087197303772, 0.08883509784936905, 0.27213457226753235, -0.1725616455078125, 0.10583461076021194, -0.10858426988124847, 0.5187253355979919, -0.022739194333553314, 0.3636227548122406, -0.17184856534004211, -0.2307344526052475, 0.1381830871105194, -0.10511238873004913, 0.10566610097885132, 0.2842296361923218, 0.008295705541968346, -0.10963449627161026, 0.14761920273303986, -0.04753192886710167, 0.12326570600271225, -0.11420775949954987, 0.08513703942298889, 0.06405516713857651, 0.4508819282054901, 0.07751264423131943, 0.1105005070567131, 0.02974996343255043, -0.20939074456691742, 0.29542216658592224, 0.4075848460197449, 0.2251686304807663], [0.3841395974159241, -0.12506303191184998, -0.13029883801937103, -0.02738049253821373, 0.0552949495613575, -0.08568617701530457, 0.19926704466342926, 0.05895618721842766, -0.12368311733007431, 0.0324656218290329, 0.1108795627951622, 0.002509245416149497, 0.29021140933036804, -0.2896686792373657, 0.195712149143219, -0.19895029067993164, -0.025688832625746727, -0.10508131980895996, -0.20202812552452087, -0.11385166645050049, 0.09065403789281845, 0.25766894221305847, 0.05145157501101494, -0.21489715576171875, 0.2103584110736847, -0.0554715134203434, -0.05445566400885582, 0.22193768620491028, 0.019411899149417877, 0.3062731623649597, -0.009489749558269978, -0.04047024995088577], [0.8366939425468445, -0.01368574146181345, -0.049959469586610794, 0.0881214514374733, 0.030019812285900116, 0.26384028792381287, 0.8889434337615967, -0.14765045046806335, -0.005638752598315477, -0.016355367377400398, 0.1024947315454483, -0.292312353849411, 0.02599376067519188, -0.21206972002983093, 0.1343497782945633, -0.09045308083295822, 0.6420820355415344, -0.1837511658668518, -0.2767862379550934, -0.07013557851314545, 0.5319031476974487, -0.22276338934898376, 0.6187043786048889, 0.048169951885938644, 0.1935965120792389, 0.7354658246040344, 0.16925294697284698, 0.25731801986694336, 0.0172406155616045, -0.19231092929840088, 0.10388104617595673, 0.25333985686302185], [-0.4001444876194, -0.17437005043029785, 0.2291145920753479, 0.4924428462982178, 0.16863803565502167, -0.035020146518945694, -0.14048050343990326, 0.5843487977981567, 0.0849398821592331, 0.14795780181884766, 0.24839459359645844, 0.0829397439956665, -0.23487213253974915, -0.009145587682723999, -0.28406837582588196, 0.6778988242149353, -0.09448201954364777, -0.060007065534591675, -0.17525961995124817, 0.26902130246162415, -0.03258110210299492, 0.23577681183815002, -0.09021583944559097, 0.08751033246517181, 0.3080572187900543, -0.1504182368516922, 0.6377216577529907, -0.3617788255214691, -0.2394111305475235, -0.0887494906783104, -0.2738981544971466, 0.5398604273796082], [0.3278515934944153, 0.055354371666908264, 0.21564623713493347, 0.13557425141334534, -0.048142191022634506, 0.0037035366985946894, -0.012217871844768524, -0.3129039406776428, -0.026028504595160484, 0.02301771752536297, 0.24863561987876892, -0.023442743346095085, 0.02890496328473091, -0.11794371157884598, 0.14861972630023956, 0.19497425854206085, -0.17469677329063416, 0.022097621113061905, 0.04501279816031456, -0.16186417639255524, -0.05614976957440376, 0.021397406235337257, -0.1487039029598236, 0.010247296653687954, -0.25092560052871704, 0.2381645292043686, 0.4997219145298004, -0.005477359984070063, 0.09707781672477722, -0.05924038589000702, 0.05565551295876503, -0.3052884638309479], [0.10411417484283447, -0.1760070025920868, -0.03528725728392601, -0.028619173914194107, 0.048255275934934616, -0.18731960654258728, 0.0842403843998909, 0.040793921798467636, -0.13202416896820068, -0.07821428030729294, -0.15078014135360718, 0.00863705761730671, 0.19753658771514893, -0.3019997179508209, 0.17520105838775635, 0.2086503803730011, -0.06342513114213943, -0.24270164966583252, 0.026755690574645996, -0.2447548508644104, 0.3605778217315674, 0.3032532036304474, -0.16047479212284088, -0.014914508908987045, 0.25765177607536316, -0.10930868238210678, -0.11212992668151855, 0.05326313152909279, -0.09671531617641449, -0.38245919346809387, 0.0851365476846695, 0.24660463631153107]], [[0.9425394535064697], [-0.009066224098205566], [0.00441090390086174], [-0.6086050271987915], [-0.9039061665534973], [0.32024702429771423], [1.0609310865402222], [-1.0397933721542358], [-0.5890539288520813], [-0.3597753047943115], [0.19266241788864136], [0.04264567047357559], [0.6907458305358887], [-0.5396908521652222], [0.6045026183128357], [-0.6985584497451782], [0.5839309692382812], [0.13789227604866028], [-0.24997848272323608], [-0.49165230989456177], [1.0353271961212158], [-0.9598573446273804], [0.9489139914512634], [-0.6210034489631653], [-0.6025487780570984], [0.7663264870643616], [-0.6430096626281738], [0.4668579399585724], [-0.08950058370828629], [-0.5015173554420471], [0.46273136138916016], [-0.6288803815841675]]], "biases": [[0.05908651649951935, -0.057834502309560776, 0.1732901781797409, -0.15880092978477478, 0.013500561006367207, 0.0477096363902092, -0.03951786831021309, 0.10442987829446793, -0.011224238201975822, 0.04942995682358742, -0.10077939927577972, 0.14854548871517181, 0.08734860271215439, 0.062082450836896896, 0.24521119892597198, 0.23246292769908905, 0.17678911983966827, 0.22209100425243378, -0.3479451537132263, 0.025293195620179176, 0.014589563943445683, 0.005287748295813799, 0.16798962652683258, -0.11468672007322311, -0.06605076044797897, 0.32459762692451477, 0.2099342942237854, -0.0742235854268074, 0.10651512444019318, -0.026525946334004402, -0.05248325318098068, 0.04686728119850159, 0.07858165353536606, 0.057532861828804016, 0.10905572772026062, -0.06346091628074646, -0.21821947395801544, -0.15979796648025513, 0.03890613466501236, 0.1090172529220581, -0.019089533016085625, 0.01531520951539278, 0.2484326958656311, 0.028087610378861427, -0.14310580492019653, 0.11053447425365448, 0.10385365784168243, -0.20661377906799316, 0.2750129997730255, 0.014981183223426342, -0.2573747932910919, 0.09667377173900604, 0.17747420072555542, 0.08181152492761612, -0.08919960260391235, -0.0015828575706109405, 0.07193657755851746, 0.31650933623313904, -0.02316410467028618, -0.11083650588989258, 0.3155420422554016, -0.03614085912704468, -0.05321575328707695, 0.041760314255952835], [0.10663295537233353, -0.02639739029109478, -0.02805282734334469, 0.045130886137485504, 0.06923408061265945, 0.05848730355501175, 0.09533767402172089, 0.22201652824878693, 0.13639725744724274, -0.011190271005034447, -0.21534092724323273, -0.013450666330754757, 0.02582133561372757, -0.17482949793338776, -0.03488019108772278, 0.11073154956102371, 0.22168099880218506, -0.0215518269687891, -0.05326231196522713, 0.004093899857252836, 0.11805713176727295, 0.20548251271247864, 0.14747580885887146, 0.05377231538295746, 0.30013737082481384, 0.09271029382944107, 0.11462781578302383, 0.11348343640565872, -0.010625096969306469, -0.0476340688765049, 0.12299269437789917, 0.13416051864624023], [-0.004273552913218737]], "m_w": [[[5.927020652052306e-08, 2.6481389795662835e-05, 1.2267139481991762e-07, -5.726042786591279e-07, -2.5868113880278543e-05, -1.0174999260925688e-05, 5.823641913593747e-06, -2.0209495232847985e-06, 3.671130980364978e-05, 2.3799426344339736e-05, -2.717261486395728e-05, 7.159376878007606e-07, -2.580638920335332e-07, -9.818763828661758e-07, -7.498225045310392e-07, -5.940810865467938e-08, 7.384166565316264e-06, -8.293785072055471e-07, 2.7465925384906116e-22, 1.407432591804536e-06, -2.309070623596199e-06, 1.5165334843914025e-05, 2.6428642740938812e-06, -2.3397369659505785e-06, -5.7813826970232185e-06, 1.59786168296705e-06, 5.932271506026154e-06, -2.132909848739928e-08, 5.577249453381228e-07, 1.067501216311939e-06, -3.99246466997738e-08, -3.171724165440537e-05, -2.0190844224998727e-05, 7.023172656772658e-06, -8.995492635222035e-07, 1.4706813544762554e-07, 4.8688711729028e-08, -1.1007640632332283e-10, -2.4033117369981483e-05, -1.8239175915368833e-05, -4.175240974291228e-06, 2.272380152135156e-05, 1.914502718136646e-06, -6.393816147465259e-05, 2.1130965421889414e-07, -6.703114195261151e-06, 4.718173443052365e-07, 1.7460692447457404e-08, 2.7801877422461985e-06, -3.5848955803885474e-07, -2.250029496053685e-08, 1.603199780220166e-05, -1.6655670833642944e-06, 2.2699954570271075e-05, -5.088031684863381e-07, 3.519188339851098e-06, 2.0585916900017764e-06, -6.787124675611267e-07, 5.439392225525808e-07, 1.6582096122874646e-06, 1.1218055533390725e-06, -3.295893839094788e-05, 3.739419085491136e-08, -3.4636502732610097e-07], [-4.2342068695688795e-07, 2.99135826935526e-05, 4.848054686590331e-07, -6.133203669378418e-07, -3.460453808656894e-05, -6.41563929093536e-06, 5.272239377518417e-06, -2.3381180653814226e-06, 4.263608207111247e-05, 2.497975765436422e-05, -2.8442515031201765e-05, 1.0505443697184091e-06, -4.525737438143551e-07, 8.351371434400789e-07, -7.364642442553304e-07, -3.2157657869902323e-07, 1.3758456589130219e-05, -1.019974206428742e-06, 5.231800307439565e-23, 2.7868295546795707e-06, -3.7433164834510535e-06, 1.625870390853379e-05, 5.039451934862882e-06, -2.2480965071736136e-06, -5.73096667721984e-06, 1.9045639874093467e-06, 7.2215548243548255e-06, -3.6314524720637564e-09, 8.467641237075441e-07, 2.2098647605162114e-06, -1.8484646702177088e-08, -4.2091920477105305e-05, -2.1568412194028497e-05, 8.033393896766938e-06, -8.387894467887236e-07, 1.7821852793531434e-07, 3.5970717959799003e-08, -1.043559683111539e-10, -2.4560369638493285e-05, -1.9404767954256386e-05, -4.022239863843424e-06, 2.262264388264157e-05, 2.4887294785003178e-06, -7.784362969687209e-05, 6.810387276345864e-08, -5.0287071644561365e-06, -3.3896270679179e-08, 1.9179561050464145e-08, 3.887556886184029e-06, -1.0613603080855682e-06, -2.7238648669936083e-08, 2.559796121204272e-05, -1.7454558474128135e-06, 3.219806239940226e-05, 1.3820999811287038e-06, 5.412951395555865e-06, 1.184612756333081e-06, -1.1240158528380562e-06, 7.337963552345173e-07, 1.5208081549644703e-06, 1.2455880096240435e-06, -3.9010588807286695e-05, 4.0006881363297e-08, -3.5406768006396305e-07], [-6.84535052641877e-07, 1.1722493582055904e-05, 7.480464319087332e-07, -2.3236388813074882e-07, -2.0648440113291144e-05, -1.0621256478771102e-06, 2.4288408440042986e-06, -1.906252123262675e-06, 2.534618033678271e-05, 1.0862578164960723e-05, -1.0198476957157254e-05, 1.421224055775383e-06, -4.214672060243174e-07, 3.019569248863263e-06, -4.854603048443096e-07, -2.3809053573131678e-07, 1.2094626072212122e-05, -4.606781089933065e-07, 5.518465986400767e-22, 3.51081985172641e-06, -5.581600817095023e-07, 7.5998091233486775e-06, 6.996252977842232e-06, -1.4866591300233267e-06, -3.2718928650865564e-06, 1.0859790791073465e-06, 3.854112947010435e-06, -7.281620639787434e-09, 1.4391692957360647e-06, 1.9530377812770894e-06, -3.063855302798402e-08, -2.6750605684355833e-05, -1.1983766853518318e-05, 5.320884611137444e-06, -9.295023346567177e-07, 1.3808599419462553e-07, 3.044540264340867e-08, -1.6783564815714413e-10, -5.9530748330871575e-06, -1.1408405043766834e-05, -3.739971589311608e-06, 5.988445082039107e-06, 2.081890443150769e-06, -3.0828196031507105e-05, -2.604204496492457e-08, 2.5327094590466004e-06, -2.78881202575576e-07, 1.4984953722319005e-08, 3.1950935408531222e-06, -1.4352963262354024e-11, -2.118049380328557e-08, 1.9760227587539703e-05, -7.927091019155341e-07, 5.4842028475832194e-05, 1.997491835936671e-06, 4.756815997097874e-06, 1.5130145811781404e-06, -1.538101628284494e-06, 4.5780427626596065e-07, 6.348089982566307e-07, 8.973907483778021e-07, -2.258551467093639e-05, 2.6729939150982318e-08, -1.0631561053742189e-07], [-6.84535052641877e-07, 1.1722493582055904e-05, 7.480464319087332e-07, -2.3236388813074882e-07, -2.0648440113291144e-05, -1.0621256478771102e-06, 2.4288408440042986e-06, -1.906252123262675e-06, 2.534618033678271e-05, 1.0862578164960723e-05, -1.0198476957157254e-05, 1.421224055775383e-06, -4.214672060243174e-07, 3.019569248863263e-06, -4.854603048443096e-07, -2.3809053573131678e-07, 1.2094626072212122e-05, -4.606781089933065e-07, 5.518465986400767e-22, 3.51081985172641e-06, -5.581600817095023e-07, 7.5998091233486775e-06, 6.996252977842232e-06, -1.4866591300233267e-06, -3.2718928650865564e-06, 1.0859790791073465e-06, 3.854112947010435e-06, -7.281620639787434e-09, 1.4391692957360647e-06, 1.9530377812770894e-06, -3.063855302798402e-08, -2.6750605684355833e-05, -1.1983766853518318e-05, 5.320884611137444e-06, -9.295023346567177e-07, 1.3808599419462553e-07, 3.044540264340867e-08, -1.6783564815714413e-10, -5.9530748330871575e-06, -1.1408405043766834e-05, -3.739971589311608e-06, 5.988445082039107e-06, 2.081890443150769e-06, -3.0828196031507105e-05, -2.604204496492457e-08, 2.5327094590466004e-06, -2.78881202575576e-07, 1.4984953722319005e-08, 3.1950935408531222e-06, -1.4352963262354024e-11, -2.118049380328557e-08, 1.9760227587539703e-05, -7.927091019155341e-07, 5.4842028475832194e-05, 1.997491835936671e-06, 4.756815997097874e-06, 1.5130145811781404e-06, -1.538101628284494e-06, 4.5780427626596065e-07, 6.348089982566307e-07, 8.973907483778021e-07, -2.258551467093639e-05, 2.6729939150982318e-08, -1.0631561053742189e-07], [-3.9770222315382853e-07, 3.1455896532861516e-05, 3.6377213064042735e-07, -6.299413257693232e-07, -3.31168484990485e-05, -9.522937034489587e-06, 5.404363946581725e-06, -2.119679265888408e-06, 4.073011950822547e-05, 2.4526234483346343e-05, -2.8803153327316977e-05, 7.373681114586361e-07, -4.891837761533679e-07, -3.3653586797299795e-06, -7.058076789689949e-07, -4.1806373474173597e-07, 1.1695417924784124e-05, -1.2100833828299074e-06, 4.56127806744144e-22, 2.037646481767297e-06, -3.1761428544996306e-06, 1.1719541362253949e-05, 3.841436409857124e-06, -2.2397080101654865e-06, -5.829790552525083e-06, 2.0001184566353913e-06, 7.177862698881654e-06, -1.063768095832529e-08, 4.651728886528872e-07, 1.9165377125318628e-06, -1.8825002001676694e-08, -3.7892670661676675e-05, -2.1336498321034014e-05, 7.413355433527613e-06, -1.3431040315481368e-06, 1.9079388380305318e-07, 1.7700125809483325e-08, -1.1594718934970771e-10, -2.444961864966899e-05, -1.8919708963949233e-05, -4.144520062254742e-06, 2.2782653104513884e-05, 2.299186462551006e-06, -7.573835318908095e-05, 2.1945909622900217e-07, -5.929222425038461e-06, -8.705004006515082e-08, 2.1038287556507385e-08, 3.657083652797155e-06, -1.636839670027257e-06, -2.643140817326639e-08, 1.135297952714609e-05, -1.8486786075300188e-06, 5.134192178957164e-06, 9.212544682668522e-08, 4.561505647870945e-06, 1.274437522624794e-06, -8.57092913975066e-07, 6.822805289630196e-07, 1.875046109489631e-06, 1.138243533205241e-06, -3.703396942000836e-05, 3.998652786663115e-08, -4.769998440679046e-07], [-1.0517186410652357e-06, 1.8420676497044042e-05, -2.464193471496401e-07, -9.452611493543372e-08, -3.112648118985817e-05, -1.4741403902007733e-06, 1.5309028640331235e-06, -2.3136647087085294e-06, 3.5143304558005184e-05, 6.850609224784421e-06, -1.2958056686329655e-05, 1.2093319128325675e-06, -4.717717558833101e-07, -1.3566379948315443e-06, -3.1463747518500895e-07, -5.151970299266395e-07, 9.531507203064393e-06, -4.156597128712747e-07, -1.3322172820824628e-32, -1.998637344513554e-07, 1.6205745851038955e-05, 7.370784715021728e-06, 2.9769589673378505e-06, -1.779053945938358e-06, -2.0335280623839935e-06, 1.208490061799239e-06, 6.295206731010694e-06, 4.3565506757659023e-10, 7.619510142831132e-07, 2.5764609290490625e-06, -1.0017452645172398e-08, -3.123277201666497e-05, -1.6847188817337155e-05, 4.886000624537701e-06, -1.3514634247258073e-06, 1.545429597626935e-07, 2.1258843574401e-08, -1.0125195820664956e-10, -3.0555120247299783e-06, -9.17843499337323e-06, 4.484659257286694e-07, 1.5232493751682341e-05, 2.1632667994708754e-06, -3.7874033296247944e-05, 1.6518339407411986e-07, -4.87676106786239e-06, -8.76189233167679e-07, 1.7558082987534362e-08, 3.7157499264139915e-06, -1.8078794710163493e-06, -1.4124341696231113e-08, 9.641033102525398e-06, -1.1976292171311798e-06, 3.222898521926254e-05, 1.776488488758332e-06, 4.814948624698445e-06, 2.2972761826167698e-07, -1.8706507489696378e-06, -7.619130428793142e-07, 1.1214317510166438e-06, 7.580522947137069e-07, -2.709882210183423e-05, 1.5062942892996034e-08, -5.098280553283985e-07], [-5.042852535552811e-08, 1.5237093975883909e-05, 1.76720106992434e-07, -4.335969663316064e-07, -1.514322229922982e-05, -4.076577170053497e-06, 1.659554641264549e-06, -8.81730159107974e-07, 2.090658017550595e-05, 1.0993925570801366e-05, -1.3863297681382392e-05, 2.032528527706745e-07, -1.8847421756618132e-07, -2.506570808691322e-06, -3.5024115163651004e-07, -1.4670985137854586e-07, 4.3194536374357995e-06, -6.074585598980775e-07, 1.8471549251508495e-32, -6.847985787317157e-07, -3.202737389074173e-06, 4.4111034185334574e-06, 6.862159693810099e-07, -9.278860488848295e-07, -2.7745916213461896e-06, 8.88675117494131e-07, 2.929485162894707e-06, -4.7479264964067625e-09, 3.9335617429969716e-08, 1.8169985196436755e-06, -7.870111673469182e-09, -1.5715471818111837e-05, -1.321980198554229e-05, 2.3459144813386956e-06, -5.786470183011261e-07, 1.0135921968412731e-07, 3.973461115691634e-09, -2.5237303566405522e-11, -1.3166646567697171e-05, -8.140241334331222e-06, -6.559432677022414e-07, 1.040257302520331e-05, 9.0275489128544e-07, -4.112744136364199e-05, 1.3255706221571018e-07, -5.762959062849404e-06, 7.730906759206846e-08, 9.04193964146316e-09, 1.4277964055509074e-06, -7.181357659646892e-07, -7.857169137537312e-09, 5.1185224947403185e-08, -8.885122610990948e-07, -4.422856363817118e-06, -3.528857632772997e-07, 1.8786990949593019e-06, 3.721319217220298e-07, -2.36458760127789e-07, 1.700048528618936e-07, 6.700915378132777e-07, 5.067714710094151e-07, -1.6155663615791127e-05, 1.282010941849876e-08, -2.088872719241408e-07], [-1.1716267067640729e-07, 1.5539833839284256e-05, 7.841801448194019e-07, -3.619793460529763e-07, -1.4899648704158608e-05, -4.152516339672729e-06, 3.1282993404602166e-06, -9.192335141960939e-07, 1.982933099498041e-05, 1.580590833327733e-05, -1.7105567167163827e-05, 2.125036360212107e-07, -2.2911133612524281e-07, -2.4980047328426735e-06, -3.3609330785111524e-07, -1.853135387364091e-07, 5.353058895707363e-06, -6.040831976861227e-07, -5.605193857299268e-45, 6.070597464713501e-07, 4.784420525538735e-06, 9.487903298577294e-06, 4.5146595084588625e-07, -9.19761077966541e-07, -1.7140342833954492e-06, 9.37587344651547e-07, 3.3582871310500195e-06, 5.463842711606048e-10, 1.6088131360447733e-07, 3.64632887794869e-06, -1.0461943311668165e-08, -1.7243197362404317e-05, -1.2626218449440785e-05, 3.250853296776768e-06, 8.199890544347e-08, 5.644229261747569e-08, 6.134075469788058e-09, -2.4949924071204777e-11, -1.6427658920292743e-05, -9.970773135137279e-06, -2.5734614155226154e-06, 9.797009624890052e-06, 9.662726370152086e-07, -5.764549132436514e-05, 2.5942222237063106e-07, -4.6512500375683885e-06, 7.563500048490823e-09, 7.4178632125665445e-09, 1.543598386888334e-06, -8.751430300435459e-07, -1.0091268265455255e-08, -6.248684258025605e-06, -9.015208775053907e-07, -2.6079538656631485e-05, -2.4487951577611966e-07, 1.8035212860922911e-06, 3.921554707631003e-07, -2.796235207824793e-07, 1.3658892612511409e-06, 1.1524616638780572e-06, 5.096795234749152e-07, -2.0262457837816328e-05, 1.963406859317729e-08, -1.7692120479750884e-07], [-1.5983760022209026e-06, 2.8771476081601577e-06, 1.054594349625404e-07, -1.1900669960596133e-06, -1.9933677322114818e-06, 4.454186637303792e-06, 3.160715323247132e-06, -2.1715802631661063e-06, 2.7096633857581764e-05, 1.1055563845729921e-05, 2.8177134936413495e-06, 1.162651642516721e-06, -1.1369529602234252e-06, 7.555305501227849e-07, -1.912727185526819e-07, -2.2579514791232214e-07, 4.959081707056612e-06, 8.882357178663369e-07, 1.2721173481948933e-22, 3.6952806112822145e-06, 6.560545898537384e-06, -2.7520343337528175e-06, 7.000746336416341e-06, -1.2910006716992939e-06, 1.826571178753511e-06, 1.2788991625711787e-06, -2.006187514780322e-06, -3.6253155144549964e-08, 2.287745701323729e-06, 5.4204674597713165e-06, -2.1916022774348676e-08, -2.984025741170626e-05, -1.1549082955752965e-05, -5.431561476143543e-07, -1.5849850569793489e-06, -7.415656568809936e-07, -1.3456461722682889e-08, -1.9471921297586903e-10, -2.344882432225859e-06, -5.229202088230522e-06, -1.3759326066065114e-05, 2.2088379125762003e-07, 2.7299261091684457e-06, 4.432763489603531e-06, 7.782784905430162e-07, 1.1258416634518653e-05, -7.37266077521781e-07, 7.270154096635727e-18, 2.890594259952195e-06, 4.204719061817741e-06, -2.997813997041021e-09, 1.3593968333225348e-06, -2.2294456414329034e-07, 1.9271477867732756e-05, 5.093697836855426e-07, 5.670045993610984e-06, 1.3973009345136234e-06, -1.7877944173960714e-06, 1.2563140217025648e-06, 1.3234495099823107e-06, 6.554246283485554e-07, -7.929079401947092e-06, 2.433487544806212e-08, 4.707185325969476e-07], [-8.759222396292898e-07, 2.477481757523492e-07, -2.235528171468104e-07, -3.11097409166905e-07, 2.8526590085675707e-06, 2.490119868525653e-06, 2.52476820605807e-06, -7.860701316531049e-07, 1.687632902758196e-05, 6.752305125701241e-06, 9.507181175649748e-07, 4.5907998469374434e-07, -4.2583079107316735e-07, -3.354907960329001e-07, 4.220007809863091e-08, -1.8646591115611955e-07, 2.7932721877732547e-06, 2.65157154899498e-07, 3.496029583547788e-23, 2.7027513169741724e-06, 1.3484894907378475e-06, -2.3903548935777508e-06, 4.728329258796293e-06, -4.6022344690754835e-07, 1.1416725556046003e-06, 8.857043098942086e-07, -4.188116804471065e-07, -9.565961534008238e-08, 1.8196794826508267e-06, 3.793982159550069e-06, -1.1793733101228554e-08, -1.8062712115352042e-05, -8.016605534066912e-06, 1.1499125918135178e-07, -1.1283490266578156e-06, -2.70091419452001e-07, -1.0501929104123064e-08, -2.7557964590863016e-11, -1.092240950129053e-06, -2.1640726117766462e-06, -4.741867996926885e-06, 4.500143546692925e-08, 1.428557766303129e-06, -1.1917130677829846e-06, 4.935881747769599e-08, 6.501579719042638e-06, -6.991789973653795e-07, 4.7256011554299575e-19, 1.820603529267828e-06, 3.3431867905164836e-06, -8.181126887052415e-10, -1.8207573475592653e-06, -4.98185848130106e-08, 2.5722652026161086e-06, 3.04172061760255e-07, 2.148109160771128e-06, -8.512620297551621e-08, -6.412630568775057e-07, 7.644432571396464e-07, 5.59452701054397e-07, 3.396470162897458e-07, -1.743958932820533e-06, 8.08505706828555e-09, 1.5301770872611087e-07], [-3.0377788107216475e-07, 1.1208227306269691e-06, -3.2383377401856706e-07, -7.324739499381394e-07, 1.5814005109859863e-06, 9.265329481422668e-07, 6.969667538214708e-06, -9.613916063244687e-07, 5.8398481996846385e-06, 2.60223737313936e-06, -4.6904386863388936e-07, 1.7558949139129254e-07, -2.4450389446428744e-07, -3.498194018902723e-07, -3.0255179694904655e-08, 2.3408603055941057e-07, 1.1967175623794901e-06, 8.361144523405528e-07, 5.518465986400767e-22, 1.7895749806484673e-06, 1.540594530524686e-05, -5.24495499121258e-06, 1.7734988659867668e-06, -6.750701686542016e-07, 1.7643517367105233e-06, 4.808684366253146e-07, -1.0299479527020594e-06, -4.7129120162026084e-08, 9.575597914590617e-07, 7.794165867380798e-06, -1.9045941712647618e-08, -6.990502697590273e-06, -4.568630629364634e-06, -1.3470578323904192e-06, 1.231736746376555e-06, -9.292098468449694e-08, 3.27315561321484e-08, -1.8194508399904663e-10, -7.579041039207368e-07, -5.15707961312728e-06, -5.807249635836342e-06, 6.90024080540752e-07, 8.368227781829773e-07, -5.854675237060292e-06, 4.9886688202605e-07, 5.214259545027744e-06, 1.4688012583974341e-08, 1.8175385241589317e-18, 6.627851689700037e-07, 1.6313856576744001e-06, -3.1718583315409887e-10, -1.1661591088341083e-06, -1.7431122500966012e-07, -5.350616447685752e-07, 3.452374244261591e-07, 2.000193262574612e-06, 8.146084269355924e-07, -2.5246683321711316e-07, 7.995532769200508e-07, 4.3841470187544473e-07, 2.971800086015719e-07, 6.742346840837854e-07, 4.020985855390791e-08, 3.780891404403519e-07], [-2.706922259676503e-07, -1.2259193908903399e-06, 2.972995503114362e-07, 1.3658687691986415e-07, 2.8857016332040075e-08, 3.443523837631801e-06, -4.931717967338045e-07, 1.2499111790020834e-07, 5.949089882051339e-06, 3.43347892339807e-08, 1.1223049796171836e-06, 1.761897863161721e-07, -3.628683202805405e-07, 5.771420319433673e-07, -1.2570524177135667e-07, -1.0375724457389879e-07, 6.1871332945884205e-06, -3.770176704165351e-07, 1.4415273101838954e-22, 1.3835426670993911e-06, 1.6503738606843399e-06, -4.471897227631416e-06, 3.2726708809605043e-07, -1.8005857782554813e-06, -5.23686253472988e-07, -8.484460067847976e-07, 1.032371415021771e-06, -6.47092477379374e-08, 4.51254095423792e-07, -5.359819397199317e-07, -1.3931021669577603e-08, -8.73876160767395e-06, 8.578960546401504e-07, 4.6997865865705535e-07, 8.993125675260671e-07, -2.752010459516896e-07, 9.432313596846598e-09, -1.3625199579703207e-10, 3.625264639595116e-07, 9.713241979625309e-07, -2.70348891717731e-07, 3.1310085546465416e-07, 6.875021085761546e-08, 5.409519872046076e-07, 4.6641818585158035e-07, 6.915024641784839e-06, -1.8373754073763848e-07, -2.0259441346759388e-10, -1.1497797913762042e-07, 6.8160202317812946e-06, 2.658160802582188e-09, -3.917673893738538e-06, 3.845589731099608e-07, 3.962464688811451e-06, 6.093497972869955e-07, -8.74590853072732e-08, -1.915424036269542e-06, -5.403538239079353e-07, 3.026298998065613e-07, -5.215292731008958e-07, -1.65611986346903e-08, -2.5758165520528564e-06, 1.7955738229602503e-08, -5.326939600536207e-08], [-7.694782766520802e-08, -3.479401016193151e-07, 6.617491266069919e-08, 2.3780219748914533e-07, 2.0734203189931577e-06, 4.683499810198555e-08, -6.161412215988094e-07, 6.511259442731898e-08, 6.797249056944565e-07, 7.398745083264657e-08, 4.0062070638668956e-07, 9.144147838924255e-08, -6.254635565028366e-08, 5.366088657865475e-07, -4.58904310107755e-08, 3.6224250266059244e-08, 2.1885978185309796e-06, -9.676973178329717e-08, 8.406585219997821e-23, 1.6763773373895674e-06, 7.263804491230985e-07, -3.4621723443706287e-06, 7.272093967003457e-07, -1.0261561556035304e-06, -2.6698884880715923e-07, -4.7108846956689376e-07, 9.141331247519702e-07, -3.722735186784121e-08, 1.0833526431497376e-07, -1.1860593076562509e-06, -8.177204691151019e-09, -2.0327754555182764e-06, 2.7115552256873343e-06, -9.32147514731696e-08, -3.7739002323178283e-07, -1.5254514096341154e-07, 3.4506673074474747e-09, -1.7158618276225113e-11, 3.16470476491304e-07, 6.675318786619755e-07, 3.840298745672044e-09, 4.6187881252990337e-07, 7.459557593847421e-08, 2.895897068810882e-07, 7.497050091842539e-08, 2.5832744086073944e-06, -8.406917828551741e-08, -1.7880472658049484e-09, -6.113178585565038e-08, 5.597724339168053e-06, 2.939599452744801e-09, -3.3867668207676616e-06, 1.998332379571366e-07, -1.903905967992614e-06, -4.327531542003271e-07, -5.232755029282998e-08, -8.402272442253889e-07, -9.271839473967702e-08, 4.476075332604523e-08, 7.431392390344627e-08, 9.777731513338495e-09, 3.908053258783184e-07, 2.8780746674783586e-09, 4.3734829091590655e-09], [-1.2851731412411027e-07, -3.4228358458676666e-07, 3.877245831063192e-07, 5.051669518252311e-07, 1.731540805849363e-06, -8.522778216502047e-07, 7.599405762448441e-07, -7.65512098155341e-08, 1.208906951433164e-06, -3.872532488458091e-06, 5.149444177732221e-07, 2.1313101683517743e-07, -8.506349757908538e-08, 1.7542959085403709e-06, -5.504504585474024e-08, 1.364968937878075e-07, 1.3614613862955594e-06, 5.6078732768582995e-09, 5.544924254944135e-22, 2.5691892915347125e-06, 1.2763684935634956e-06, -1.5548257579212077e-06, -8.76697697549389e-07, -8.989169941742148e-07, -7.325353408305091e-07, -2.894877297876519e-07, -4.647015430236934e-07, -5.199751385021045e-08, 7.960759376146598e-07, -1.922236606333172e-06, -9.466916139899695e-09, 6.066585456210305e-07, -3.2308071240549907e-07, -3.165298494423041e-07, -7.085108677529206e-08, -1.3892190509068314e-07, 1.0714237497211343e-08, -1.826126055926025e-10, 1.7707954214074562e-07, 1.7634332607485703e-06, 4.028016462598316e-07, 1.6479784790135454e-06, -3.1405321010424814e-08, 3.2670996006345376e-06, -1.1673565580849754e-07, -7.142295999074122e-07, -1.438763206351723e-07, -2.8857374267943214e-09, -2.1315344156391802e-08, 1.7827877627496491e-06, -4.3184539277874023e-10, -2.7624050744634587e-06, 3.027465709237731e-07, 1.6554595276829787e-06, 9.053741223397083e-07, 2.026975778335327e-07, -8.775792821325012e-07, -3.205102245829039e-07, 2.5213768140019965e-07, -1.7629589876833052e-07, 4.781888662819256e-08, -5.366226787373307e-07, 3.989717356489564e-08, 4.1070723710845414e-08], [-1.0925641902304051e-07, 1.087972577806795e-06, 9.302342505179695e-07, 5.4588960018975285e-09, 8.275619620690122e-06, -2.0208730688864307e-07, -4.6547853571610176e-08, 8.800395079333612e-09, 2.421839326416375e-06, 9.596981271897675e-07, 1.768181618899689e-07, 8.706323484375389e-08, -1.0668978234207316e-07, 3.462199629211682e-07, -1.664996318595513e-08, -1.2209353883463336e-07, 5.850104571436532e-06, -1.9909529669348558e-07, -5.605193857299268e-45, 2.9441871447488666e-06, -9.303334991273005e-09, -1.6583112483203877e-06, 3.140297053505492e-07, -9.67224423220614e-07, -5.788637480463876e-08, -3.8530762935806706e-07, -8.380990834666591e-08, -4.3201435317996584e-08, 1.324064442087547e-06, 1.6259623407677282e-06, -3.3795668485936403e-09, 5.2903706091456115e-06, 1.61785033014894e-06, -2.4535506071288182e-08, 3.54090985865696e-07, 1.5169879929999297e-07, -9.930700173299556e-08, 3.6953148862167086e-30, -1.855791609273183e-08, 5.897363166695868e-07, 7.556751597803668e-07, -1.2906912161270157e-07, 1.0864810207067421e-07, -1.2973149523531902e-06, 1.165358014532103e-07, 2.9372915832936997e-07, -2.9240091237170418e-08, 3.695898448397017e-11, 1.3288637035202555e-07, -1.5834106079637422e-06, -1.1023659851616685e-07, -1.875923317129491e-06, -1.3609136040315661e-08, -1.0178349612033344e-06, 1.0294447747583035e-06, -5.270042606753123e-07, 4.7022976445987297e-07, -6.500446403379101e-08, -1.484970368892391e-08, -6.420503382287279e-07, -2.7076694664174283e-08, 7.079517217789544e-06, -3.8607662206091575e-11, 4.1708464237899534e-08], [-1.097158701668377e-07, 8.212455071543445e-08, 1.9953702690145292e-07, 1.227947188375822e-09, 4.640891802409897e-06, -2.777588576918788e-07, -5.01163839317087e-08, -2.7709043948220824e-08, 7.791796861056355e-07, 1.2728760339086875e-06, 7.37900478497977e-08, 1.0598023436614312e-07, -7.424755210649892e-08, 2.6882478465495296e-08, 5.704242855841812e-09, -1.3202588888816535e-07, 3.123535861959681e-06, -7.309922267495494e-08, -5.605193857299268e-45, 2.255695108033251e-06, -5.593153673544293e-07, -9.241329053111258e-07, 6.930788032377677e-08, -4.6116880980662245e-07, -7.574931260023732e-08, -9.007943191363665e-08, 1.730494005869332e-07, -1.6323884466373784e-08, 7.257896186274593e-07, 9.476134437136352e-07, -1.3799954512450086e-09, 5.716081432183273e-06, -3.6435153560887557e-07, -8.259395656295965e-08, 1.8184363170803408e-07, 6.305705824161123e-08, 4.554085553110099e-09, 2.317880574115247e-30, -3.3233867213766644e-08, 3.0660061156595475e-07, 4.2892423834928195e-07, 1.973314489589484e-08, 1.2558875539525616e-07, -3.7142674500501016e-06, -2.604133797490249e-08, 2.8171609756100224e-07, -3.002517701133911e-08, 2.7833010202149566e-11, 2.0371599873669766e-07, 5.951576440565987e-07, -9.947261503384652e-08, -2.834734232237679e-06, -6.29944878483002e-08, -1.7557130149725708e-06, 4.784953944181325e-07, -5.656564781020279e-07, 1.3267268172967306e-08, -2.9978394877616665e-08, 3.8420768788682835e-08, -9.720113069988656e-08, -3.346985266716729e-08, 3.297151806691545e-06, -4.4225244993922885e-11, 6.941736785393005e-08], [-4.3306364716499957e-08, 4.806237825505377e-07, 2.578269118203025e-07, 1.9170889320463402e-09, 3.746457196029951e-06, -2.2611956751461548e-07, -3.132306147790587e-08, -2.9259792810876206e-08, 3.0559607466784655e-07, 2.5785641355469124e-07, 6.795107765356079e-08, 2.3323337927649845e-08, -4.329637448563517e-08, -2.826081058060481e-08, -5.958407101047669e-09, -2.5772063594331485e-08, 1.9608589809649857e-06, -2.5141014603491385e-08, -5.605193857299268e-45, 6.806390047131572e-07, 1.6451221540592087e-07, -6.239239382921369e-07, 1.4038927531601075e-07, -3.612476291436906e-07, 1.7154630427285156e-07, -9.47526928030129e-08, -3.3656135656201513e-08, 1.4271794412934469e-08, 6.645032613050716e-07, 1.001172336145828e-06, -3.968835038392626e-09, 1.1202246241737157e-06, 1.0163969363929937e-06, 1.1911529540498123e-08, 3.37443509579316e-07, 6.697823096146749e-08, 2.4419147592880108e-08, 1.3794187346447457e-29, -4.473535852866917e-08, 2.2221627204999095e-07, -4.159521438396041e-08, -3.94975572248768e-08, 8.047007327149913e-08, 3.907230734512268e-07, 9.406960543856258e-08, 4.998626081942348e-07, -1.353500778122907e-08, 2.0364585018306514e-11, 5.759405397043338e-08, 1.197998500401809e-08, -2.7569154070761215e-08, -1.0172150268772384e-06, -4.556524935139805e-09, -1.6731850109863444e-06, 4.908586106466828e-07, -3.1016958246254944e-07, 4.485957560973475e-08, -3.746115595504307e-08, -8.248277616473842e-10, -2.601563551252184e-07, 5.060770469356157e-09, 2.4252688035630854e-06, -2.435541004985886e-11, 9.103517939479389e-09], [1.1754545781172965e-08, -2.1730495518568205e-06, -7.586010930538123e-09, -2.1766993540950352e-08, 6.66473965793557e-07, -5.433045657809998e-07, 3.3017585110428627e-08, 6.212948733264057e-08, -1.4206590037701972e-07, -3.24980931054597e-07, 4.603026937388677e-08, -2.1138342631843443e-08, -4.255364416394514e-08, 6.330197699355722e-09, -1.9162300191055692e-08, 4.432918920826978e-09, 9.581997346685966e-07, -8.491726077863859e-08, -4.9776479408947185e-23, 4.095759464917137e-08, 2.9001660095673287e-07, 2.410752699688601e-07, 6.9465471597141e-07, 1.8639654797425464e-07, -1.0472316347431843e-08, 2.663476266206999e-07, -1.9274303042493557e-07, -1.7314846445515286e-08, -1.4836947670460177e-08, 5.427677365332784e-07, 8.594587819210631e-10, 3.414968716697331e-07, 6.501412030956999e-08, 4.726676294808385e-08, -4.801457720304825e-08, 3.473391885222554e-08, 3.0846132403894444e-07, -6.306514338527691e-12, 7.361179399367757e-08, -3.261628478412604e-08, 4.476234209960239e-07, 6.286956022449885e-08, -4.253427121625464e-08, -1.4979056004449376e-06, 5.3391111975997774e-08, 2.1700017782677605e-08, 4.6670418640815114e-08, -7.182670902494692e-09, -9.959484259525198e-08, 9.33120674062593e-08, -1.3211539640067826e-09, 4.6190899638531846e-07, 3.9548872621253395e-08, 2.013657194765983e-06, -7.224536346939203e-08, 1.6591165774570982e-08, 4.5098364154227966e-08, 1.1652542042384084e-08, 8.414532004508146e-08, 2.2266023336214857e-07, -8.425661057742673e-09, 1.6445703465706174e-07, 1.5513389455424492e-13, 1.6839880601082768e-09], [-1.1634178953556784e-08, -3.070469574595336e-06, -2.8045217259631272e-09, -8.866223311088106e-09, 3.276442441801919e-07, -4.703800300376315e-07, 6.592739509869716e-08, 3.900628087194491e-08, -1.7096688509354863e-07, -2.0264445765860728e-07, 9.98607863067491e-09, -1.4454331065394399e-08, -3.689222083380628e-08, -3.9196503820448925e-08, 7.570950977253688e-09, -1.7343998237606684e-08, 3.7432474186971376e-07, -2.1558435037150048e-08, -3.459641638800477e-23, 6.024554011219152e-08, 1.0615869427965663e-07, 2.150231068753783e-07, 9.797458915272728e-07, 2.5731424102559686e-07, 3.8636240873302086e-08, 2.1395196370121994e-07, -7.394604040200647e-08, -8.094718673135048e-09, -1.9995987088350375e-09, 3.1173948400464724e-07, -1.3347793981210998e-08, -3.538025339366868e-07, 1.758321275246999e-07, 1.4048208818451258e-08, -7.133482426979754e-08, 2.879382954290577e-08, 2.237929521697879e-07, -5.957167398262797e-11, 5.7287401489247713e-08, -4.743588135625032e-07, 3.952660847517109e-07, 7.194884688033198e-08, 6.900343407778564e-09, -6.518561121993116e-07, 1.8415533986626542e-08, -1.772007252043295e-08, 2.8049377931438357e-08, -3.906312162627046e-09, -5.738455399750819e-08, 7.510085708872793e-08, -2.541321320048695e-10, 1.3523340669507888e-07, 1.934997051478149e-08, 3.147010829707142e-06, -4.1316045695793946e-08, 8.978329191222656e-09, -4.420015287109891e-08, 5.3087546802998986e-08, 4.034333755953412e-08, -9.301503212100215e-08, -2.4559010824987126e-08, 3.248566216029758e-08, 3.0346532578495733e-12, 2.3005657823205183e-08], [-6.63234045461536e-09, -2.940500962722581e-06, -2.0156695867967755e-08, -6.42447872678531e-08, -4.3947224526164064e-08, -6.134580416983226e-07, -5.417299320242819e-08, 4.7224631316566956e-08, -2.6001404762610036e-07, 1.9126296990634728e-08, 3.239075851979578e-08, -1.031650231908543e-08, -5.4763265922019855e-08, -9.019765911943978e-08, -2.0102906006513876e-08, -3.227302869390769e-08, 9.100888860302803e-07, -6.017440057348722e-08, -1.7651221871366978e-23, -3.8988702044662205e-08, 2.8773624194400327e-07, 2.2175029812387947e-07, 1.3379686834014137e-06, 1.6179855322207004e-07, -7.855293304714905e-09, 9.348605090053752e-08, -2.7605091190707753e-07, -1.2791145920232339e-08, 3.035981066545901e-08, 2.588793108770915e-07, -1.7819363762328067e-08, -8.721195854377584e-08, 2.719999372402526e-07, -6.375248773338171e-09, -2.355029380396445e-07, 1.3164197731896365e-08, 7.743539498505925e-08, -1.1109017178378977e-10, 4.877945514181192e-08, -5.628645567412605e-07, 1.423721300852776e-07, 6.304291133574225e-08, 1.0155755347796003e-08, -1.084442146748188e-06, 1.294651941208258e-08, -7.926139744540706e-08, 3.6397658220721496e-08, -2.8858679890220174e-09, -5.366722533040047e-08, 4.189815427935173e-08, -1.763694856826703e-09, 9.95430923467211e-07, -3.112781143954635e-10, 4.833919319935376e-06, 3.8507614874561114e-08, 1.0083896384571744e-08, 1.2661013570891555e-08, 3.874102105783095e-08, 7.042213212571369e-08, -3.077286976349569e-07, -1.7304060406786448e-08, 2.7440353278507246e-07, 1.9897977363014796e-11, 7.230698706450767e-09], [7.602206864021355e-09, -2.3065845198289026e-06, -1.6660472113017022e-08, -6.238185079610048e-08, 5.2966743169236e-07, -8.069810064625926e-08, 4.982776999895577e-07, -2.6236085659547825e-07, -6.732883548465907e-07, 6.275233488395315e-08, 1.8081922803503403e-07, 1.3346921434731485e-07, -7.678745816974697e-08, 8.329335514645209e-07, -5.564650251699277e-08, 1.214003333416258e-07, 1.2018581685424579e-07, 2.9209388685558224e-07, 4.292009169577514e-22, -6.308228961415807e-08, 5.614316478386172e-07, 1.6245742529008567e-08, 5.486447776092973e-07, 1.618668505898313e-07, 3.676586288747785e-07, -1.3127232989518234e-07, -1.7406101449068956e-08, -5.125904145586446e-09, 2.9173635951451615e-08, -8.888694935649255e-08, -1.0143581619104225e-07, -1.3947908428235678e-06, 2.1075881306842348e-07, 2.0590229610206734e-07, 8.627475835965015e-07, -4.2482564133194956e-09, 4.233828398980677e-09, -1.0890840312915984e-10, -2.619579575480202e-08, -7.411907745336066e-07, -1.695668672141437e-08, -1.667466342780699e-08, -4.776343587309384e-08, 3.3949152111745207e-07, 1.683561379195453e-07, 3.764474456602329e-07, 1.6034090322136763e-07, 2.151750830195042e-14, -2.439412867261126e-07, 3.6847941942141915e-07, -2.215185812559639e-09, 7.863305881983251e-07, 5.620971421649301e-08, 3.1291765481000766e-06, 3.028570461083291e-07, 1.849670070441789e-07, -2.432923338346882e-07, -2.3773782231728546e-07, -1.631230972520825e-08, -5.239716074356693e-07, -3.967477013588905e-09, 5.433640239971282e-07, -3.907683066017853e-10, 1.090687931082357e-07], [3.917192348268372e-09, -3.092904705681576e-07, 2.108942531720004e-08, -2.535481158361108e-08, 3.775421646423638e-07, -3.242064394726185e-09, 1.4029208728061349e-07, -7.048593886338494e-08, -4.6314789869938977e-07, 7.953264002935612e-08, 5.8460219776179656e-08, 4.596139291379586e-08, -1.6131366464833263e-08, 1.4807355341872608e-07, -1.545569361383059e-08, 3.7812917241808464e-08, 4.982286228027988e-08, 8.001136109214713e-08, 1.0121650869482444e-22, -7.849121175240725e-08, 3.311647844839172e-08, -6.38349746395761e-08, -4.839741052364843e-08, 8.376904503393234e-08, 1.363233934625896e-07, -5.29513819458316e-08, -5.170862849013247e-09, -1.1505489894148013e-09, 1.4292561800743897e-08, 8.557553599075618e-08, -2.685347233466473e-08, -3.542485274010687e-07, 2.1715608511385653e-07, 3.533816084200225e-08, 1.6034360328376351e-07, -8.111748606154379e-09, 1.5178618362199359e-09, -1.9046821411738968e-11, -7.225864351312339e-11, -2.750500982529047e-07, -6.497781157577265e-08, 6.470508573386269e-09, -2.0207323814247502e-08, -7.601784091093577e-08, 4.383480955993946e-08, 1.8388308831163158e-07, 4.536988384984397e-08, 1.3187950623043398e-14, -7.220558018161682e-08, 1.623731407107698e-07, 9.934608691253288e-12, 2.666757552560739e-07, 2.5037506290459532e-08, -3.6969953498555697e-07, 1.0102438352532772e-07, 5.93536242377013e-08, -2.0670893263741164e-07, -7.631411591546566e-08, -1.372462143933717e-08, -5.562099403277898e-08, -1.6658934232083311e-09, 1.9613786150785018e-08, -9.818819091123032e-10, 3.3833689627726926e-08], [4.914859630389401e-09, -2.0290249267418403e-06, 1.7174598099245486e-07, -7.224275577755179e-08, -4.2729234905891644e-07, -2.180791796035919e-07, 5.712540769309271e-07, -2.6802641173162556e-07, -6.386131872204714e-07, 3.3932985843421193e-07, 1.441518833189548e-07, 1.4957737448639818e-07, -9.727481398158488e-08, 1.3447330502458499e-06, -7.217426656325188e-08, 1.2315611286339845e-07, 4.922712264487927e-07, 2.567272190390213e-07, 5.544928798782949e-22, -8.058265876798032e-08, -7.447624739143066e-10, -4.144058891597524e-07, 4.0824176039677695e-07, 7.091768594591485e-08, 6.177955924613343e-07, -1.26893695551189e-07, -1.5903997052646446e-07, 1.8317691807823167e-09, 2.7680215453074197e-08, -2.9852765237592394e-07, -2.281821487315483e-08, -1.6948539496297599e-06, 3.306649603018741e-07, 1.554416826365923e-07, 4.3362365431676153e-07, -5.4329532872543496e-08, 5.816538362068968e-09, -1.1660436505245286e-10, -2.3167615381680662e-08, -6.274917154769355e-07, -3.7299196264939383e-07, 1.6532924007606198e-07, -3.014001492829266e-08, -1.944771156559e-06, 1.8363094511641975e-07, 5.881645961380855e-07, 1.831211591252213e-07, 3.1427080583084147e-14, -2.6655746410142456e-07, 1.8967594428431767e-07, -1.492469481334524e-10, -2.7759392651205417e-07, 6.441216271468875e-08, 3.389090352357016e-06, 2.4892173655644e-07, 3.782841417887539e-07, -9.783038024124835e-08, -2.610062779240252e-07, -4.0378040466748644e-08, -4.792160552824498e-07, -3.755638022795438e-09, 1.0100674785462616e-07, -5.649423151510291e-09, 1.1636522856406373e-07], [-1.4604215721192304e-06, 2.8257330995984375e-05, -9.26901884668041e-06, 4.9702935029927175e-06, -7.733381789876148e-05, -9.44876046560239e-06, -2.7395108190830797e-06, -2.2764606910641305e-06, 3.667740384116769e-05, 1.1540117156982888e-05, -3.2196001029660692e-06, 2.7867267817782704e-06, -8.476579864691303e-07, 1.3323432540346403e-05, -4.098951080777624e-07, -7.659159564354923e-07, -8.019392225833144e-06, 2.1627629109843838e-07, -8.940284202392333e-43, 4.24388008468668e-06, 2.571356390035362e-06, 3.63644867320545e-05, 1.0123712854692712e-05, -3.958953584515257e-06, -1.5502846508752555e-06, 4.275486276128504e-07, 4.054599230585154e-06, 2.1740056865837687e-07, 1.9089411580353044e-06, -1.3446488992485683e-05, -3.2682699213637534e-08, -6.237004708964378e-05, -9.475137630943209e-06, 1.501718634244753e-05, -1.917389454320073e-06, -9.689485125363717e-08, 2.6125195340398477e-09, 1.3670044913746682e-12, -2.4280591333081247e-06, -8.270844205071626e-07, -2.274545477121137e-05, 1.642974530113861e-05, 3.018013785549556e-06, 1.3615992429549806e-05, -1.2662685549003072e-06, 4.836801963392645e-06, -1.2826038187085942e-07, 2.222023880449342e-07, 3.899973762599984e-06, -2.031195407425912e-07, -1.6906362532154162e-08, 6.716469215461984e-05, -2.729639732024225e-07, 0.00019945314852520823, 5.622669050353579e-06, 7.869932233006693e-06, 3.1480160487262765e-06, -3.114643732260447e-06, -9.211476026393939e-09, 4.661597756694391e-07, 6.408033641491784e-07, -5.871231041965075e-05, 6.696844467857233e-11, -6.229543600966281e-07], [-9.010399821818282e-07, 1.2454917850845959e-05, -3.552172984200297e-06, 8.185322712961351e-07, -3.11365511151962e-05, 4.923204414808424e-06, -2.5059416657313704e-06, -1.5237112620525295e-06, 5.142260761203943e-06, 3.973326784034725e-06, -2.0438899355212925e-06, 1.1553762533367262e-06, -3.434914788158494e-07, 2.358402298341389e-06, -1.0237742742447153e-07, -3.1762220942255226e-07, -3.4379022508801427e-06, 2.4685743937880034e-07, -4.259947331547444e-43, -1.025809979182668e-07, 9.073260116565507e-06, 2.5798492515605176e-06, 7.436782652803231e-06, -1.2662601420743158e-06, -4.939491873301449e-07, 3.6185971907798375e-07, 6.207294518389972e-07, 5.796579927164203e-08, 7.410931175400037e-07, -2.287881670781644e-07, -9.562112213146179e-10, -3.262823156546801e-05, -5.688751116394997e-06, 4.294162408768898e-06, -1.1203944723092718e-06, -1.650974184030929e-07, 2.858217440504518e-09, -2.8025566351126685e-13, -1.6020393331928062e-06, -1.2705033896054374e-06, -1.0422579180158209e-05, 5.372676696424605e-06, 1.4961091210352606e-06, 6.287844371399842e-06, -4.45262742232444e-08, -3.876792789014871e-07, -5.429874931905943e-07, 4.5459800368519154e-09, 2.2336614620144246e-06, -1.1500598020575126e-06, -3.976481366407825e-09, 2.9067363357171416e-05, -3.530605567902967e-07, 7.125124830054119e-05, 4.536042979452759e-06, 5.429488282970851e-06, 1.6297491356453975e-06, -1.66546351465513e-06, -1.2180541375528264e-07, -5.681405568225273e-08, 3.3076514682761626e-07, -2.382411366852466e-05, 4.61456498013213e-11, 2.7708716743291006e-07], [-1.424005176886567e-06, 2.8973663575015962e-05, 2.5301730488536123e-08, -3.437414193285804e-07, -4.3322157580405474e-05, -7.943266609800048e-06, 5.317353497957811e-06, -3.5721423046197742e-06, 5.129561395733617e-05, 1.1108872058684938e-05, -1.8613771317177452e-05, 2.383096671110252e-06, -6.55220219414332e-07, 1.3322064660314936e-06, -7.201713287940947e-07, -8.004731171240564e-07, 1.414460530213546e-05, -1.059842020367796e-06, -2.200038588989963e-43, 2.190116447309265e-06, 1.0514358109503519e-05, 1.73852877196623e-05, 5.741584573115688e-06, -2.3747234081383795e-06, -4.717582669400144e-06, 1.8578440403871355e-06, 8.729913133720402e-06, 4.71701753212983e-08, 1.3073376976535656e-06, 1.8012860891758464e-06, -3.383835789350087e-08, -5.042061093263328e-05, -1.7263628251384944e-05, 7.77127752371598e-06, -1.2941497971041827e-06, -7.742279706235422e-09, 4.895696736895161e-09, 2.6159809995290884e-12, -4.852174697589362e-06, -2.086771019094158e-05, -4.720661763712997e-06, 1.931344195327256e-05, 3.6333174193714513e-06, -5.1151833758922294e-05, 1.362567445539753e-07, -3.0281198633019812e-06, -9.95359869193635e-07, 1.929932302857651e-08, 6.101327016949654e-06, -2.5056456252059434e-06, -2.7433644689267567e-08, 2.984595084853936e-05, -1.8384300801699283e-06, 9.574549767421558e-05, 1.614893676560314e-06, 8.534477274224628e-06, 1.1240658750466537e-06, -3.0922226414986653e-06, 5.90583226767194e-08, 1.041836071635771e-06, 1.3980600215290906e-06, -4.382560291560367e-05, 2.7299610488862314e-11, -4.5519252012127254e-07], [6.726611445628805e-07, 1.6420945030404255e-06, 1.0329420092602959e-06, -1.1760027973650722e-06, 1.7451906387577765e-05, 1.3083303201710805e-05, 3.69489612239704e-08, -6.760029691577074e-07, 9.771332770469598e-06, 4.3395880311436485e-07, -8.147036396621843e-07, 1.4273929309638334e-06, 1.571477810102806e-07, 1.8091037418344058e-05, -8.093009000731399e-07, 1.673853518013857e-07, 1.682203946984373e-05, -1.3491522850017645e-06, 5.605193857299268e-45, 4.420985533215571e-06, -5.010994073018082e-07, 3.227022534701973e-05, 7.50612298361375e-06, -2.0501852304732893e-06, -3.5679084930961835e-07, 1.123409901993e-06, 1.603037958375353e-06, 3.3292774759274835e-08, 9.4891504431871e-07, 8.445363164355513e-06, -8.977315957281462e-08, -1.3818519619235303e-05, -1.4361383364303038e-05, 7.224407454486936e-06, -1.4387510418600868e-06, 9.94574520518654e-07, 8.798973283319356e-08, 9.491078929724228e-12, -1.3379284382608603e-06, -7.469702268281253e-06, 1.4895327694830485e-05, -3.208220732631162e-06, 1.3795023505736026e-06, 1.2527457329269964e-06, -1.2066686849721009e-06, 5.846180101798382e-06, 1.0970497896778397e-06, 3.601249076723434e-08, 2.1585001377388835e-06, -6.441206892304763e-07, -1.4863698716283125e-08, 6.29346031928435e-05, -5.375611635827227e-07, 0.00014258769806474447, 2.719943495321786e-06, 2.4428586584690493e-06, 2.946498852907098e-06, -4.981344545740285e-07, 3.085581738559995e-06, 3.9194783312268555e-06, 1.1750345265681972e-06, -9.15582222660305e-06, -1.100020682182068e-12, 8.330188450145215e-08], [1.230974504551341e-07, 4.071582679898711e-06, 6.256703954932163e-07, -5.716004807254649e-07, -3.959131845476804e-06, 1.8563403045845916e-06, 1.6680846783856396e-06, -3.597630211515934e-07, -1.5196703770925524e-06, 5.901972599531291e-07, -3.1170334295893554e-06, 1.0814512734214077e-06, 1.5790676854976482e-07, -1.7217855656781467e-06, -1.8532283263539284e-07, 2.006984942681811e-07, 1.531656744191423e-05, 2.049523146752108e-07, 5.605193857299268e-45, -9.096344228964881e-07, -9.139739631791599e-07, -4.818393790628761e-06, 4.01224451707094e-06, -9.631721695768647e-07, 1.7741667761583813e-06, 3.132643655590073e-07, 5.071876785223139e-07, 1.1334711835786493e-08, 8.470041734653933e-07, 4.687117325374857e-06, -3.8257361723026406e-08, -1.0986937013512943e-05, -6.345736437651794e-06, -1.978319374984494e-07, 6.504963607767422e-07, 7.293405133168562e-07, 9.731224714926157e-09, -6.586944531483674e-13, -4.497654799706652e-07, -4.546850050246576e-06, 9.700195278128376e-07, 5.720691831356817e-08, 8.551699579584238e-07, -1.8879480194300413e-05, -9.009000905280118e-07, -4.356413683126448e-06, 4.799454131898528e-07, 3.963287475983179e-09, 9.97548795567127e-07, 2.0391904342886846e-07, 9.363315678356798e-11, 8.517752576153725e-06, 2.6626216254044266e-07, 4.15439426433295e-05, 1.6884106344150496e-06, 2.609623834359809e-06, 1.290493855776731e-06, -5.461486125568626e-07, 5.013036457057751e-07, -1.0769484504180582e-07, 4.770474220094911e-07, -8.762019206187688e-06, -4.458676537786449e-13, 4.4307290636425023e-07], [-1.3666547147295205e-06, 3.56484015355818e-05, 2.562980853326735e-06, -3.967631528212223e-06, -2.397126991127152e-05, -5.097265784570482e-06, 5.7881115935742855e-06, -3.290067979833111e-06, 2.7191710614715703e-05, 7.1047961682779714e-06, -1.7875103367259726e-05, 2.4991506961669074e-06, -8.414357353103696e-07, -1.5512223399127834e-06, -1.031461579259485e-06, -1.003934244181437e-06, 2.4534643671358936e-05, -2.1034825294918846e-06, 5.605193857299268e-45, 2.7220953597861808e-06, -6.048155228199903e-06, 4.347723915998358e-06, 6.3005081756273285e-06, -1.3967129461889272e-06, -6.602209850825602e-06, 2.014548272200045e-06, 5.7826405281957705e-06, 3.984468577300504e-08, 1.2981201962247724e-06, 6.921410658833338e-06, -2.5995468888595497e-08, -3.431614823057316e-05, -1.0165488674829248e-05, 8.72991768119391e-06, -1.1615418316068826e-07, 3.2521597859158646e-07, 2.330268067396446e-08, 3.5344390175023888e-12, -4.894227458862588e-06, -2.6718733352026902e-05, -1.8293594621354714e-06, 6.224258868314791e-07, 3.5192126688343706e-06, -1.5746425560791977e-05, 6.792999442950531e-07, -2.800446054607164e-06, -9.180204187941854e-07, 3.3373780183865165e-08, 6.164897513372125e-06, -2.8093363653169945e-06, -1.9868135581191382e-08, 3.51859416696243e-05, -1.8936793821922038e-06, 6.871597724966705e-05, 1.173405166809971e-06, 7.1634176492807455e-06, 5.400920599640813e-07, -3.2020868729887297e-06, 3.1609629331796896e-06, 1.3157962257537292e-06, 1.4962038221710827e-06, -4.5559969294117764e-05, -5.462029700059601e-12, 2.9577989835161134e-07], [-1.2628854619833874e-06, 1.3490097444446292e-05, 7.1746567300579045e-06, -1.1587545714064618e-06, -3.985716830356978e-05, 1.5522038665949367e-05, -1.296405571338255e-06, -2.7464529921417125e-06, 1.380726826027967e-05, 1.2585235253936844e-06, -5.622133812721586e-06, 2.4683447463758057e-06, -1.2494251677708235e-06, 1.975033592316322e-05, -8.525182693119859e-07, -1.7047130995706539e-07, 5.088316356705036e-06, -1.0110924222317408e-06, 1.6799978464228038e-20, 6.6485572460806e-06, 8.97992867976427e-06, 7.770982847432606e-06, 1.2787269952241331e-05, -1.3615537000077893e-06, -6.077213129174197e-06, 1.4615106920246035e-06, 1.209351648867596e-05, -4.9316366101948006e-08, 1.782341882972105e-06, 4.5736951506114565e-06, -3.1053481563958485e-08, -5.633379259961657e-05, -8.181756129488349e-06, 7.060676580294967e-06, 5.215543978920323e-07, -1.6171863137515174e-07, 6.643192307365098e-08, -1.0560704533091325e-09, -2.8428714813344413e-06, -1.7347305174553185e-06, 5.757593044108944e-06, 1.5614673429809045e-06, 2.659051006048685e-06, 1.312566837441409e-05, -4.837542064706213e-07, 6.8783256210736e-06, -8.198102250389638e-07, -2.0637285658153814e-08, 4.696827545558335e-06, -3.0621049518231302e-06, -6.3901315350278765e-09, 7.485927926609293e-05, -5.610120297205867e-07, 9.410188067704439e-05, 1.1882324542966671e-05, 7.042989182082238e-06, 8.72005784913199e-07, -2.3134020921133924e-06, 7.729950084467418e-07, 1.2324741760494362e-07, 1.4207464573701145e-06, -1.802697079256177e-05, -9.946964141249737e-09, 9.231195008396753e-08], [-1.585592315223039e-07, 4.227638328302419e-07, 1.485204393247841e-06, -2.371582894511448e-07, -2.2176795937411953e-06, -7.062260465318104e-07, -1.331603129983705e-07, -1.4611181313739507e-06, 8.592258382122964e-06, 1.4345331464937772e-06, -5.21650963491993e-06, 1.3110748113831505e-06, -1.301788614682664e-07, 8.888018783181906e-06, -5.024749611948209e-07, 3.5581882684709853e-07, 2.60249385064526e-06, -2.5631521793911816e-08, 4.944490286890979e-21, 1.083173287952377e-06, -3.909245606337208e-06, 6.485510311904363e-06, 3.2569541872362606e-06, -9.302875696448609e-07, -8.461475999865797e-07, 4.530637340849353e-07, 5.048565071774647e-06, -1.9137477380581913e-08, 8.195210625672189e-07, 2.170249445043737e-06, -2.2826728951486075e-08, -1.3293475603859406e-05, -9.121374205278698e-06, 3.2769503377494402e-06, -8.709502026249538e-07, -8.79528911923444e-08, 1.3280738286880478e-08, -6.912462269248465e-10, -1.318288695983938e-06, -5.961374426988186e-06, -6.149747150629992e-06, 7.095794671840849e-07, 9.453658549318789e-07, 6.857235348434187e-07, -2.5277989834648906e-07, -2.6027423700725194e-06, 1.636403510474338e-07, -1.936552251891044e-09, 1.5739624359412119e-06, -1.3637477422889788e-06, -1.0155529750477399e-08, 3.396452666493133e-05, -1.5254394725161546e-07, 5.2147737733321264e-05, 8.563048368159798e-07, 3.2514108170289546e-06, 1.654856589539122e-07, -1.2120497103751404e-06, 8.137589446732818e-08, -4.819393666366523e-07, 7.442807827828801e-07, -1.1979027192410285e-07, 7.705606819286004e-09, 2.0361852648420609e-07], [-7.884556794124364e-07, 2.3325170332100242e-05, 6.144109647721052e-06, -1.6931635400396772e-06, -3.045559424208477e-05, -1.2438508747436572e-05, 3.7709635307692224e-06, -2.617774271129747e-06, 1.872288885351736e-05, 8.492752385791391e-06, -1.2093165423721075e-05, 1.930543476191815e-06, -6.40008011032478e-07, 1.9602803149609827e-06, -1.0532808119023684e-06, -6.182031029311474e-07, 1.2600743502844125e-05, -2.0013405901408987e-06, 5.518465986400767e-22, 3.5451539588393643e-06, -1.2645352398976684e-05, 1.6717403923394158e-06, 6.864519491500687e-06, -1.2936279745190404e-06, -6.026049504725961e-06, 1.970886160052032e-06, 9.932738976203837e-06, -3.9367368032117156e-08, 1.1365698355803033e-06, -1.1397469279472716e-07, -2.263481313491411e-08, -4.119190271012485e-05, -6.087211659178138e-06, 9.636461982154287e-06, -2.3530094495072262e-07, -3.245838797738543e-07, 8.007875607063397e-08, -1.7913966143812132e-10, -3.916405603376916e-06, -2.107744148815982e-05, -9.390085324412212e-06, -3.939868292945903e-06, 2.7999353733321186e-06, -2.1447487597470172e-05, -7.354282161031733e-08, 9.246054105460644e-06, -4.07181573791604e-07, -1.866685472862173e-08, 4.96007578476565e-06, -1.9413796508160885e-06, -3.318645269700937e-08, 1.9295126548968256e-05, -1.6950231156442896e-06, 5.447743751574308e-05, 2.607171836643829e-06, 6.446426596085075e-06, 6.886418759677326e-07, -2.143928441000753e-06, 3.4671080584303127e-07, -4.250819642948045e-07, 1.4558427210431546e-06, -2.0484159904299304e-05, 3.987782193348721e-08, -3.462182007751835e-07], [-1.3334847608348355e-06, -1.9094704839517362e-06, 7.856776846892899e-07, 1.0215435963800701e-07, -3.0816700018476695e-05, 4.170643478573766e-06, 2.322407908650348e-06, -1.8294838355359389e-06, 3.1214061891660094e-05, 1.2125161447329447e-05, -4.880973392573651e-06, 2.077051931337337e-06, -3.137067849934283e-08, -2.559781705713249e-06, -1.3007750965243758e-07, 8.448585617770732e-07, 2.514874722692184e-05, 6.849778628748027e-07, 5.605193857299268e-45, 2.141623008355964e-05, -1.1247933798586018e-05, -1.8448308765073307e-05, 2.0771200070157647e-05, -1.775425459982216e-07, -3.1557201509713195e-06, 1.0115389841303113e-06, 1.7691247649054276e-06, -2.848944191669034e-08, 3.2214270504482556e-06, -2.3771222004143056e-06, -6.213590975079342e-09, -5.065500226919539e-05, -1.4670034715891234e-06, 2.273811787745217e-06, -1.2846475101468968e-06, -8.422838959631918e-08, 3.195220443785729e-08, -1.0941217414494817e-13, 1.1997892670478905e-06, -9.95768732536817e-06, -1.4303423085948452e-06, 3.873377863783389e-06, 1.6728167793189641e-06, -3.7069803511258215e-05, -2.2597032511839643e-07, 9.451060577703174e-06, -1.6081587546068477e-06, -3.66286775216329e-12, 3.473093102002167e-06, 1.0426467270008288e-05, -2.0112002729888445e-08, 1.0127023415407166e-05, 1.0804818657561555e-06, 4.1765972127905115e-05, 1.8654577615961898e-06, 4.644469754566671e-06, 2.6379998416814487e-06, -1.6142404319907655e-06, 2.0414228174558957e-07, 9.754779739523656e-08, 1.1427697472754517e-06, -2.7318219508742914e-05, 3.7237374073129104e-08, 4.986894168723666e-07], [-4.229731302984874e-07, -1.4272222870204132e-06, 5.729704071200103e-07, -4.880369033344323e-07, -7.507335794798564e-06, 1.6323900808856706e-06, -4.0763646325103764e-07, -4.611522399500245e-07, 8.93261039891513e-06, 5.384793553275813e-07, -4.661704906538944e-07, 6.653571062997798e-07, -9.433068726139027e-08, -2.04702814698976e-07, -3.1234421271619794e-08, -2.937309488970641e-07, 7.693017323617823e-06, -2.3182349195849383e-07, 5.605193857299268e-45, 1.8255040004078182e-06, -5.084812528366456e-06, -5.0819662646972574e-06, 4.446456387086073e-06, -1.0931464800023605e-07, -7.159421215874318e-07, 6.725406365148956e-08, 1.2124547765779425e-06, -3.934605885547171e-08, 1.558378585286846e-06, 8.033985068323091e-07, 6.335182600736289e-09, -1.4060701687412802e-05, -1.2178036286059069e-06, 1.3792949857815984e-06, 2.8468093660194427e-08, 2.249312380797619e-08, 6.834020016555087e-09, -2.58832042035256e-14, -8.010252372514515e-08, -3.625194040068891e-06, -2.2008746327628614e-06, -3.3473020266683307e-07, 6.779948762414278e-07, -5.1507454372767825e-06, -2.0332450390014856e-07, 3.7524810068134684e-06, -3.8316522932291264e-07, -6.751870655456738e-13, 1.3136714187567122e-06, 1.8260225260746665e-06, -8.924456729175745e-09, 2.385992047493346e-06, -1.0002770522987703e-07, 1.6323272575391456e-05, 2.6151121801376576e-06, 1.8514811017666943e-06, 1.5417046483889862e-07, -7.682020282118174e-07, -3.1135847677887796e-08, -7.88272274121482e-08, 1.6909656608277146e-07, -7.965240911289584e-06, 3.4228377909784058e-09, 7.596863582648439e-08], [-4.6416568011409254e-07, 4.7064831960597076e-06, 1.4835070487606572e-06, -1.1541553703864338e-06, -1.2467381566239055e-05, -9.015466275741346e-06, 2.2806775632489007e-06, -1.4469208053924376e-06, 3.896642738254741e-06, 7.439673026965465e-06, -8.331420758622698e-06, 1.1193278623977676e-06, -2.9602250606330927e-07, 1.3733460946241394e-06, -4.6998462721603573e-07, -2.2710821667715209e-07, 1.6893418433028273e-05, -7.559125947409484e-07, 5.605193857299268e-45, 7.573206403321819e-06, -2.0322502678027377e-05, -4.003959475085139e-06, 9.882307494990528e-06, -4.264334165782202e-07, -6.220302566362079e-06, 9.385010457663157e-07, 2.724898877204396e-06, -3.386546154615644e-08, 1.3443423085846007e-06, 1.1752035788958892e-07, -9.623274399572779e-10, -1.701207656878978e-05, 8.614615580881946e-07, 8.450357199762948e-06, -5.277801164993434e-07, -1.216267406789484e-07, 2.3014161243395392e-08, -2.877837128757027e-13, -2.081966840705718e-06, -1.4953209756640717e-05, -1.1774998711189255e-05, -5.1698748393391725e-06, 1.7646228798184893e-06, -1.8164340872317553e-05, -2.3640792790047271e-07, 7.540427759522572e-06, -2.3791011471985257e-07, -9.64248732943096e-12, 2.878313352994155e-06, 1.8015282421401935e-07, -2.2644632835522316e-08, 2.6705349227995612e-05, -7.583939236610604e-07, 5.13031191076152e-05, 1.3820401818520622e-06, 3.7249474189593457e-06, 1.610751041880576e-06, -1.1052665058741695e-06, 1.4526386848956463e-07, -5.133729246153962e-07, 8.665084578751703e-07, -1.4300348084361758e-05, 3.9916134397799397e-08, -8.501651649339692e-08], [-8.813490808279312e-07, -3.0239441457524663e-06, 8.826542057249753e-07, -2.325433428040924e-07, -4.83397798234364e-06, 1.1582430488488171e-05, -3.3315977816528175e-06, -1.568495946457915e-07, 2.391665657341946e-05, 4.519644789979793e-06, -7.285053015948506e-06, 1.052712946147949e-06, -9.426366887055337e-08, -8.388310561713297e-07, 4.060969160946115e-08, -9.194309882332163e-07, 3.149714757455513e-05, -1.1203356962141697e-06, 5.605193857299268e-45, 5.257752491161227e-06, 2.0281578372305376e-07, -6.763645615137648e-06, 6.724976174155017e-06, -3.496796807667124e-08, -4.4012244870828e-06, 6.986589937696408e-07, 2.4577248041168787e-06, 7.742475816030492e-08, 3.254906005167868e-06, 1.6122865417855792e-05, -7.45193773354913e-09, 7.919248673715629e-06, 4.77607682114467e-06, 2.7166170184500515e-06, 1.1672498203552095e-06, 2.380246044708656e-08, 4.6749438098458995e-08, 6.0572007479220424e-12, -9.4400957095786e-07, -1.7914531724727567e-07, -3.538021701388061e-06, 3.7050241985525645e-07, 1.7125909153037355e-06, -2.047280577244237e-05, -1.2549811572171166e-06, 1.3654553185915574e-05, -1.0549894113864866e-06, -9.170268433500439e-10, 3.1419749575434253e-06, 8.529968340553751e-07, 2.3303787344275406e-08, -2.648805093485862e-06, -2.5992727614720934e-07, 8.595327017246746e-06, 3.036564066860592e-06, 3.7958918710501166e-06, 2.261116833324195e-06, -8.837569112074561e-07, 6.347343628476665e-07, 3.5421089705778286e-07, 3.2894271839722933e-07, -8.216940841521136e-06, 1.647193137443992e-08, -4.3352812895136594e-08], [-1.3256763509161829e-07, -1.5097679124664865e-06, 4.3764359247688844e-08, 3.52874423015237e-08, -8.08240565675078e-06, 2.2002627702022437e-06, -1.9260468775428308e-07, -1.5296961919375462e-07, 3.596467195166042e-07, 4.0807444747770205e-06, 9.59002477429749e-07, 3.1885176099422097e-07, 3.916142077287077e-08, 2.3973561837919988e-06, -1.4360804989621556e-08, -7.78234294784852e-08, 7.536130851804046e-06, -8.949797347668209e-08, 5.605193857299268e-45, 3.1755780582898296e-06, -5.992277465338702e-07, 6.035743354004808e-07, 4.319634626881452e-06, 8.044267474360822e-09, -8.573701393288502e-07, 1.2432992946287413e-07, 2.5574985329512856e-07, 2.513688279748294e-08, 1.0100566214532591e-06, -1.330434315605089e-06, -1.9026171749203513e-09, -8.805576726444997e-06, 3.056702553294599e-06, 2.0786064851563424e-06, 1.1089487372828444e-07, -1.5349353787996733e-08, 2.7003093094890573e-08, 3.0539273367102826e-12, -1.2155908279964933e-07, -3.747459231817629e-08, -4.686874490289483e-06, 1.1858458748292833e-07, 3.444720846346172e-07, 8.015884304768406e-06, -1.6166787020210904e-07, 8.0137779150391e-06, -1.5760272731313307e-07, -3.1951560841569915e-10, 5.799424798169639e-07, 3.761377342925698e-07, -1.760272816397901e-09, 1.1149221791129094e-05, -2.4489404282235228e-08, 2.198161746491678e-05, 1.9875606085406616e-06, 5.485749170475174e-07, 1.2780873248630087e-06, -1.9588401301007252e-07, 9.023422364862199e-08, 3.1807371669856366e-07, 8.814690488634369e-08, -7.663298674742691e-06, 5.3268993660537944e-09, 5.164533689594464e-08], [5.822508342134824e-07, -3.141129354844452e-06, 6.434437409552629e-07, 2.3604562215950864e-07, -1.3196718100516591e-05, -7.850937436160166e-06, 9.42078713705996e-07, 4.896294285572367e-07, -1.8528995497035794e-05, 4.2507940634095576e-06, 3.0328219509101473e-06, -1.2937130122736562e-07, 2.931938070105389e-07, 9.720391062728595e-06, -1.3740302051701292e-07, 2.80586817780204e-07, 1.1014569281542208e-05, -3.1756144380779006e-07, 5.605193857299268e-45, 1.659303597989492e-05, 6.577532758456073e-07, 1.4499239114229567e-05, 6.320690317807021e-06, 2.0696086266980274e-07, -6.1173045651230495e-06, 3.0189190169949143e-07, -5.502772637555609e-07, 3.6927239932538214e-08, 8.865430345394998e-07, -8.89484363142401e-06, -6.138408892297775e-09, -4.494459517445648e-06, 1.6693245925125666e-05, 1.0648752322595101e-05, -2.996500256813306e-07, 6.186440515421054e-08, 2.6959440901919152e-08, 4.949075437660211e-12, 4.3340099864508375e-07, -1.3026477745370357e-06, -1.5040677681099623e-05, 3.774784147481114e-07, -6.631512405874673e-08, 1.3958713680040091e-05, -6.243611210265954e-07, 2.7018286345992237e-05, 5.362328465707833e-07, -2.911160645879818e-09, -1.2988652997591998e-07, 2.2861299839860294e-06, -9.379411025633999e-09, 3.752842894755304e-05, 2.8538529761590326e-08, 6.641241634497419e-05, 1.8605054492581985e-06, -1.6930019910432748e-06, 1.6342941080438322e-06, 8.170447927113855e-07, 4.912337203677453e-07, 1.513614478199088e-07, 2.846141171630734e-07, -1.2467548913264181e-05, 4.592892821619898e-08, -1.0058017352321258e-07], [-3.443264517954958e-07, -7.1774510779221146e-09, 4.2310827552682895e-07, 5.075348497030063e-08, 2.2654005533695454e-06, 4.7194930630212184e-08, -5.276100409901119e-07, -1.1639153854048345e-06, 3.686960099003045e-06, -9.751781817612937e-07, -1.3989862281960086e-06, -1.6961122639713722e-07, 2.4247520968856406e-07, -6.856845971014991e-07, -8.662260597702698e-07, -8.709444614396489e-07, 2.0212485196680063e-06, -1.0550248816798558e-06, 2.25349237359702e-22, -1.3113176464685239e-06, 1.3923892083766987e-07, -2.1307359929778613e-06, 5.985398274788167e-07, -2.623469583795668e-07, -1.263648073290824e-06, -2.246729735588815e-07, 2.0692948510259157e-06, -1.4721255325866878e-08, -8.898927603695483e-07, 1.8773706642605248e-06, 8.625944958318144e-10, 2.473560925864149e-06, 4.914207920592162e-07, -5.182491236155329e-07, -7.869917340030952e-07, 2.403881182999612e-08, 2.954545275102305e-09, 1.0457847695460876e-12, -1.475850353926944e-06, -1.0865009016924887e-06, 1.0276651210006094e-06, 2.952837689917942e-07, 4.84828774460766e-07, 1.549637545394944e-06, -9.632962871819473e-09, 1.2086383094356279e-06, -1.0655503501766361e-06, 7.641878666322932e-13, 2.5783812418467278e-08, -2.4088208192551974e-06, -2.0364114561299829e-10, 1.012630718832952e-06, -1.3559695162257412e-06, 1.9858143787132576e-06, 4.850319328397745e-07, 5.673539362760494e-07, -6.607331783925474e-07, -7.900035825514351e-08, 2.577255031610548e-07, -4.325130475990591e-09, -2.519745521567529e-06, 1.0476417173777008e-06, 8.04705813095552e-09, 1.5347202975135588e-07], [-6.289908469625516e-07, 5.317360773915425e-06, 8.500117019138997e-07, 5.032938066307224e-09, -9.234596291207708e-06, -2.911201590904966e-07, -3.7859244912397116e-06, -1.699195422588673e-06, 1.5435925888596103e-05, 4.515188265941106e-06, -6.205665613379097e-06, 4.662445292069606e-07, 3.497665090890223e-08, 1.4317572549771285e-07, -8.322274993588508e-07, -8.637147743684181e-07, 3.60776471097779e-06, -1.1539975730556762e-06, 3.4222065916420123e-22, 2.534997065595235e-07, 2.4538958314224146e-06, 3.1415083867614157e-06, 3.138160309390514e-06, -5.331939973984845e-07, -3.6927208384440746e-06, 3.4595808529047645e-07, 3.529771220200928e-06, 3.537312665002901e-10, -2.469562900841993e-07, 1.72549880517181e-06, -5.451649798260405e-09, -1.3369293810683303e-05, -6.289031261985656e-06, 2.128729420292075e-06, -1.1618776625255123e-06, 3.1003015266151124e-08, 7.222266340534134e-09, -6.488559689543649e-11, -6.495039542642189e-06, -4.584309863275848e-06, -1.7030029084708076e-06, 4.559822627925314e-06, 1.2322493603278417e-06, -1.2459780009521637e-05, 1.4044829299564299e-08, 2.9199497930676444e-06, -1.1061800933021004e-06, 3.1063696059874246e-09, 1.5583200365654193e-06, -2.5702138373162597e-06, -9.674808509885224e-09, 9.35922798817046e-06, -1.4418800446946989e-06, 7.60781313147163e-06, 1.1346139672241407e-06, 1.971892970686895e-06, -5.384329710977909e-07, -7.950587246341456e-07, 4.283023713469447e-08, 1.920465422244888e-07, -1.562394572829362e-06, -6.574193776032189e-06, 8.002579932053777e-09, 5.229620292368509e-09], [-8.350283451363794e-07, 7.730461220489815e-06, 9.714300404084497e-07, -6.358673942941095e-08, -8.274863830592949e-06, -6.92152980263927e-07, -2.4860122493919334e-07, -2.2546842046722304e-06, 1.7426329577574506e-05, 5.180461357667809e-06, -7.0970854721963406e-06, 3.953257419198053e-07, 1.4567660855391296e-08, -1.3456383385346271e-06, -1.203993747367349e-06, -1.2661678283620859e-06, 8.635746780782938e-06, -1.6777037217252655e-06, 4.146679028948202e-22, -4.943826752423774e-07, 2.4796099751256406e-07, -5.346450961951632e-07, 3.748787321455893e-06, -8.853935469232965e-07, -2.7424321160651743e-06, 4.107654945073591e-07, 4.707862444774946e-06, -3.821772232015519e-09, -6.740738172084093e-07, 2.030837777056149e-06, -3.873018350475377e-09, -1.154015444626566e-05, -5.176971626497107e-06, 1.8383012729827897e-06, -1.7634331470617326e-06, 9.195978378784275e-08, -2.596521608833058e-10, -4.1496590885703455e-11, -4.962487764714751e-06, -7.147767519199988e-06, -2.494207365089096e-07, 3.6780215850740205e-06, 1.5764650242999778e-06, -1.628464087843895e-05, 1.2278049155156623e-07, 2.003291683649877e-06, -1.5343009636126226e-06, 8.730781431154355e-09, 1.8158872308049467e-06, -3.518396624713205e-06, -1.1312028647125771e-08, 6.50133415547316e-06, -2.0964166651538108e-06, 1.6760817743488587e-05, 1.2743221304845065e-06, 3.094971589234774e-06, -8.444883405900327e-07, -8.912577982300718e-07, 4.603162437888386e-07, 4.837644382860162e-07, -2.4080861749098403e-06, -1.096304549719207e-05, 1.8237718890645738e-08, -3.0835696662734335e-08], [-2.1738642317359336e-06, 1.6285037418128923e-05, 7.96408494352363e-06, 1.142135829468316e-06, -6.109978130552918e-05, -1.3004129868932068e-05, 2.078588840959128e-05, -9.54450479184743e-06, 2.135805698344484e-05, 3.36493321810849e-05, 6.3182196754496545e-06, -4.143238925280457e-07, -9.267182576877531e-07, -5.715705810871441e-06, -6.8099643613095395e-06, -6.0098018366261385e-06, 8.666989742778242e-06, -7.812179319444112e-06, 1.2717989008246737e-22, -7.286558684427291e-06, 3.3658834581729025e-06, -1.7854654288385063e-06, -2.265167495352216e-06, -5.437337222247152e-06, 1.1889657798747066e-05, -8.163738129951525e-08, 2.1677191398339346e-05, 6.614357062062481e-08, -5.36513834958896e-06, -5.003432306693867e-06, -9.121873922879331e-09, -3.1107370887184516e-05, -4.604691184795229e-06, 2.3246826458489522e-05, -3.424198439461179e-06, -1.1609201919782208e-06, -2.2344925909578706e-08, -2.2967294732723076e-10, -1.6498843251611106e-05, -1.1437199646024965e-05, 5.355614121071994e-07, 3.573296999093145e-05, 5.3696917348133866e-06, -6.154279981274158e-05, 5.891403702662501e-07, -2.8143980671302415e-05, -4.230394551996142e-06, 7.904899490540629e-08, 1.5154685115703614e-06, -7.7294789662119e-06, -6.737138846801827e-08, -2.0529601897578686e-05, -1.0371708413003944e-05, 6.75278643029742e-05, -7.994762199814431e-06, 1.5816782251931727e-05, -2.339357706659939e-06, -2.2519946014654124e-06, 8.634958248876501e-06, 2.2833548882772448e-06, -1.4244542398955673e-05, -3.521781036397442e-05, 2.4426675793165487e-08, -3.2290057561112917e-07], [-6.585798473679461e-06, 1.8522041500546038e-05, 5.0978869694517925e-06, 3.0079257840043283e-07, 5.0601061957422644e-05, -1.4461422324529849e-05, -7.607050065416843e-06, -1.8740274754236452e-05, 7.577879296150059e-05, 2.5308509066235274e-06, -2.6559122488833964e-05, -8.18021021586901e-07, 2.155778929591179e-06, -1.2448426787159406e-05, -1.3463885807141196e-05, -1.3408554877969436e-05, 3.4463839256204665e-05, -1.6530028005945496e-05, 3.4960715509479455e-23, -1.5336923752329312e-05, -1.3288104128150735e-06, -2.542439688113518e-05, 1.4550951163982973e-05, -6.20229684500373e-06, -9.444722309126519e-06, -3.058156835322734e-06, 3.6646124499384314e-05, -8.484891367288583e-08, -1.2479306860768702e-05, 1.1113179425592534e-05, -4.463517555564067e-09, 1.492855699325446e-05, -1.1033467671950348e-05, -1.0190373359364457e-05, -1.159464409283828e-05, -8.206185952985834e-07, -1.3525044195716873e-08, -8.574403340122494e-12, -2.7467278414405882e-05, -2.080560261674691e-05, 5.862822035851423e-06, 7.6199639806873165e-06, 8.941268788476009e-06, -1.391469822920044e-06, -7.53496351535432e-07, 3.147324241581373e-05, -1.621267801965587e-05, 1.9874397239050268e-08, 2.9724267278652405e-06, -3.18900820275303e-05, -4.519820251402962e-08, 1.0090318028233014e-05, -1.992792749661021e-05, 7.017506868578494e-05, -3.919290520570939e-06, 1.1029214874724858e-05, -9.957797374227084e-06, -4.0159707168641035e-06, 1.6738722479203716e-06, 1.353071297671704e-06, -3.624874079832807e-05, -2.4920464056776837e-05, 8.917075078329617e-09, 2.2384861040336546e-06], [1.5095315575308632e-07, -2.2522331164509524e-06, 2.3997793050511973e-06, 6.509338845717139e-07, -3.649131394922733e-05, -2.2587788407690823e-05, 9.818848411669023e-06, -9.503310138825327e-09, 2.9019080102443695e-05, 2.040472099906765e-05, -1.754079494276084e-05, -4.93307993565395e-07, -5.765364221588243e-07, 3.512805051286705e-07, -1.9167873688274994e-07, -1.3447906894725747e-06, -4.189001629129052e-06, -7.590733730467036e-07, 5.517001355689697e-22, 1.0524763638386503e-06, 1.3036037671554368e-05, 1.952791353687644e-05, 2.3452630557585508e-06, -1.98607722268207e-06, 9.90169974102173e-06, -2.5639906198193785e-08, 5.461592081701383e-06, 4.386823349022961e-09, -1.5952173271216452e-07, -1.076676016964484e-05, 2.8191111667297264e-08, -4.8460482503287494e-05, -7.294373972399626e-06, 5.6428707466693595e-06, 2.1342830223147757e-06, -4.1069665712711867e-07, 2.5429498506923665e-08, -1.8476273289103062e-10, -2.1204454242251813e-05, -7.085000106599182e-07, 1.7838792700786144e-06, 3.385215677553788e-05, 9.800342013477348e-07, -4.2321185901528224e-05, 7.473519190170919e-07, -6.223719083209289e-06, 8.586230251239613e-07, 1.9299456255339464e-08, 1.9298465758765815e-07, 2.0739516912726685e-06, -2.7359721599395925e-08, 2.0443183530005626e-05, -1.4735496733919717e-06, 3.091834514634684e-05, -9.839006452239119e-06, 3.4202189453935716e-06, -3.816167009063065e-07, 2.444471078888455e-07, 4.350471272118739e-07, 8.124570740619674e-07, -7.433209248119965e-07, -4.4386622903402895e-05, 4.003391040896531e-08, -1.4319584806798957e-07], [-8.40445591165917e-06, -1.742284098327218e-06, 7.5791940616909415e-06, 1.930595772137167e-08, 5.3834382924833335e-06, 1.3363500329433009e-05, -4.899204941466451e-05, -2.601452069939114e-05, 9.728173608891666e-05, 2.884438981709536e-05, -2.5662564439699054e-05, -2.26820907300862e-06, 5.019684522267198e-06, -1.9421227989369072e-05, -1.8710288713919e-05, -1.8866850950871594e-05, 6.129463145043701e-05, -2.3182023141998798e-05, 2.3189477348653864e-21, -2.4918872441048734e-05, 1.6155103367054835e-05, -2.466630030539818e-05, 2.8717733584926464e-05, -4.226775672577787e-06, -4.047712354804389e-05, -5.211893039813731e-06, 4.90925922349561e-05, -3.156944217153068e-08, -2.041478182945866e-05, 6.501504685729742e-06, -1.725201315139202e-08, -2.579512874945067e-05, 1.5860388884902932e-05, -2.7731999580282718e-05, -2.0103350834688172e-05, 1.321957938671403e-06, 1.500789181818618e-08, -3.6597472274912946e-10, -3.2948872103588656e-05, -2.919670987466816e-05, 7.028881555015687e-06, 5.92849744407431e-07, 1.114288443204714e-05, -2.930514710897114e-06, -8.592609219704173e-07, 4.924670793116093e-05, -2.4225299057434313e-05, 8.681367624774339e-09, 2.5919603103830013e-06, -4.689706111093983e-05, -2.5768329692255065e-09, 4.504077878664248e-05, -2.88106548396172e-05, 6.90075903548859e-05, 5.630302439385559e-06, 1.236499156220816e-05, -1.7490669051767327e-05, -4.154394900979241e-06, 4.573680598696228e-07, 1.2791258541255957e-06, -5.375986438593827e-05, -2.10152575164102e-06, 1.6353233434074355e-07, 2.850088094419334e-06], [-5.373050953494385e-06, -1.923737727338448e-06, 1.7753338852344314e-06, 1.444138177930654e-07, -1.352311755908886e-07, 1.3945132195658516e-05, -3.614478191593662e-05, -1.812930713640526e-05, 6.130882684374228e-05, 1.4459231351793278e-05, -2.1148083760635927e-05, -1.7910214182847994e-06, 3.3843259643617785e-06, -1.3431096704152878e-05, -1.3026596207055263e-05, -1.2569580576382577e-05, 4.083386738784611e-05, -1.5385807273560204e-05, 2.173726040522437e-21, -1.650840749789495e-05, 5.311698714649538e-06, -1.5363262718892656e-05, 1.8877090042224154e-05, -2.612511480037938e-06, -3.4418280847603455e-05, -3.75820673070848e-06, 3.299662421341054e-05, -2.223383965826997e-08, -1.4539408766722772e-05, 3.4322119972785003e-06, -1.4799008241084266e-08, -1.2485269508033525e-05, 5.955187589279376e-06, -1.873471774160862e-05, -1.3531539480027277e-05, 9.585481848262134e-07, 5.344452880251538e-09, -8.110511567904766e-11, -2.2462592824012972e-05, -1.9915043594664894e-05, -7.003960035945056e-06, -1.5966694490998634e-06, 7.280046702362597e-06, -3.0749713914701715e-05, -1.068681058313814e-06, 2.8856027711299248e-05, -1.6005546058295295e-05, 1.272242933225698e-08, 6.656252935499651e-07, -3.0082994271651842e-05, -1.759392631583978e-11, 2.5069226467167027e-05, -1.982610410777852e-05, 3.289609230705537e-05, 5.273834176477976e-06, 8.02447902970016e-06, -1.0862121598620433e-05, -2.654186346262577e-06, -3.2239904612652026e-07, 1.9495234937494388e-06, -3.701847526826896e-05, 9.038629968927125e-07, 1.5305796807751904e-07, 1.9782573872362264e-06], [-1.2338032320258208e-06, -3.7890449675614946e-06, -9.169959866994759e-07, -2.138878869573091e-07, -1.7278716768487357e-05, 2.739889623626368e-06, -1.132683246396482e-05, -1.7981218434215407e-06, 1.8966926290886477e-05, -4.329298235461465e-07, -1.3005699202039978e-06, 1.5535034663116676e-06, -4.178530730314378e-07, 3.4036816032312345e-07, 1.4494617062155157e-08, 1.722335127851693e-07, 1.5225726883727475e-06, 8.447386790066957e-07, 5.518465986400767e-22, 5.2064715418964624e-06, 2.2397420252673328e-05, 6.739682589795848e-07, 1.6272533684968948e-06, -2.0729974039568333e-06, -2.1125499188201502e-05, 5.732714498662972e-07, 1.0118492355104536e-07, 1.1787596676526846e-08, 1.2470761703298194e-06, 3.0683220302307745e-06, -6.907242067200059e-08, -2.6233503376715817e-05, -1.579677154950332e-05, -3.345712457303307e-06, -1.8186949546361575e-07, 1.7670848251327698e-07, 1.0606920675115816e-08, -8.752197855343979e-10, -1.47881200973643e-06, -4.034168341604527e-07, -1.5678131603635848e-05, -6.005323484714609e-06, 1.6276301266771043e-06, -3.4518376196501777e-05, -8.492332881360198e-08, 1.038077607518062e-05, -9.540671044305782e-07, 1.0302485087265723e-08, 2.6105233246198623e-06, 8.202428034564946e-07, -9.427976621623202e-09, 6.44565943730413e-06, 3.4343543120485265e-07, -1.250101558980532e-05, 1.8175261402575416e-06, 4.98503027301922e-07, 1.341508436780714e-06, -1.8623749156176927e-06, -1.1312606602587039e-06, 1.0364016134190024e-06, 8.220617928600404e-07, -6.983958655837341e-08, 4.023339883474364e-08, 3.9661713913119456e-07], [4.401372279971838e-06, 2.8617705538636073e-05, -6.22597644905909e-06, -3.50645177604747e-06, -6.234049942577258e-05, 1.7446836864110082e-05, 4.089507274329662e-05, 2.2085891032475047e-05, -1.878463262983132e-05, 2.569143362052273e-06, 8.481308213958982e-06, 7.284917046490591e-06, -6.436053809011355e-06, 1.344374777545454e-05, 1.9813527615042403e-05, 1.8791612092172727e-05, 3.455108526395634e-06, 2.3495325876865536e-05, 5.485588788226052e-22, 3.799119804170914e-05, -2.6347854145569727e-05, -3.072083472943632e-06, -5.9314097597962245e-06, 2.351512421228108e-06, 2.8781492801499553e-05, 8.849257937981747e-06, -4.752918903250247e-05, -1.015324535558193e-08, 2.7636986487777904e-05, 1.0380251296737697e-05, -1.0799386274129574e-08, -5.463843626785092e-05, -3.5064309486187994e-05, 3.428222407819703e-05, 1.1863686268043239e-05, 1.6349796183590115e-08, -2.1376353132041004e-08, 6.297758842199741e-11, 2.8093763830838725e-05, -3.598177499952726e-06, -7.790467861923389e-06, -1.1397321031836327e-05, -5.163334662938723e-06, -6.226725963642821e-05, 2.078242005154607e-06, -2.40851441049017e-05, 2.1035228201071732e-05, 3.2884777123598496e-09, 1.016823898680741e-05, 4.553600956569426e-05, -1.1064632587931555e-07, -2.9772381822112948e-05, 2.946067434095312e-05, -2.1639567421516404e-05, 1.6706038877600804e-05, 1.4263339380704565e-06, 1.4794431990594603e-05, -1.8172149793826975e-06, 1.7830030856202939e-06, -9.404942602486699e-08, 6.047257193131372e-05, -2.9705126507906243e-05, -5.502391597911327e-11, -3.1630913781555137e-06], [5.705136572942138e-06, 1.2600521586136892e-05, -5.043073997512693e-06, -1.9283183974039275e-06, -6.0695128922816366e-05, 3.943725459976122e-06, 4.866535164183006e-05, 2.6195219106739387e-05, -4.004233414889313e-05, 1.6890897995835985e-06, 2.0524897990981117e-05, 5.982989932817873e-06, -6.921784006408416e-06, 1.5414534573210403e-05, 2.1805944925290532e-05, 1.954832077899482e-05, -6.600800588785205e-06, 2.5511899366392754e-05, 1.7633295480612373e-22, 3.7204186810413375e-05, -1.7514055798528716e-05, -6.241387495720119e-08, -8.895198334357701e-06, 2.590153826531605e-06, 3.178213592036627e-05, 8.992815310193691e-06, -5.2427487389650196e-05, -2.720860265981173e-07, 2.779133865260519e-05, 1.0310626521459199e-06, -5.2067554712209585e-09, -4.965042899129912e-05, -2.6734709535958245e-05, 3.0173005143296905e-05, 1.3300143109518103e-05, -8.577694643463474e-08, 4.654576102325336e-08, 5.12476727720923e-11, 3.214356183889322e-05, 8.388247806578875e-06, -3.8751113606849685e-06, -3.7391962450783467e-06, -6.754977675882401e-06, -6.803771248087287e-05, 2.718501946219476e-06, -3.304818528704345e-05, 2.3825314201531e-05, 7.224441600506282e-10, 7.845836080377921e-06, 5.46671544725541e-05, -9.938550959986969e-08, -3.7049227103125304e-05, 3.158256731694564e-05, -5.182629683986306e-05, 5.854878963873489e-06, -1.0002099770645145e-06, 1.7836960978456773e-05, 4.478143864616868e-07, 3.971939293023752e-07, 1.404891634138039e-07, 6.370163464453071e-05, -2.7306159608997405e-05, -5.121455343148895e-11, -3.3568830986041576e-06], [-7.488094979635207e-07, 3.08843154925853e-05, -1.8586035821499536e-06, -1.6281531998174614e-06, -2.646862412802875e-06, 1.6019139366107993e-05, -6.048463546903804e-06, -9.078712537302636e-07, 1.9209932361263782e-05, 8.906961738830432e-06, -3.996698978880886e-06, 2.620467967062723e-06, -7.755311344226357e-07, 4.600567990564741e-06, 1.1295305739622563e-06, 2.047371253866004e-06, 9.476229024585336e-06, 1.5674395399400964e-06, 5.658089065479603e-22, 6.873042366351001e-06, -1.1229933079448529e-05, 3.805536437084811e-07, 6.842223683634074e-06, 1.037266414982696e-07, -1.5974137568264268e-06, 2.447696033414104e-06, -2.6883190002990887e-06, -2.6465333036185257e-08, 3.759855644602794e-06, 1.2048083590343595e-05, -4.842195533427684e-10, -1.943602183018811e-05, -1.397348751197569e-05, 1.046505531121511e-05, -1.8464643289917149e-06, -5.283346240503306e-07, 3.2798798343947055e-08, 5.066043695656219e-10, -4.841531335841864e-07, -1.7970010958379135e-05, -6.288017175393179e-06, -6.099201982578961e-06, 1.7231134279427351e-06, -1.911674189614132e-06, 6.894680382174556e-08, 7.264638952619862e-06, 6.541513357660733e-07, 1.7251731154743766e-09, 5.293139111017808e-06, 2.451452019158751e-07, -2.877816029922542e-08, 7.809205271769315e-06, 2.0233155737514608e-06, 1.2486902051023208e-05, 1.2819175935874227e-05, 4.3437580643512774e-06, 5.927176971454173e-09, -2.5590434233890846e-06, 6.476381031461642e-07, 9.673129142129255e-08, 7.0163623604457825e-06, -4.965768312104046e-07, -4.232621197974851e-11, -4.051333917232114e-07], [-3.658646505755314e-07, -2.3202746888273396e-06, 8.79742572124087e-08, -2.769457552176391e-08, -4.773073669639416e-08, -1.438535377928929e-06, -4.149366304773139e-06, -1.0975361419696128e-06, 3.360906703164801e-06, 1.3667317944054957e-06, -9.916575436363928e-07, -3.008124735970341e-07, -8.902723891424102e-08, -1.0378576007497031e-06, -9.905904789775377e-07, -8.775169817454298e-07, 5.7804413700068835e-06, -1.0970067023663432e-06, 9.349622836029219e-25, -1.6077353848231724e-06, -5.214977818468469e-07, 4.913207476420212e-07, -2.1344541778489656e-07, -2.0846141524089035e-07, -2.477565431036055e-06, -8.30201429380395e-07, 2.837335159711074e-06, -1.6452935014399372e-08, -1.1287818324490217e-06, 8.990298283606535e-08, -4.2859191751176695e-09, 3.1517079150944483e-06, -3.84227888616806e-07, -1.0096575806528563e-06, 7.449206407272868e-08, 9.276320156459406e-08, 3.103232018020208e-07, -3.716533331088456e-11, -1.3745798241870943e-06, -1.0088848512168624e-06, -1.653321533012786e-07, -2.586658922609786e-07, 5.102374984744529e-07, -3.076362418141798e-06, 1.9716389942914248e-07, 4.123602138861315e-06, -8.542796763322258e-07, -7.440893234900159e-09, -6.185106258271844e-07, -1.0023820777860237e-06, -5.518063783682692e-09, -2.544570634199772e-06, -1.2010164027742576e-06, 7.033731321826053e-07, -5.627960035781143e-07, 5.97629423282342e-07, -4.190513891444425e-08, -1.4644362522631127e-07, -7.029623816379171e-08, 3.061594355813213e-08, -2.7003054583474295e-06, 5.045266675551829e-07, 5.130447395227897e-22, 1.919934504712728e-07], [-2.1379443637670192e-07, -2.9657971936103422e-06, 5.048228217674477e-07, -1.7181424283307933e-08, -3.275648907674622e-07, -1.0916037354036234e-06, -2.317024154763203e-06, -3.6070926512365986e-07, 9.867653716355562e-07, 2.5984513740695547e-07, -3.458791297816788e-07, -8.888224556358182e-08, -9.086678431913242e-08, -4.7169521621981403e-07, -3.167910449519695e-07, -4.0507848098059185e-07, 2.910375769715756e-06, -3.8582203387704794e-07, 8.69740151427767e-25, -7.838370947865769e-07, -5.995274250381044e-07, -5.703267333956319e-07, 8.775242008596251e-07, -2.065207382884182e-08, -6.194495085765084e-07, -1.8074466368034336e-07, 1.8191226445196662e-06, 4.653163188095277e-09, -3.0034277642698726e-07, 1.249542549430771e-07, -1.5871849612381084e-08, -1.322454181718058e-07, 1.0776161616377067e-06, -3.8425653769991186e-07, -1.204635680096544e-07, 6.763082893712635e-08, 2.2420512379994761e-07, -6.692021936594017e-11, -6.138831167845638e-07, -7.741806484773406e-07, 4.613883675119723e-07, 4.277058351931373e-08, 4.928572820972477e-07, -1.7397081819581217e-06, 5.006693726272715e-08, 6.288424856393249e-07, -3.2875794886422227e-07, -4.589789881492834e-09, -8.476413881908229e-08, 6.752429158041195e-07, -1.0218386137239577e-09, -4.802857347385725e-07, -4.5474737930817355e-07, 3.508991540002171e-06, -5.351361664907017e-07, 3.1859195814831764e-07, 1.2569987006827432e-07, 2.0847238602073048e-08, -9.042003767945062e-08, -4.436261633600225e-07, -9.771201803232543e-07, 1.2846579977576766e-07, 2.877040849697365e-22, 1.119058694598607e-07], [-2.260285469901646e-08, -3.148682708342676e-06, -2.0786019376828335e-06, -1.030791452194535e-07, -7.3547198553569615e-06, -2.6261361654178472e-06, -1.973159669432789e-06, -2.073382177059102e-08, -4.2663150452426635e-06, -8.757826890359866e-07, 3.4798509318534343e-07, -2.8055143275196315e-07, -5.288311513140798e-07, -9.088285537472984e-07, -1.7589988487998198e-07, 4.102020056961919e-08, 2.486402081558481e-06, 3.128608341285144e-07, 6.682890378843167e-24, 3.8135408431116957e-07, -2.5862457277980866e-06, -2.0379815168780624e-07, 6.444842028940911e-07, 1.4377121715369867e-09, 1.202853127324488e-06, -6.345968017740233e-07, -3.4958418382302625e-07, -1.5141361942028198e-08, -1.3650776509166462e-07, -2.133268480974948e-06, -2.385610109456593e-08, -3.6020205698150676e-06, -6.180471245897934e-09, -8.71154526294049e-08, -1.3122719337843591e-06, -5.011488468653624e-08, 7.869390117321018e-08, -1.841878455310919e-10, -8.153524504450615e-07, 3.9784751493243675e-08, -1.2258503829798428e-06, -5.281282824398659e-07, -1.4788547275657038e-07, -4.2934630073432345e-06, 5.669782581207983e-07, 3.6320848266768735e-06, 4.229168553138152e-07, -7.0348717962076535e-09, -1.2084934724043706e-06, -2.1053444925200893e-06, -2.671754817384908e-09, -1.3613404235002236e-06, 2.042018536485557e-07, 3.67273742085672e-06, -1.904533633023675e-06, 4.4383710928741493e-07, -8.195198688554228e-07, -1.8085575703707946e-08, 1.7222824055806996e-07, -1.1741221896954812e-06, -4.2268837319170416e-07, 2.815719994941901e-07, 2.372688423338799e-21, 2.0284875290599302e-07], [1.3504354683391284e-06, -1.893715648293437e-06, -3.5977546986032394e-07, 1.092235066835201e-07, 2.199891468990245e-07, -1.304333864027285e-06, 9.390252671437338e-06, 4.305650236346992e-06, -1.0110354196513072e-05, -3.3453966352681164e-06, 4.476424692256842e-06, 6.043367761776608e-07, -7.478230372726102e-07, 4.564200935419649e-06, 3.3808792068157345e-06, 3.3424130378989503e-06, -7.876521522121038e-06, 4.151476332481252e-06, 7.402686511812079e-23, 4.5147726268623956e-06, -1.0606634077703347e-06, 1.6247946632574894e-06, -1.145373857980303e-06, 6.242252084120992e-07, 5.1023607738898136e-06, 1.6162873635039432e-06, -8.636623533675447e-06, -3.7715586209685625e-09, 4.132205958740087e-06, -4.09011136071058e-07, -1.288577919922318e-07, -4.75618298878544e-06, 9.176653747999808e-08, 4.317667844588868e-06, 2.8677325190074043e-06, 2.1447075937430782e-07, -4.674150844152791e-08, -1.7691854925505623e-10, 5.445927399705397e-06, 3.853493581118528e-06, -1.129293423218769e-06, 3.0859743560540664e-07, -1.70191151482868e-06, 2.7984276584902545e-06, 2.2553788880941283e-07, -3.1865022265264997e-06, 3.997824933321681e-06, -8.43422665042226e-09, 2.3636096102563897e-07, 9.922658136929385e-06, 5.086063126213958e-09, -1.5727024447187432e-06, 4.9797663450590335e-06, -4.075521076174482e-07, -9.577817650097131e-08, -1.1849585916934302e-06, 1.5536344335487229e-06, 5.379087042456376e-07, -4.0762233766145073e-07, -6.166906132420991e-07, 9.624845915823244e-06, 2.212024355685571e-06, -4.779537321475402e-10, -5.613367761725385e-07], [2.9919885946583236e-07, 1.7852309497357055e-07, 5.439853794086957e-07, 7.630399778690844e-08, 1.9806968794000568e-06, 1.7226550141913322e-07, 1.645198381083901e-06, 6.118261239862477e-07, -1.981871719181072e-06, -9.305986168328673e-07, 5.489151817528182e-07, 8.010661645130313e-08, -1.2558849959987128e-08, 7.822768566256855e-07, 4.4373027208166604e-07, 5.711623884963046e-07, -1.6993851659208303e-08, 4.822229584533488e-07, 7.233355309695854e-23, 4.915688691653486e-07, 6.087452675274108e-07, 7.277038349684517e-08, 1.6686379922248307e-07, 2.840295962869277e-07, 1.0673990118448273e-06, 2.3409842242472223e-07, -1.1441575225035194e-06, -1.2810875027469137e-08, 8.216873652600043e-07, 6.211696472746553e-07, -3.904034784341093e-08, -5.104774913888832e-07, -2.3991086095520586e-07, 5.870110157957242e-07, 7.049706027828506e-07, 1.5775029282849573e-07, 1.0256814952924742e-08, -2.7993296916606347e-11, 7.620271844643867e-07, 1.9847851717713638e-07, -2.877221447761258e-07, 4.60949479474948e-07, -4.210415909255971e-07, 1.3192637879910762e-06, 2.8210664027028542e-08, -1.5445806411662488e-06, 5.798834763481864e-07, -2.87895884909517e-09, -1.1639959218712193e-08, 1.981207333301427e-06, -1.0005052342165754e-10, -2.340622131669079e-07, 7.093639169397647e-07, -1.3479412928063539e-06, 4.482564577301673e-07, -3.5058451430813875e-07, 2.717097800086776e-07, 9.208009998928901e-08, -1.2563921814034984e-07, -2.2347030892433395e-07, 1.3968384564577718e-06, 9.528939699521288e-07, -1.0202594324937309e-09, -1.3686326383322012e-07], [-4.6379000195884146e-08, 1.2179625628050417e-06, 5.0622315939108375e-06, 7.037074283289257e-07, 1.2859824892075267e-05, 3.7798818084411323e-06, 1.4533709418174112e-06, -1.2281582257855916e-06, 2.2708843516738852e-06, -1.2051148132741218e-06, -1.2529244486358948e-06, 3.304695894712495e-07, 7.363540248661593e-07, 2.3916732061479706e-06, -7.899900538177462e-07, -4.439866643224377e-07, 4.557816282613203e-06, -1.4476734122581547e-06, 5.514989949708001e-22, -7.694209216424497e-07, 7.089804967108648e-06, -1.6337721717718523e-06, 4.02223759010667e-06, 8.97158429324918e-07, 1.2863105212090886e-06, 5.556480004997866e-07, 2.814076651702635e-06, 4.992958047012053e-09, 9.799742883842555e-07, 3.857710908050649e-06, -3.94688832727752e-08, 1.1472089681774378e-05, -1.0415215001557954e-07, -9.428065368410898e-07, 1.0283544042977155e-06, 6.412287802959327e-07, 2.492641471008028e-08, -1.8434702375724754e-10, -1.7131287677329965e-06, -2.8086678867111914e-06, 2.0781012608495075e-06, 2.6300554054614622e-06, 4.2010685774585e-07, 7.771453965688124e-06, -5.071856890026538e-07, -9.884633982437663e-07, -1.1079637260991149e-06, -1.4515419977101374e-08, 1.1533650194905931e-06, 1.816772510210285e-06, -9.349335527986113e-09, 4.168314262642525e-06, -1.3389656032813946e-06, 1.2032056702082627e-06, 2.3836387299525086e-06, 5.974645773676457e-07, 3.619238668761682e-07, -2.1793908899780945e-07, -1.1721806458808715e-07, -5.745913540522452e-07, -1.5566542970191222e-06, 9.5005261755432e-06, -5.994222451732867e-09, -2.404900101282692e-07], [-2.25301164391567e-08, -5.881492597836768e-06, -4.593912308337167e-06, 8.100903983176977e-07, 2.841024979716167e-06, 4.128830823901808e-06, -8.950038363764179e-07, -3.806460995292582e-07, 1.2299664376769215e-05, 2.0642888557631522e-05, -8.777892617217731e-07, 3.144130005239276e-07, 2.2037716007616837e-07, 7.603024641866796e-06, 3.1006200629235536e-07, 5.088382408757752e-07, 1.1240951607760508e-05, 1.6115870948851807e-06, 5.605193857299268e-45, 1.831902181947953e-06, 1.6131474694702774e-05, -5.0589633247000165e-06, 8.703782441443764e-06, -1.9765886918321485e-06, 1.8031078070634976e-06, -1.5605235148541396e-07, 3.4976317238033516e-06, -1.3808683974048108e-08, 1.092426828108728e-06, 2.097372544085374e-06, -2.984769764680095e-08, -3.189755079802126e-05, -2.038000093307346e-05, 1.753796368575422e-06, -3.0452770261035766e-07, -2.7940996005781926e-07, 5.138026115680816e-10, -1.7833161336522352e-10, -1.9899365724995732e-05, 2.5336478302051546e-06, -8.698013516550418e-06, 1.201738359668525e-05, 3.178109011514607e-07, -1.3870313523511868e-05, -7.68463564781996e-07, -2.289213398398715e-06, 1.8788892930388101e-07, 1.507961575161927e-14, -1.3932833553553792e-07, 1.5173357041931013e-06, -2.1773882696862756e-09, 5.5923330364748836e-05, 5.217537477619771e-07, 9.981011680793017e-05, 1.3084949159747339e-06, 1.9335302567924373e-06, 1.992264969885582e-06, -3.4200866139144637e-08, 6.019025704517844e-07, -8.190173161892744e-07, 3.610572107959342e-08, -2.0701241737697273e-05, 2.3579207919510736e-08, 9.013731414597714e-07], [-3.934238748115604e-07, 1.581669130246155e-05, 2.754424031081726e-06, 7.133452299967757e-07, -1.3914325791120064e-05, 4.001394245278789e-06, -3.5537875646696193e-06, -7.936750989756547e-07, 2.8507745810202323e-05, 4.3851014197571203e-07, -2.2568474378203973e-06, 3.3589540748835134e-07, -2.644092376158369e-07, -3.454030320426682e-06, -3.256641321058851e-07, -5.243880423222436e-07, -1.4154672953736736e-06, -1.3748257288170862e-06, 5.605193857299268e-45, 2.6678890208131634e-07, 6.716895768477116e-06, 1.3991779269417748e-05, 8.333911978297692e-07, -3.914633452950511e-07, -5.736672846978763e-06, 1.2571954357554205e-06, 2.0074630810995586e-06, 9.997553007679016e-09, -8.152353814239177e-08, 1.281217464565998e-06, 3.886246532913695e-11, 7.397744411719032e-06, 4.5965653043822385e-06, 5.012250767322257e-06, -2.3691714545748255e-07, 2.1016181506183784e-07, -5.076744713505832e-08, 3.1959020662091636e-14, -1.9033049056815798e-06, -3.2393697892985074e-06, 4.791436822415562e-06, 7.72170187701704e-06, 1.3644158798342687e-06, -2.827027628882206e-06, 6.470432367677859e-08, -9.350036407340667e-07, -4.952453309670091e-07, 2.2192065074477796e-08, 2.5870963327179197e-06, -1.3987906868351274e-06, -6.777235661559189e-09, 4.593623089022003e-06, -1.0416060831630602e-06, -2.2773903765482828e-05, 9.277341064262146e-07, 3.0734256597497733e-06, -5.446019031296601e-07, -3.7461293800333806e-07, 6.413085884560132e-07, 2.266725459776353e-06, 6.313807716651354e-07, -2.7440564736025408e-05, -3.0514880986626247e-13, -1.0888081760640489e-06], [-2.3018872141733482e-08, 9.021328537528461e-07, 8.113781291285704e-08, 7.667884460715868e-08, 1.671046305773416e-07, -2.7916891554014e-07, 2.913837704454636e-08, -2.8145619168640224e-08, 2.1926905446889577e-07, 3.7465844116013614e-07, 1.2399722493228182e-07, 1.864412979557528e-08, -1.0896586744024717e-08, -5.082926435306945e-08, -1.0137316763803028e-08, -1.3156593148266893e-08, 3.746221466371935e-07, -3.899923584071985e-08, -5.605193857299268e-45, -3.324380060121257e-08, -3.200020444182883e-07, -7.049813461890153e-07, -2.5167361172862e-07, -6.769036531295569e-08, 1.990098752457925e-08, 1.8231302689741824e-08, 8.690131636512888e-08, 2.307571733695113e-08, 6.318078504818914e-08, -1.1976943881109037e-07, -5.089588195339445e-10, 1.5371963968391356e-07, 4.230617832945427e-06, 1.584834166123983e-07, -1.4392345804026263e-07, 4.935838848751928e-09, 1.5322881852242176e-10, -1.0251860250498224e-22, -6.107332239935204e-08, 4.805757569670277e-08, 1.3099383977532852e-07, 8.206799293475342e-07, 4.3760003620718635e-08, 1.2035068266413873e-06, 4.322286084601501e-09, -4.067991028477991e-07, -2.7898362731093584e-08, -1.218795301228398e-13, 7.288302583674522e-08, -6.520651396613175e-08, 5.168136708033333e-23, -2.498841240594629e-07, -1.2952288130918532e-08, 1.6087085441540694e-06, -2.1141275396985293e-08, 1.8586888472782448e-07, -1.1744469219365783e-07, -4.863561642309833e-08, 1.7299894849998054e-09, 1.4919181445804952e-09, 1.831969242971354e-08, 3.706200857322983e-07, -3.4979717059407754e-28, -1.2441148555808468e-08], [-1.0667825023347177e-07, -3.9787104810784513e-07, -1.970495020486851e-07, -4.5522094183070294e-07, 3.7584691199299414e-06, 4.2032320379803423e-07, 5.136666004545987e-06, -4.8533561169961104e-08, 1.6071794561867137e-06, 2.691166173462989e-06, -7.669817932765e-06, 8.131262063670874e-08, 5.7014439391878113e-08, -4.199538352622767e-07, 2.104201541897055e-07, 1.4497128120183334e-07, 3.6552041819959413e-06, 8.089498919616744e-07, 5.605193857299268e-45, 2.6632474146026652e-06, 9.324107850261498e-06, 6.609448064409662e-06, -2.308875309608993e-06, 7.782333000250219e-08, 4.691401045420207e-06, -4.847787522521685e-07, -5.72267310872121e-07, -4.2219319595915294e-08, 4.525440147062909e-07, 2.6759348656923976e-06, -2.4690494093704274e-09, -6.116640633990755e-06, -7.155761522881221e-06, -1.5564991144856322e-06, 1.0250870445815963e-06, 5.415017767518293e-08, 7.837821414113932e-08, -6.855745897198229e-13, 4.040571752739197e-07, -7.73976296386536e-07, 6.698279776173877e-06, -9.198110092256684e-06, -2.4353806793442345e-07, -5.1319839258212596e-05, 2.1837358588072675e-07, 1.0804722023749491e-06, -7.333716922630629e-08, -2.8926321338218486e-09, -5.10420818500279e-07, 6.830259167145414e-07, -3.56096552245333e-09, -2.512115861463826e-05, 3.730574746896309e-07, -5.1118709961883724e-05, 7.480290378225618e-07, -1.3238416158856126e-06, 2.0461449423692102e-07, -1.8967712378525903e-07, 1.460353928450786e-06, 2.7650625611386204e-07, -2.3357745249086292e-07, 1.513693860033527e-06, 3.5887459670647104e-11, 2.5219441113222274e-07], [1.8450811711812065e-10, -6.514859207662482e-10, 6.713043315675904e-12, -1.7282641246937902e-12, 5.612386555498006e-09, 2.3386255154633773e-09, 2.4500219630851916e-09, 2.1941935768321486e-10, -1.4079682975065566e-09, -2.947718513723885e-09, -3.3474617522344374e-10, -2.2748522510163127e-10, 1.0150645948781012e-11, -7.001393909078502e-10, -8.128625376968568e-12, 6.875315594623288e-11, 9.646333509749638e-09, 6.430439947885391e-12, 0.0, -1.1677003808330255e-10, 5.876103492674645e-10, -1.4150532967605045e-09, -2.6762110305611486e-09, -2.0618237672742623e-10, 1.193279641764633e-10, 1.0128222913130536e-11, -6.339816449596469e-10, 1.1876637173724447e-10, -1.5051877799709956e-10, 9.200569472955777e-11, -4.277109255676476e-20, 9.214660146028564e-09, -6.949819608692565e-10, 2.5051272167786465e-09, -1.016192197056398e-08, -4.050464119925018e-14, 7.851325340127711e-22, -6.587360503815958e-30, 2.416437050456466e-10, 2.3251160718995578e-10, -2.4958309197131712e-08, -1.6313164152848003e-09, -1.6907646116504083e-10, -1.9214310142956492e-08, 4.613203916092878e-12, 3.6799043812152377e-09, 2.1435903052591243e-10, -1.5069166330770796e-27, -3.829992434312146e-10, 3.6906477873799304e-10, -2.2914160096457427e-22, -1.840010632747635e-08, 3.7169318187549316e-13, -1.2743970323469966e-08, -1.4729185926487531e-10, -1.2512620939375552e-09, 4.769942218985079e-10, 4.155396304827974e-10, -5.716243034470381e-10, -3.1688973667343134e-10, -2.1095595756359664e-11, -2.5203776843341075e-09, -2.468677484657178e-10, -2.9341005319816205e-11], [1.0725344168349693e-07, 9.885121698971489e-07, 2.620061195557355e-06, 4.4351378392093466e-07, -2.5336819817312062e-05, -1.6485551896039397e-05, 3.9960077629075386e-06, -1.0315129657101352e-06, -1.5573663404211402e-05, 3.0622584290540544e-06, -1.0112997188116424e-05, 4.657766794480267e-07, -4.7325008267762314e-07, -2.17006618186133e-06, -8.983701036413549e-07, -2.857547656276438e-07, 1.1697931086018798e-06, -1.7859647414297797e-06, 5.518465986400767e-22, -6.371956260409206e-07, -1.2053978935000487e-05, 4.0201848605647683e-07, 1.019243654809543e-06, -8.77849544167475e-08, -5.831216185470112e-06, 1.0561153658272815e-06, 1.7715337889967486e-06, 5.050707851950165e-09, -2.1982447151458473e-07, -4.0946188164525665e-06, -8.507776705357628e-09, -1.3967262930236757e-05, 2.0591769498423673e-06, 2.747861344687408e-06, -1.110259177039552e-06, 6.943979968809799e-08, 4.478047710421151e-09, -1.5446148591939657e-13, -2.8182632831885712e-06, -1.8178438040195033e-05, -1.1440555681474507e-05, 1.0070892130897846e-05, 9.192309562422452e-07, 8.691696166351903e-06, 5.685764108420699e-07, 4.54025530416402e-06, 4.3477254507706675e-07, -1.3625743625238283e-15, 1.606792125130596e-06, -7.735047233836667e-07, -9.996873551187946e-09, -4.395464202389121e-06, -1.2299677791816066e-06, 2.3066388166625984e-05, -1.2726004570140503e-06, 1.819974613681552e-06, 5.296259928400104e-07, -6.021452918503201e-07, -8.054474847085658e-07, -1.551590855797258e-07, 7.745072139186959e-07, -3.981189820478903e-06, -8.101029569385076e-11, -6.70123654344934e-08], [8.111665295018611e-08, 1.6668633179506287e-05, -1.1878283601163275e-07, -2.27574219024973e-06, -1.7887286958284676e-06, 1.8610554661790957e-06, 7.644972583875642e-07, -2.0380528553687327e-07, 1.5675395843572915e-05, -1.6042346260292106e-06, -7.523979547841009e-06, 4.082255955495384e-08, 5.1827022673478496e-08, 6.059003965219745e-08, -9.895623520606023e-08, 7.093087894816108e-09, -3.0329067612910876e-07, -1.8448272953719425e-07, -6.661139160721307e-32, -8.083721070306638e-08, -2.3341699488810264e-05, 1.0944876294161077e-06, -1.065052629201091e-06, 4.090350813612531e-08, -8.394825954383123e-07, 2.0528690924948023e-07, 3.6458084196056006e-07, 2.911882734935034e-09, -1.9171707776877156e-08, 5.7012823617697e-07, -3.6324621088823505e-10, 1.573373083374463e-06, -4.480392362893326e-06, 3.5886247928829107e-07, -6.059756429976915e-08, 1.1712819514286821e-07, 2.6557814974959015e-11, -1.3477301077224342e-22, -3.1341548378804873e-07, -4.1596001665311633e-07, 3.958207344112452e-06, 1.3828944247507025e-06, 1.6593759255556506e-07, -1.5172628991422243e-05, -4.186334479072684e-08, -6.089794169383822e-06, 6.367746863134016e-08, -1.9585528926921982e-24, 3.1755834584146214e-07, -1.472625399401295e-07, -4.847163559418277e-09, -3.2150560400623363e-06, -2.613871004086832e-07, -8.225202691392042e-06, -1.3871884618765762e-07, -3.2748323519626865e-07, -5.0545736485219095e-08, 1.1438302749411378e-08, -1.1688460972436587e-06, -8.678799900962986e-09, 1.39639794838331e-07, 9.555498763802461e-06, 1.6699619465043725e-08, -2.769315585737786e-07], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]], [[4.977219759894069e-06, -4.45967440166766e-40, 5.605193857299268e-45, -5.689186309609795e-06, 1.886314930743538e-05, 1.6918930896281381e-06, 5.5914506447152235e-06, -5.484989742399193e-06, -2.674621839560132e-07, -5.605193857299268e-45, 5.493530075284525e-09, -5.605193857299268e-45, 3.6155240650259657e-06, -1.9716175359008048e-08, 4.809301117347786e-06, -2.830875473591732e-06, 3.0780149700149195e-06, 3.661892948715485e-31, -5.605193857299268e-45, -1.946972856374518e-13, 5.460156899061985e-06, -5.063826392870396e-06, 5.00250553159276e-06, -3.10772770717449e-06, -3.183246462867828e-06, 4.045334208058193e-06, 1.7154106899397448e-05, 3.431199274928076e-06, 5.605193857299268e-45, 5.605193857299268e-45, 5.488547685672529e-06, -3.324358203826705e-06], [7.913179729257536e-07, 5.605193857299268e-45, 5.605193857299268e-45, -5.096544555271976e-07, -8.626307135273237e-07, 2.688181552912283e-07, 8.895556220522849e-07, -8.723382620701159e-07, -4.1724808852450224e-07, -5.605193857299268e-45, -2.868863566846125e-12, -5.605193857299268e-45, 5.348331342247548e-07, -3.140634419196431e-08, 8.12268581285025e-07, -5.869604251529381e-07, 4.899559371551732e-07, 2.678551567143855e-35, 5.605193857299268e-45, 7.465959625940625e-16, 8.677525329403579e-07, -8.043596722018265e-07, 7.953001954774663e-07, -5.21090612437547e-07, -5.059133627582924e-07, 6.429220320569584e-07, -8.58221710586804e-07, -5.707427135348553e-07, -5.605193857299268e-45, 5.605193857299268e-45, 3.50207471910835e-07, -5.274222871776146e-07], [-1.862376848293934e-06, -5.605193857299268e-45, 5.605193857299268e-45, 2.1427035790111404e-06, -2.598516175567056e-07, -6.334345812319953e-07, -2.09237646231486e-06, 2.051513320111553e-06, 1.5044479368953034e-06, -5.605193857299268e-45, -4.572219754077021e-31, -5.605193857299268e-45, -1.3628230135509511e-06, -3.748885141650542e-24, -1.188207761515514e-06, 1.5900781136224396e-06, -1.1518920928210719e-06, 1.7942301904284526e-30, -5.605193857299268e-45, -7.282328494569168e-14, -2.0441259493964026e-06, 1.8949157265524263e-06, -1.872431198535196e-06, 1.221421030095371e-06, 1.191037426906405e-06, -1.5142359188757837e-06, 6.88336831444758e-06, -5.716878490602539e-07, -2.802596928649634e-45, 5.605193857299268e-45, -7.54955522097589e-07, 1.2405926099745557e-06], [-6.493805244645046e-07, 5.605193857299268e-45, 5.605193857299268e-45, 4.6000872089280165e-07, 6.740760341017449e-07, -2.2063611027078878e-07, -7.296266630874015e-07, 7.153540764193167e-07, 3.5642233342514373e-07, 2.802596928649634e-45, -3.6524380089761376e-26, -5.605193857299268e-45, -5.064932224740915e-07, -2.462141068804158e-08, -4.4280136535235215e-07, 5.414436827777536e-07, -4.018255026494444e-07, -3.825544807606751e-43, -5.605193857299268e-45, 1.2495636502176332e-15, -7.121369662854704e-07, 6.602365374419605e-07, -6.524986702061142e-07, 4.2707901570793183e-07, 4.150522840973281e-07, -5.27698603036697e-07, -3.16129771249507e-08, -3.418840037738846e-07, -5.605193857299268e-45, 5.605193857299268e-45, -3.1758304430695716e-07, 4.321389610595361e-07], [2.5064223336812574e-06, 5.605193857299268e-45, 5.605193857299268e-45, -2.4771779862931e-06, 3.646582626970485e-07, 8.499712293996708e-07, 2.81951179204043e-06, -2.7655974008666817e-06, -9.441640145269048e-07, -5.605193857299268e-45, 7.26371116033242e-11, -5.605193857299268e-45, 1.7524525901535526e-06, -6.193018009525986e-08, 5.595807124336716e-06, -2.2435528990172315e-06, 1.5526197785220575e-06, 6.862547775044023e-31, 5.605193857299268e-45, 1.5115667167920309e-15, 2.7486867111292668e-06, -2.549842065491248e-06, 2.5191523036482977e-06, -1.6518729353265371e-06, -1.6018580026866402e-06, 2.0362324448797153e-06, 4.365760560176568e-06, 8.355550562555436e-07, 5.605193857299268e-45, 5.605193857299268e-45, 1.8124667349184165e-06, -1.6705296275176806e-06], [3.4119161682610866e-06, -2.1809529039058588e-40, 5.605193857299268e-45, -2.47145817411365e-06, -3.2467537494085263e-06, 1.1594092939049006e-06, 3.838179964077426e-06, -3.763473614526447e-06, -2.281205070175929e-06, -5.605193857299268e-45, -7.004613035432872e-12, -5.605193857299268e-45, 2.533744464017218e-06, 1.3747677662934166e-08, 3.283919795649126e-06, -2.544434664741857e-06, 2.112210268023773e-06, 6.8302113360461226e-31, -5.605193857299268e-45, -3.600609326209585e-14, 3.7463114495039918e-06, -3.474001005088212e-06, 3.433221309023793e-06, -2.244197503387113e-06, -2.1816360913362587e-06, 2.773550932033686e-06, 7.34649177047686e-07, 5.829928113598726e-07, 5.605193857299268e-45, 5.605193857299268e-45, 1.7827055671659764e-06, -2.2748636183678173e-06], [3.112132162641501e-06, -8.614005867958943e-40, 5.605193857299268e-45, -1.874284862424247e-06, 1.6275394955300726e-05, 1.0594139894237742e-06, 3.4929835237562656e-06, -3.4230952223879285e-06, -6.888295160933922e-07, -5.605193857299268e-45, 1.2166330165541694e-09, -5.605193857299268e-45, 2.2959015950618777e-06, 1.111572345280365e-08, 5.281076937535545e-06, -1.938798050105106e-06, 1.923182026075665e-06, 5.061696582562521e-34, 5.605193857299268e-45, -4.3572344659485816e-15, 3.4131221582356375e-06, -3.161991116940044e-06, 3.127111540379701e-06, -1.9147892089677043e-06, -1.98974521481432e-06, 2.53008283834788e-06, 1.246800457010977e-05, 3.512006969685899e-06, 5.605193857299268e-45, 5.605193857299268e-45, 1.6194451291084988e-06, -2.0728416529891547e-06], [9.253176358470228e-08, -5.617427192892824e-40, 5.605193857299268e-45, -3.343935532029718e-06, 2.7682814106810838e-05, 3.146801219600093e-08, 1.0328193411623943e-07, -1.0353360835324565e-07, 2.2390145204553846e-07, -5.605193857299268e-45, 1.5199770331264517e-08, -5.605193857299268e-45, 7.722189820924541e-08, 5.731634611372272e-10, 1.282921630263445e-06, 9.864899084277567e-07, 5.6594714692437265e-08, 8.775724546120317e-31, 5.605193857299268e-45, 8.578938069919023e-14, 1.0242485615208352e-07, -9.681114931936463e-08, 9.31140320403756e-08, 2.470854951752699e-07, -6.026355237054304e-08, 7.540555913010394e-08, 1.9725837773876265e-05, 1.496399363531964e-06, 5.605193857299268e-45, 5.605193857299268e-45, 6.023445621394785e-06, -7.947846825118177e-08], [-8.103873369691428e-06, 5.605193857299268e-45, 5.605193857299268e-45, 1.7699348973110318e-06, 7.8543916970375e-06, -2.7557816792977974e-06, -9.100952411245089e-06, 8.91937997948844e-06, 6.168056643218733e-07, -5.605193857299268e-45, 2.07327939538704e-11, -5.605193857299268e-45, -5.855702966073295e-06, 2.523702313794729e-08, -1.6297635738737881e-06, 5.704202067136066e-06, -5.011539542465471e-06, 7.386790888532908e-34, -5.605193857299268e-45, -6.575206543718202e-16, -8.885745955922175e-06, 8.23342543299077e-06, -8.142300430336036e-06, 5.317319391906494e-06, 5.18022579854005e-06, -6.58659337204881e-06, 9.957157089957036e-06, -5.634457011183258e-06, 5.605193857299268e-45, 5.605193857299268e-45, -2.3225943550642114e-06, 5.394365871325135e-06], [-4.189689661870943e-06, -3.2810002243701267e-41, 5.605193857299268e-45, 1.899092808343994e-06, 3.4889458220277447e-06, -1.423930825694697e-06, -4.71055773232365e-06, 4.620540494215675e-06, 2.6958850867231376e-06, -5.605193857299268e-45, -2.20466800371355e-09, -5.605193857299268e-45, -3.065737246288336e-06, -4.2741110650723613e-10, -2.674487859621877e-06, 3.0624796636402607e-06, -2.5920226107700728e-06, 1.8247975574481392e-30, 5.605193857299268e-45, -3.264564505089376e-16, -4.59950570075307e-06, 4.2663828025979456e-06, -4.214327873341972e-06, 2.7593182494456414e-06, 2.6793748020281782e-06, -3.4058048186125234e-06, 1.385685891364119e-06, -1.2324683211772935e-06, 5.605193857299268e-45, 5.605193857299268e-45, -1.1554413958947407e-06, 2.791884298858349e-06], [-7.1979038693825714e-06, -4.9469339036826855e-40, 5.605193857299268e-45, -9.196873520522786e-07, 1.5097721188794822e-05, -2.446561211399967e-06, -8.088520189630799e-06, 7.926144462544471e-06, -4.83005351270549e-08, -5.605193857299268e-45, 3.983343876967638e-09, -5.605193857299268e-45, -5.219084414420649e-06, 3.053876795888755e-08, -2.867000830519828e-06, 5.00382884638384e-06, -4.454169356904458e-06, -2.0739217272007293e-43, -5.605193857299268e-45, -6.044679527424969e-15, -7.895156159065664e-06, 7.316405572055373e-06, -7.23492030374473e-06, 5.122412858327152e-06, 4.600576176017057e-06, -5.850628440384753e-06, 4.070901013619732e-06, -4.474800789466826e-06, 5.605193857299268e-45, 5.605193857299268e-45, 1.4390773230843479e-06, 4.777091817231849e-06], [-4.511349288804922e-06, -1.1282806819234843e-39, 5.605193857299268e-45, -3.5866837606590707e-06, 2.3338703613262624e-05, -1.5339834362748661e-06, -5.0680114327406045e-06, 4.965133030054858e-06, 1.0878134162339848e-06, -5.605193857299268e-45, 5.873308062120941e-09, -5.605193857299268e-45, -3.2817458759382134e-06, 1.8984218641548978e-09, -2.706706254684832e-07, 3.061240931856446e-06, -2.7908256470254855e-06, 6.468749644354711e-31, -5.605193857299268e-45, -5.709527224921282e-14, -4.947580691805342e-06, 4.583478130371077e-06, -4.533920218818821e-06, 3.22057007906551e-06, 2.882937906178995e-06, -3.666935072033084e-06, 1.661347778281197e-05, -7.566972044514841e-07, 5.605193857299268e-45, 5.605193857299268e-45, 3.6348394587548682e-06, 2.988022288263892e-06], [-6.632231816183776e-06, -3.431667835254331e-40, -5.605193857299268e-45, 8.633122661194648e-07, 1.5114723282749765e-05, -2.2534914023708552e-06, -7.4546642281347886e-06, 7.308236490644049e-06, 2.875627842513495e-06, -5.605193857299268e-45, 3.0158202601882067e-09, -5.605193857299268e-45, -4.8542478907620534e-06, -1.480154221411567e-09, -3.626422767410986e-06, 4.9279733502771705e-06, -4.10423399443971e-06, 3.0412157684339935e-32, -5.605193857299268e-45, -5.416571393344373e-14, -7.275501047843136e-06, 6.744930487911915e-06, -6.666997705906397e-06, 4.550334779196419e-06, 4.238926067046123e-06, -5.39045913683367e-06, 7.913223271316383e-06, -3.391769269001088e-06, 5.605193857299268e-45, 5.605193857299268e-45, 4.3397346871643094e-07, 4.406902007758617e-06], [-1.1708370038832072e-05, -2.2982696113391325e-41, 5.605193857299268e-45, 2.3298700853047194e-06, 1.1951324268011376e-05, -3.979741904913681e-06, -1.3160706657799892e-05, 1.2899839020974468e-05, 3.268422233304591e-06, -5.605193857299268e-45, 2.1306243436214345e-09, -5.605193857299268e-45, -8.582816917623859e-06, 1.2944562088890166e-10, -7.383921001746785e-06, 8.177657036867458e-06, -7.245235792652238e-06, -1.7060689076213856e-36, 5.605193857299268e-45, -1.0841550774536371e-14, -1.2846295248891693e-05, 1.1907310181413777e-05, -1.1772492143791169e-05, 7.916985850897618e-06, 7.48452612242545e-06, -9.516837053524796e-06, 2.058366817436763e-06, -5.72510316487751e-06, -5.605193857299268e-45, 5.605193857299268e-45, -1.2907348718727008e-06, 7.782366992614698e-06], [-1.4023034964338876e-06, -1.3802355471075507e-39, 5.605193857299268e-45, -3.0873206924297847e-06, 3.665558324428275e-05, -4.764052050632017e-07, -1.57964791469567e-06, 1.5449309103132691e-06, -1.4769580047868658e-07, -5.605193857299268e-45, 9.008397583443184e-09, -5.605193857299268e-45, -1.0012954589910805e-06, 3.5786136276527714e-09, 2.537551381465164e-06, 1.6669571323291166e-06, -8.694591997482348e-07, 2.3921812210420222e-30, -5.605193857299268e-45, -1.9916673291067027e-13, -1.538917103971471e-06, 1.424229367330554e-06, -1.4118875242274953e-06, 1.2119903658458497e-06, 8.95038510861923e-07, -1.1397054322515032e-06, 2.8084690711693838e-05, 2.1597934392048046e-06, 5.605193857299268e-45, 5.605193857299268e-45, 5.791328931081807e-06, 9.163022696156986e-07], [1.0159806151932571e-06, -1.1810017340467769e-39, 5.605193857299268e-45, -4.017657374788541e-06, 3.369631667737849e-05, 3.4608586929607554e-07, 1.1397689831937896e-06, -1.1175454801559681e-06, 1.0457738426339347e-06, -5.605193857299268e-45, 1.7530151552591633e-08, -5.605193857299268e-45, 7.523236718043336e-07, 7.998583129165127e-09, 3.414055072425981e-06, -2.249166755063925e-07, 6.273437520576408e-07, 3.4804577466547667e-31, -5.605193857299268e-45, 1.4389638298192148e-13, 1.1146125871164259e-06, -1.0326884876121767e-06, 1.0209964784735348e-06, -4.4299952151050093e-07, -6.5111271396745e-07, 8.260728918685345e-07, 2.336134457436856e-05, 1.2333039194345474e-06, 5.605193857299268e-45, 5.605193857299268e-45, 5.256961230770685e-06, -6.934000111868954e-07], [-7.1036947701941244e-06, 6.656167705542881e-43, 5.605193857299268e-45, 1.7402121557097416e-06, 3.997777639597189e-06, -2.4161145120160654e-06, -7.971319973876234e-06, 7.815971912350506e-06, 5.975712156214286e-06, 5.605193857299268e-45, -3.4480680533022223e-09, -5.605193857299268e-45, -5.130481440573931e-06, 3.541511617299875e-08, -3.5991934055346064e-06, 5.636463356495369e-06, -4.390049070934765e-06, 1.3538772172318868e-30, 5.605193857299268e-45, 3.506655603857781e-18, -7.786625246808399e-06, 7.216764970507938e-06, -7.133131475711707e-06, 4.7379530769831035e-06, 4.542097940429812e-06, -5.773380507889669e-06, 9.351160770165734e-06, -4.178551535005681e-06, 5.605193857299268e-45, 5.605193857299268e-45, -4.936337063554674e-07, 4.727374289359432e-06], [2.3056063582771458e-06, -9.21818971383723e-40, 5.605193857299268e-45, -3.1464740004594205e-06, 1.7244965420104563e-05, 7.82882693783904e-07, 2.5927597562258597e-06, -2.5443675895076012e-06, -1.5550315310974838e-06, -5.605193857299268e-45, 5.1995225902601305e-09, -5.605193857299268e-45, 1.6785322713985806e-06, -1.403893090667907e-08, 4.725526196125429e-06, -1.2389255061862059e-06, 1.4269926396082155e-06, 1.6112689145817226e-30, -5.605193857299268e-45, -3.7604129337308334e-13, 2.5307233499916038e-06, -2.3484415123675717e-06, 2.3185534701042343e-06, -1.4178376659401692e-06, -1.4744266536581563e-06, 1.8740395262284437e-06, 1.9667404558276758e-05, 1.381504489472718e-06, -4.203895392974451e-45, 5.605193857299268e-45, 3.712603074745857e-06, -1.5476824728466454e-06], [-4.766474925276847e-23, 5.605193857299268e-45, -5.605193857299268e-45, 3.041924958900933e-23, 4.634938995762847e-23, -1.6146793127629038e-23, -5.351959284978468e-23, 5.304863657848049e-23, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 1.9946264210560703e-28, 2.762060460011313e-23, -5.605193857299268e-45, 3.579035105716953e-23, -2.952740447033353e-23, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.2480416913006175e-23, 4.85127810367683e-23, -4.7690257858999697e-23, 3.2013610053664277e-23, 3.0097908676989363e-23, -3.8179353199758947e-23, 3.284601923629711e-23, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -2.371795666296917e-23, 3.186771496240908e-23], [-5.406490799941821e-06, -4.366291872005054e-40, -5.605193857299268e-45, 4.517526122072013e-07, 1.3836224752594717e-05, -1.837755576161726e-06, -6.072472842788557e-06, 5.953562322247308e-06, 2.2172903300088365e-06, -5.605193857299268e-45, 1.2265162219193826e-09, -5.605193857299268e-45, -3.941177965316456e-06, 9.265279210524113e-09, -1.0243386441288749e-06, 4.322913355281344e-06, -3.343838443470304e-06, 5.605193857299268e-45, -5.605193857299268e-45, -4.652020142801444e-14, -5.9286503528710455e-06, 5.495789991982747e-06, -5.432111265690764e-06, 3.7557092582574114e-06, 3.4559282084956067e-06, -4.394114966999041e-06, 4.719203388958704e-06, -4.477457878238056e-06, -5.605193857299268e-45, 5.605193857299268e-45, -2.9575539883808233e-07, 3.587341097954777e-06], [4.783094595950388e-07, -3.202807770060802e-41, 5.605193857299268e-45, -4.3147036876689526e-07, 9.820755622058641e-07, 1.626362831075312e-07, 5.370157509787532e-07, -5.273651026982407e-07, -3.5653519603329187e-07, -5.605193857299268e-45, 7.971469040413126e-10, -5.605193857299268e-45, 3.486963748855487e-07, -3.9691282046813974e-15, 3.0330795652844245e-07, -5.761658599112707e-07, 2.9553297054008e-07, 1.405548469430756e-31, -5.605193857299268e-45, 4.727477225874646e-15, 5.246521936896897e-07, -4.869257850259601e-07, 4.805138473784609e-07, -3.1471788020098757e-07, -3.0605767165070574e-07, 3.887167849825346e-07, 3.8181511285984016e-08, 2.3630383338968386e-07, 5.605193857299268e-45, 5.605193857299268e-45, 3.1833124580771255e-07, -3.1834807145969535e-07], [-4.53896245744545e-06, -6.894108184785235e-41, -5.605193857299268e-45, 5.770727966591949e-07, 1.9212766346754506e-06, -1.5430927078341483e-06, -5.097550001664786e-06, 4.9940654207603075e-06, 1.7934038396560936e-06, -5.605193857299268e-45, -6.316029366182363e-10, -5.605193857299268e-45, -3.328269713165355e-06, -6.017754003440068e-12, -1.2917198546347208e-06, 3.0129435799608473e-06, -2.807897772072465e-06, -2.1416914356362832e-37, -5.605193857299268e-45, -1.8103478017349776e-17, -4.975327556167031e-06, 4.609277311828919e-06, -4.559754415822681e-06, 3.0151038572512334e-06, 2.899528908528737e-06, -3.6885840017930605e-06, 9.243478871212574e-07, -3.5559667139750673e-06, 5.605193857299268e-45, 5.605193857299268e-45, -1.53223231791344e-06, 3.014766662090551e-06], [-5.5283467190747615e-06, 1.975830834697992e-43, 5.605193857299268e-45, 5.03380306327017e-06, 1.0225849109701812e-05, -1.87794023531751e-06, -6.217423106136266e-06, 6.0992329053988215e-06, 2.6136972337553743e-06, -5.605193857299268e-45, -1.3046020866565908e-34, -5.605193857299268e-45, -4.050629286211915e-06, 5.299405012038072e-11, -3.465273493929999e-06, 4.005400114692748e-06, -3.4217937354696915e-06, 2.010245991262113e-30, 5.605193857299268e-45, 3.0972449539985736e-13, -6.068687071092427e-06, 5.629848601529375e-06, -5.560743375099264e-06, 3.629078037192812e-06, 3.5353164093976375e-06, -4.493559572438244e-06, 5.428114491223823e-06, -2.367935849179048e-06, 5.605193857299268e-45, 5.605193857299268e-45, -2.367615252296673e-06, 3.684861439978704e-06], [1.383705239277333e-06, -6.011570411953465e-41, -5.605193857299268e-45, -2.9505235943361185e-06, 2.233808345408761e-06, 4.701868761003425e-07, 1.5548337159998482e-06, -1.525304924143711e-06, 9.402286593740428e-08, -5.605193857299268e-45, 8.039235943613221e-09, -5.605193857299268e-45, 1.0031193369286484e-06, 1.3534569021089737e-09, 7.869161890994292e-07, -8.2796225342463e-07, 8.560672881685605e-07, 5.605193857299268e-45, -5.605193857299268e-45, -8.096073258754611e-16, 1.5178176226982032e-06, -1.4077871810513898e-06, 1.3906970934840501e-06, -9.15504131171474e-07, -8.851787924868404e-07, 1.1244748066019383e-06, -8.707512932915051e-08, 8.087024525593733e-07, 5.605193857299268e-45, 5.605193857299268e-45, 1.1630863809841685e-06, -9.280807375944278e-07], [1.2357446394162253e-05, 5.605193857299268e-45, -5.605193857299268e-45, -9.825013876252342e-06, 7.949513928906526e-06, 4.199720933684148e-06, 1.3890170521335676e-05, -1.362022157991305e-05, -5.019989657739643e-06, -5.605193857299268e-45, 1.0408254702554132e-08, -5.605193857299268e-45, 9.012668670038693e-06, -2.2561797763387403e-08, 9.855088137555867e-06, -8.256914043158758e-06, 7.64596916269511e-06, 5.605193857299268e-45, -5.605193857299268e-45, -5.299971548330777e-15, 1.3559329090639949e-05, -1.2572422747325618e-05, 1.2425018212525174e-05, -8.14013765193522e-06, -7.901891876826994e-06, 1.0044184818980284e-05, 8.967064786702394e-06, 6.636244506807998e-06, 5.605193857299268e-45, 5.605193857299268e-45, 6.195306013978552e-06, -8.23863229015842e-06], [5.398274879553355e-06, -3.579953238749183e-40, 5.605193857299268e-45, -1.8144462501368253e-06, 1.4607560842705425e-05, 1.8333753359911498e-06, 6.073544682294596e-06, -5.95159372096532e-06, -1.2485536444728496e-06, -5.605193857299268e-45, -3.9265907192387317e-10, -5.605193857299268e-45, 3.955539341404801e-06, -7.696096204767855e-09, 6.554794708790723e-06, -2.802690232783789e-06, 3.343297294122749e-06, 4.2167457484900544e-30, -5.605193857299268e-45, 1.157497491952042e-12, 5.924277502344921e-06, -5.491352567332797e-06, 5.430417331808712e-06, -3.5682246561918873e-06, -3.44979207511642e-06, 4.387766239233315e-06, 2.4922746888478287e-05, 3.011030457855668e-06, 5.605193857299268e-45, 5.605193857299268e-45, 4.138149961363524e-06, -3.601069238357013e-06], [5.37541336598224e-06, -6.843731504992758e-40, 5.605193857299268e-45, -2.1296623344824184e-06, 9.759610293258447e-06, 1.8274982949151308e-06, 6.039336312824162e-06, -5.9201029216637835e-06, -1.5745400787636754e-06, -5.605193857299268e-45, 8.448425070639587e-09, -5.605193857299268e-45, 3.934236701752525e-06, -3.288737060458402e-10, 7.046432074275799e-06, -3.4485246942494996e-06, 3.325018951727543e-06, 2.5932511284224916e-30, -5.605193857299268e-45, -1.2670408071260159e-13, 5.896073162148241e-06, -5.464624791784445e-06, 5.402710939961253e-06, -3.440718728597858e-06, -3.436316319493926e-06, 4.3692393774108496e-06, 1.573691042722203e-05, 3.376963832124602e-06, 5.605193857299268e-45, 5.605193857299268e-45, 2.9239527066238225e-06, -3.5779130485025235e-06], [-3.338777077033228e-08, 5.605193857299268e-45, -5.605193857299268e-45, 4.98650400970746e-08, -4.6473043191497254e-09, -1.1339913008612257e-08, -3.7535095032126264e-08, 3.678912108284749e-08, -1.2857539033461762e-08, -5.605193857299268e-45, 1.4396391856408286e-09, -5.605193857299268e-45, -2.440542701265258e-08, -5.94120960624804e-35, -2.117288389058558e-08, 1.4730824560160727e-08, -2.0647741294510524e-08, -5.605193857299268e-45, 5.605193857299268e-45, -1.2587073708832434e-16, -3.6654775215083646e-08, 3.399243908575045e-08, -3.357765265832313e-08, 2.1962456742130598e-08, 2.133789500646799e-08, -2.7143180147959356e-08, 2.4044871996253825e-11, -1.6523333812301644e-08, 5.605193857299268e-45, -5.605193857299268e-45, -3.707848961198579e-08, 2.222196826551226e-08], [-6.974952157179359e-06, -1.6094052992616957e-40, 5.605193857299268e-45, -5.009417236578884e-07, 1.916260225698352e-05, -2.371137270529289e-06, -7.838290002837311e-06, 7.682450814172626e-06, 1.6326678178302245e-06, -5.605193857299268e-45, 2.5548629878358042e-09, -5.605193857299268e-45, -5.095181222714018e-06, 2.4207674753640163e-10, -3.07469872495858e-06, 4.914414148515789e-06, -4.315335445426172e-06, 8.437308149343708e-35, -5.605193857299268e-45, 3.306234680564707e-13, -7.65187360229902e-06, 7.092054602253484e-06, -7.011993602645816e-06, 4.805814114661189e-06, 4.458389412320685e-06, -5.669525307894219e-06, 1.0524240678932983e-05, -3.83653014068841e-06, 5.605193857299268e-45, 5.605193857299268e-45, 1.5737371086288476e-06, 4.629670002032071e-06], [2.2488541162601905e-06, -5.605193857299268e-45, -5.605193857299268e-45, -3.061659072045586e-06, -2.125871560565429e-06, 7.636710961378412e-07, 2.5343167635583086e-06, -2.4862783902790397e-06, -1.7850616131909192e-06, -5.605193857299268e-45, -6.69398544451608e-16, -5.605193857299268e-45, 1.668871846050024e-06, -1.482271860808737e-09, 2.9195871320553124e-06, -1.6456820048915688e-06, 1.3935228935224586e-06, 2.1216125604232027e-34, -5.605193857299268e-45, -3.729929849478019e-25, 2.473283984727459e-06, -2.2958081444812706e-06, 2.2667563825962134e-06, -1.4858250096949632e-06, -1.4384645510290284e-06, 1.8286924614585587e-06, 1.4983361324993894e-06, 6.469387017205008e-07, 5.605193857299268e-45, 5.605193857299268e-45, 1.898236860142788e-06, -1.5019003285487997e-06], [4.8581685341275715e-09, -1.3328730603118363e-40, 5.605193857299268e-45, -2.79020828664045e-09, -4.1707930442669294e-09, 1.6508187039576683e-09, 5.46431255799007e-09, -5.357147170315102e-09, -3.235328394080028e-10, 5.605193857299268e-45, -1.1158804971784601e-26, 5.605193857299268e-45, 3.554718297493764e-09, 5.6670321609839625e-18, 3.1076701212384705e-09, -3.1949141110487744e-09, 3.0059492672762644e-09, 1.8042769760757216e-31, 5.605193857299268e-45, 5.003326024646968e-27, 5.3373394592881596e-09, -4.951060894597958e-09, 4.890321925188346e-09, -3.1987701376579025e-09, -3.1062807881454546e-09, 3.950561655585716e-09, -1.4147702454003763e-10, 2.4065418546825867e-09, 5.605193857299268e-45, 5.605193857299268e-45, 2.2188362258646066e-09, -3.23933968537915e-09], [-2.19247885979712e-06, -3.90962271546624e-43, -5.605193857299268e-45, 1.923590389196761e-06, -2.1154403384571197e-07, -7.460561732841597e-07, -2.4629448489577044e-06, 2.414914433757076e-06, 1.3453789051709464e-06, 5.605193857299268e-45, -5.981308504043881e-11, 5.605193857299268e-45, -1.6051275224526762e-06, 2.4798093266331644e-12, 5.047419904258277e-07, 1.9682865968206897e-06, -1.3556183375840192e-06, 1.0269021788048996e-30, -5.605193857299268e-45, -2.4195184853710973e-15, -2.406436806268175e-06, 2.2310682652459946e-06, -2.2046483536541928e-06, 1.4604644320570515e-06, 1.40221754918457e-06, -1.7824150972955977e-06, 3.7471859286597464e-06, -1.2862676612712676e-06, 5.605193857299268e-45, 5.605193857299268e-45, -1.0435156809762702e-06, 1.4597818562833709e-06], [4.637057372747222e-06, -5.605193857299268e-45, 5.605193857299268e-45, -2.9274267490109196e-06, 1.0160854344576364e-06, 1.577275611452933e-06, 5.206301466387231e-06, -5.109444373374572e-06, -3.5097998534183716e-06, -5.605193857299268e-45, 1.0065196676123378e-08, -5.605193857299268e-45, 3.389676749065984e-06, 6.381513206535217e-42, 2.944460220533074e-06, -3.1012482395453844e-06, 2.8655565529334126e-06, 1.2782932125926579e-30, -5.605193857299268e-45, 8.769754264144683e-14, 5.087247700430453e-06, -4.7190760597004555e-06, 4.659983915189514e-06, -3.050141458516009e-06, -2.9663376608368708e-06, 3.7687941585318185e-06, 3.2930097404459957e-07, 2.2857000203657662e-06, 5.605193857299268e-45, 5.605193857299268e-45, 2.0315735582698835e-06, -3.0885119031154318e-06], [-1.6809442513476824e-06, -3.806220901783711e-40, 5.605193857299268e-45, 1.1620029454206815e-06, 7.432430265907897e-06, -5.713639552595851e-07, -1.886870791167894e-06, 1.8504523495721514e-06, 8.570228828830295e-07, -5.605193857299268e-45, 5.206842956795299e-09, -5.605193857299268e-45, -1.2239262332514045e-06, 9.108676313207553e-11, -1.006667957881291e-06, 1.4483832728728885e-06, -1.0393251841378515e-06, 2.0955569934532575e-34, -5.605193857299268e-45, -3.112559784023382e-14, -1.8424126437821542e-06, 1.708105060060916e-06, -1.687791723270493e-06, 1.2192504073027521e-06, 1.0739566960182856e-06, -1.365896991956106e-06, -6.776014060960733e-08, -3.4425374906277284e-07, 5.605193857299268e-45, 5.605193857299268e-45, 5.238804305918165e-07, 1.114077917918621e-06], [-4.858563897869317e-06, -5.278551185265153e-41, -5.605193857299268e-45, 3.36396101374703e-06, 7.1311587817035615e-06, -1.651081561249157e-06, -5.460988177219406e-06, 5.354513632482849e-06, 8.059078027145006e-07, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -3.514606305543566e-06, 1.922566106316026e-08, -1.886395011752029e-06, 3.3126073049061233e-06, -3.00638384942431e-06, 7.63818365635707e-38, 5.605193857299268e-45, 4.392655689736862e-16, -5.330028216121718e-06, 4.941424776916392e-06, -4.8841916395758744e-06, 3.2422483400296187e-06, 3.107139264102443e-06, -3.948871380998753e-06, 6.255398147914093e-06, -2.6656784939405043e-06, -5.605193857299268e-45, 5.605193857299268e-45, -1.6287817743432242e-06, 3.2297964480676455e-06], [1.773420521544722e-08, -5.605193857299268e-45, -5.605193857299268e-45, -7.025815307315497e-08, -6.741725400161158e-08, 6.003183283809221e-09, 2.010585475886728e-08, -1.9621646529799364e-08, 3.945713444863941e-08, -5.605193857299268e-45, 1.6934520452593915e-10, -5.605193857299268e-45, 1.3038236268414494e-08, 8.944600202299562e-30, 8.608107116003794e-09, -4.646100393301822e-08, 1.1034490654537876e-08, 5.605193857299268e-45, 5.605193857299268e-45, -4.4867563517909354e-17, 1.9572709675230726e-08, -1.8155747127934774e-08, 1.7976219623960787e-08, -1.4321042129950001e-09, -1.1232144103701103e-08, 1.4439269335753124e-08, -1.3707733380847603e-19, 8.967913522894833e-09, -5.605193857299268e-45, 5.605193857299268e-45, 1.8127467171780154e-07, -1.4666178493882853e-08], [4.010541942989221e-08, -5.605193857299268e-45, -5.605193857299268e-45, -2.987497893514046e-08, -4.230689398809773e-08, 1.3635395035294096e-08, 4.5074614263285184e-08, -4.422348709454127e-08, -1.9192606488457886e-13, -5.605193857299268e-45, 1.4736598052955685e-10, -5.605193857299268e-45, 2.9340981200220995e-08, 2.9367250137594127e-39, 2.5593703156800984e-08, -2.7242162303764417e-08, 2.4803190612487924e-08, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 4.402867759267792e-08, -4.083885229988482e-08, 4.033545053516718e-08, -2.6398101482527636e-08, -2.5653999813357586e-08, 3.260226222323581e-08, 2.0090291437888962e-23, 1.9807696816087628e-08, 5.605193857299268e-45, 5.605193857299268e-45, 3.984027829861958e-10, -2.6732831059916862e-08], [1.1500697616462219e-10, 5.605193857299268e-45, 5.605193857299268e-45, -7.465986162635829e-11, -1.1074807043653934e-10, 3.92542318095046e-11, 1.2974823992983886e-10, -1.2729460541205384e-10, -1.2964510107821292e-13, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 8.626080405527148e-11, -7.80094253083341e-11, -1.2875061260186893e-11, -8.546945096110647e-11, 7.141508912011929e-11, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 1.2676826255386686e-10, -1.1759836160418757e-10, 1.1616250322754595e-10, -7.594763012930272e-11, -7.390868472789691e-11, 9.392364663796116e-11, -9.280409080103524e-11, 1.1020731549571394e-10, -5.605193857299268e-45, 5.605193857299268e-45, 8.411580459943835e-11, -7.706749821645431e-11], [-7.456216735590715e-06, -6.557922670209068e-40, 5.605193857299268e-45, -8.934606512411847e-07, 3.366270175320096e-05, -2.533800397941377e-06, -8.382183295907453e-06, 8.214661647798494e-06, 4.895398888038471e-06, 5.605193857299268e-45, 4.12633394120121e-09, -5.605193857299268e-45, -5.437060735857813e-06, 5.348490095258285e-09, -3.3920864552783314e-06, 5.6544540711911395e-06, -4.614830686477944e-06, 7.77330169627793e-34, -5.605193857299268e-45, -1.6456133864641682e-15, -8.180134500435088e-06, 7.5815169111592695e-06, -7.496775651816279e-06, 5.230841452430468e-06, 4.765932771988446e-06, -6.060488431103295e-06, 1.9853194316965528e-05, -3.5887960621039383e-06, 5.605193857299268e-45, 5.605193857299268e-45, 3.0371338652912527e-06, 4.952466952090617e-06], [-1.324183995166095e-05, -4.462000557118439e-40, 5.605193857299268e-45, 5.501884061231976e-06, 1.5993577108019963e-05, -4.500117029238027e-06, -1.4883369658491574e-05, 1.4590452337870374e-05, 4.478694336285116e-06, -5.605193857299268e-45, 3.5985897595125493e-10, -5.605193857299268e-45, -9.696802408143412e-06, -1.5155343646711117e-10, -6.422886144719087e-06, 9.282921382691711e-06, -8.193859684979543e-06, 9.127274469445595e-31, 5.605193857299268e-45, -1.0334045901991273e-13, -1.4526502127409913e-05, 1.3466076779877767e-05, -1.3311992006492801e-05, 8.921470907807816e-06, 8.465472092211712e-06, -1.0762598321889527e-05, 4.267858457751572e-06, -6.937645594007336e-06, -5.605193857299268e-45, 5.605193857299268e-45, -2.4117900920828106e-06, 8.810101462586317e-06], [-3.410104000067804e-06, -1.628168685699005e-41, 5.605193857299268e-45, 2.900561185015249e-06, -1.2521705912149628e-06, -1.158840632342617e-06, -3.834063136309851e-06, 3.7579438867396675e-06, 1.3426895293378038e-06, 5.605193857299268e-45, 1.0209565137753174e-10, -5.605193857299268e-45, -2.492457497282885e-06, -3.1136142553123136e-09, -2.1722739802498836e-06, 2.5371391529915854e-06, -2.1107832708366914e-06, 1.4040909504752845e-30, -5.605193857299268e-45, 1.7264924841338403e-13, -3.742820126717561e-06, 3.469856665105908e-06, -3.4297024740226334e-06, 2.243540393465082e-06, 2.1801738512294833e-06, -2.7721839614969213e-06, 1.9202345811208943e-06, -1.6898184185265563e-06, 5.605193857299268e-45, 5.605193857299268e-45, -1.3859573755325982e-06, 2.2727647319698008e-06], [3.553738679329399e-06, -5.605193857299268e-45, -5.605193857299268e-45, -2.2968911252974067e-06, -2.9841394280083477e-06, 1.2077180144842714e-06, 3.996966825070558e-06, -3.918915354006458e-06, -2.2274234652286395e-06, -5.605193857299268e-45, -1.1563976772682727e-12, -5.605193857299268e-45, 2.622036163302255e-06, 1.5206289560865116e-08, 2.2881231416249648e-06, -2.630629296618281e-06, 2.1994615053699818e-06, 5.027074141333477e-34, -5.605193857299268e-45, 3.079788756920471e-14, 3.902011940226657e-06, -3.6183396332489792e-06, 3.575587925297441e-06, -2.340011633350514e-06, -2.2723875190422405e-06, 2.8891508918604814e-06, -1.9152130334987305e-06, 1.7707239976516576e-06, 5.605193857299268e-45, 5.605193857299268e-45, 1.7552297322254162e-06, -2.368980176470359e-06], [-8.485532816848718e-06, -4.612163700555487e-40, 5.605193857299268e-45, 2.855843376892153e-06, 1.949211218743585e-05, -2.884570221795002e-06, -9.536777724861167e-06, 9.347804734716192e-06, 3.0104001780273393e-06, -5.605193857299268e-45, -1.0561818086785024e-09, -5.605193857299268e-45, -6.155466962809442e-06, 2.783940722395073e-08, -1.4813756479270523e-06, 6.132490398158552e-06, -5.250286449154373e-06, 3.417385515806594e-30, -5.605193857299268e-45, 5.522358286803863e-13, -9.309813322033733e-06, 8.629232070234139e-06, -8.531405001122039e-06, 5.710372988687595e-06, 5.425798008218408e-06, -6.897296771057881e-06, 2.384489926043898e-05, -3.5183734325983096e-06, 5.605193857299268e-45, 5.605193857299268e-45, 4.513549356488511e-07, 5.650311322824564e-06], [-5.159334705240326e-06, 5.605193857299268e-45, 5.605193857299268e-45, 3.277749556218623e-06, 7.637834642082453e-06, -1.7527626141600194e-06, -5.8074415392184164e-06, 5.6928852245619055e-06, 1.7251375084015308e-06, -5.605193857299268e-45, -3.6607911146901984e-10, 5.605193857299268e-45, -3.7802374208695255e-06, 5.277942083381504e-09, -2.3231843897519866e-06, 3.7843890368094435e-06, -3.195322733517969e-06, 2.6061581974538424e-31, -5.605193857299268e-45, 5.99596110609224e-13, -5.666776814905461e-06, 5.254672032606322e-06, -5.194126515561948e-06, 3.39247822012112e-06, 3.298337787782657e-06, -4.194050234218594e-06, 6.926111836946802e-06, -6.096388460719027e-07, 5.605193857299268e-45, 5.605193857299268e-45, -2.54281781053578e-06, 3.4410741136525758e-06], [3.847315383609384e-06, -1.85334333593136e-40, 5.605193857299268e-45, -2.541352614571224e-06, 4.275171704648528e-06, 1.3076822824586998e-06, 4.3222289605182596e-06, -4.237274879415054e-06, 2.9917546839897113e-07, -5.605193857299268e-45, 7.287520809029502e-09, -5.605193857299268e-45, 2.8058120733476244e-06, -7.897408060841826e-09, 2.2162473669595784e-06, -2.187392055930104e-06, 2.3799329937901348e-06, -4.203895392974451e-45, -5.605193857299268e-45, -2.2174744194433286e-16, 4.219450147502357e-06, -3.9113447201089e-06, 3.866286533593666e-06, -2.529206085455371e-06, -2.4594371552666416e-06, 3.1269162263924954e-06, 2.0782197225344134e-06, 2.9762336453131866e-06, 5.605193857299268e-45, -5.605193857299268e-45, 1.488745397182356e-06, -2.5616068342060316e-06], [2.6911106942861807e-06, -3.715528865172609e-40, -5.605193857299268e-45, -2.9637924399139592e-06, 6.613160167034948e-06, 9.153517339655082e-07, 3.022573309863219e-06, -2.9627522053488065e-06, -2.542011316108983e-06, -5.605193857299268e-45, -8.282894370381655e-10, -5.605193857299268e-45, 1.9803437680820934e-06, 7.6463830822604e-09, 3.7615543533320306e-06, -2.119271584888338e-06, 1.6638302895444212e-06, 2.6362417814573135e-39, 5.605193857299268e-45, 7.02839987544359e-15, 2.952059730887413e-06, -2.7359951673133764e-06, 2.7050487005908508e-06, -1.7446111542085418e-06, -1.721673925203504e-06, 2.18763875636796e-06, 7.017793905106373e-06, 2.525965555832954e-06, 5.605193857299268e-45, 5.605193857299268e-45, 1.684742755969637e-06, -1.7919644506037002e-06], [1.0906855095527135e-05, -2.1539919214522493e-40, -5.605193857299268e-45, -9.432747901882976e-06, 1.8810103938449174e-05, 3.7067998164275195e-06, 1.2258338756510057e-05, -1.2020354915875942e-05, -2.3905763555376325e-06, -5.605193857299268e-45, 8.55143067468589e-09, -5.605193857299268e-45, 7.924111741886009e-06, -4.9716099681518244e-08, 9.321604920842219e-06, -7.2537459345767274e-06, 6.748153737134999e-06, 2.3909082546996297e-31, -5.605193857299268e-45, -6.783435575405394e-14, 1.1967420505243354e-05, -1.1096815796918236e-05, 1.0965667570417281e-05, -7.041017852316145e-06, -6.9744387474202085e-06, 8.865275958669372e-06, 1.8061282389680855e-05, 7.51639800000703e-06, 5.605193857299268e-45, 5.605193857299268e-45, 8.310344128403813e-06, -7.273974915733561e-06], [9.321932115113896e-10, 5.605193857299268e-45, 5.605193857299268e-45, -6.287724230169545e-10, -8.912930948845599e-10, 3.168631745875672e-10, 1.0453324872372605e-09, -1.0269934902495947e-09, -1.0185204901702605e-09, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 6.800566221265569e-10, 6.460547000442522e-38, -7.425118853099377e-10, -6.881305525396897e-10, 5.759581700459648e-10, -5.605193857299268e-45, 5.605193857299268e-45, -1.024902653162762e-16, 1.0222106494595096e-09, -9.489163899090158e-10, 9.358914754287184e-10, -6.130764784728626e-10, -5.966324101436271e-10, 7.573034976893211e-10, -3.627934863197893e-15, 4.590581248464787e-10, 5.605193857299268e-45, 5.605193857299268e-45, 5.427123750401108e-10, -6.219469383950127e-10], [-6.772221240680665e-06, -7.2814831322631875e-40, 5.605193857299268e-45, 2.1312157514330465e-06, 1.987117502721958e-05, -2.3019674699753523e-06, -7.608912255818723e-06, 7.462160738214152e-06, 6.828518053225707e-07, -5.605193857299268e-45, 3.7412619668941716e-09, -5.605193857299268e-45, -4.893981440545758e-06, 2.7846237315998223e-08, -2.5195611215167446e-06, 4.969734618498478e-06, -4.188875664112857e-06, 3.545358294396434e-30, -5.605193857299268e-45, -8.941076503309053e-14, -7.429335710185114e-06, 6.888863026688341e-06, -6.806923011026811e-06, 4.62848447568831e-06, 4.330502633820288e-06, -5.50434833712643e-06, 1.872585926321335e-05, -1.7101799585361732e-06, 5.605193857299268e-45, 5.605193857299268e-45, 1.2171409480288276e-06, 4.504129265114898e-06], [-1.2939892712893197e-06, -4.741713743582316e-41, 5.605193857299268e-45, -3.0292517294583376e-07, 1.7772330465959385e-05, -4.399258841658593e-07, -1.4569059203495272e-06, 1.4265372101363027e-06, 1.468992422815063e-06, -5.605193857299268e-45, 6.046468881137912e-12, -5.605193857299268e-45, -9.445488444725925e-07, -5.442910566699766e-09, 1.0019379033110454e-06, 1.6587309801252559e-06, -8.015176149456238e-07, 1.715584873034684e-34, -5.605193857299268e-45, -5.88332754367614e-14, -1.4211420875653857e-06, 1.3165265499992529e-06, -1.303176077271928e-06, 1.0125889957635081e-06, 8.277012852886401e-07, -1.0520250270928955e-06, 1.30779653773061e-05, -1.3126523299433757e-06, -5.605193857299268e-45, 5.605193857299268e-45, 2.487503024894977e-06, 8.514804221704253e-07], [7.687113168231008e-09, 5.605193857299268e-45, 5.605193857299268e-45, -2.5314421669975218e-09, -6.18746553993077e-10, 2.6119395535317835e-09, 8.645519855576822e-09, -8.47758929722886e-09, 4.4577243372284636e-14, 5.605193857299268e-45, 1.8362561471363392e-11, 5.605193857299268e-45, 5.626078269926893e-09, 3.6527864192344263e-35, 4.9154236236859106e-09, 6.193001667043063e-11, 4.757428229140714e-09, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 8.440911081208924e-09, -7.827784642699953e-09, 7.734219487076643e-09, -5.062157804047729e-09, -4.915088780421684e-09, 6.249377459965899e-09, 5.175086427470249e-28, 3.802815840003859e-09, 5.605193857299268e-45, 5.605193857299268e-45, -1.4067187692479166e-10, -5.125528446114913e-09], [-4.073529908055207e-06, -3.072991480325751e-40, 5.605193857299268e-45, 2.345492475797073e-06, 1.0748580280051101e-05, -1.3831042906531366e-06, -4.585712304105982e-06, 4.495556368055986e-06, 2.193911086578737e-06, -5.605193857299268e-45, -1.1426235513312122e-09, -5.605193857299268e-45, -2.9854331842216197e-06, -6.025586279934103e-12, -2.2613469354837434e-06, 3.322116981507861e-06, -2.5232750431314344e-06, 1.2950502137020478e-30, 5.605193857299268e-45, -9.374646241580575e-14, -4.473174158192705e-06, 4.148440893914085e-06, -4.100159912923118e-06, 2.67970153799979e-06, 2.6038421765406383e-06, -3.3109524792962475e-06, 5.8434488892089576e-06, -3.930107084215706e-07, 5.605193857299268e-45, 5.605193857299268e-45, -2.415967628621729e-06, 2.7166263407707447e-06], [8.972831437858986e-07, -8.604995518833334e-40, 5.605193857299268e-45, -5.661158411385259e-06, 3.0321227313834243e-05, 3.0541610840373323e-07, 1.0057226518256357e-06, -9.878367563942447e-07, 3.292815335953492e-07, -5.605193857299268e-45, 1.3578564050931163e-08, -5.605193857299268e-45, 6.589710892512812e-07, -2.4775437257318345e-09, 2.797922661557095e-06, -3.6061547348253953e-07, 5.537156084756134e-07, 7.3900268848907674e-31, -5.605193857299268e-45, 2.2989550259137903e-13, 9.834984666667879e-07, -9.124146345129702e-07, 9.006091659102822e-07, -3.7595043522742344e-07, -5.750636091761407e-07, 7.291324664038257e-07, 2.289284748258069e-05, 2.342755578865763e-06, 5.605193857299268e-45, 5.605193857299268e-45, 6.02741374677862e-06, -6.137314585430431e-07], [-7.544112122559454e-06, 3.587324068671532e-43, 5.605193857299268e-45, 5.2842087825411e-06, 9.078692528419197e-06, -2.562664349170518e-06, -8.4848570622853e-06, 8.319027074321639e-06, 2.441737024128088e-06, -5.605193857299268e-45, 1.1371810437754704e-10, -5.605193857299268e-45, -5.532742761715781e-06, 6.184555534360925e-09, -5.164517460798379e-06, 5.6942708397400565e-06, -4.670712769438978e-06, 1.2681912022207873e-30, 5.605193857299268e-45, -3.927688523811673e-13, -8.279129360744264e-06, 7.676649147470016e-06, -7.587297659483738e-06, 4.955692020303104e-06, 4.8229621825157665e-06, -6.131645932327956e-06, 2.507438921384164e-06, -2.502686584193725e-06, 5.605193857299268e-45, 5.605193857299268e-45, -3.3970409276662394e-06, 5.027196493756492e-06], [1.261343527403369e-07, -9.485809694553984e-41, 5.605193857299268e-45, -2.3499146095673495e-07, -6.800474352530728e-07, 4.2821397983061615e-08, 1.4255260794016067e-07, -1.4012061910761986e-07, -1.2878435882157646e-06, -5.605193857299268e-45, -2.0495208308268786e-10, -5.605193857299268e-45, 1.3167334600439062e-07, 1.9233709735999582e-08, 6.934171778993914e-07, -1.3062037851341302e-07, 7.819971870048903e-08, 5.605193857299268e-45, -5.605193857299268e-45, -1.2878066583905728e-16, 1.3935596143710427e-07, -1.297756853091414e-07, 1.2766696499966201e-07, -8.266221129815676e-08, -8.115608807202079e-08, 1.0268109917888069e-07, 1.7601407762413146e-06, -1.8659522993402788e-07, 5.605193857299268e-45, -5.605193857299268e-45, 2.518123096706404e-07, -8.433602260993212e-08], [-5.785272605862701e-06, -7.379237713134487e-41, 5.605193857299268e-45, 1.7417260096408427e-06, 3.5117291190545075e-06, -1.965577212104108e-06, -6.5039662331400905e-06, 6.375947123160586e-06, 2.019913608819479e-06, -5.605193857299268e-45, -7.641125232549228e-11, -5.605193857299268e-45, -4.174678906565532e-06, 3.8001999769221584e-08, -2.524760475353105e-06, 3.911335170414532e-06, -3.5807720450975467e-06, 8.951109243658483e-31, -5.605193857299268e-45, 2.8028426103763205e-15, -6.347420821839478e-06, 5.884661732125096e-06, -5.8167693168798e-06, 3.827206455753185e-06, 3.698331056511961e-06, -4.702220394392498e-06, 3.040433512069285e-06, -2.6610202894516988e-06, 5.605193857299268e-45, 5.605193857299268e-45, -1.6015964092730428e-06, 3.852812824334251e-06], [1.7931567981577246e-06, -4.905973949570471e-40, 5.605193857299268e-45, -3.236741576984059e-07, 4.945313321513822e-06, 6.089192652325437e-07, 2.0173806660750415e-06, -1.9755200355575653e-06, 1.268575147150841e-07, 5.605193857299268e-45, -2.0203247408367986e-10, -5.605193857299268e-45, 1.3160891967345378e-06, -4.122486352287069e-09, 1.359006773782312e-06, -1.2016143955406733e-06, 1.1108063517895062e-06, 1.166699019970791e-30, -5.605193857299268e-45, -4.7166609539513876e-14, 1.9667043034132803e-06, -1.8217390334029915e-06, 1.803262421162799e-06, -1.213678501699178e-06, -1.1454127388788038e-06, 1.4571561450793524e-06, 7.978050234669354e-06, 2.623864077122562e-07, 5.605193857299268e-45, 5.605193857299268e-45, 1.6504322957189288e-06, -1.1980514500464778e-06], [6.957045115996152e-06, -1.9274580117094994e-40, 5.605193857299268e-45, -3.5087891774310265e-06, 1.905816316138953e-05, 2.364782858421677e-06, 7.818565791239962e-06, -7.663813448743895e-06, -9.494563073531026e-07, -5.605193857299268e-45, 6.670318519752527e-09, -5.605193857299268e-45, 5.090108061267529e-06, 1.617999623171329e-10, 6.299028427747544e-06, -4.176766651653452e-06, 4.30440786658437e-06, 2.1571380222900196e-30, -5.605193857299268e-45, 2.5716112724526174e-13, 7.63199568609707e-06, -7.073896085785236e-06, 6.993957867962308e-06, -4.561298283078941e-06, -4.447679202712607e-06, 5.65464415558381e-06, 2.267624768137466e-05, 4.687131422542734e-06, 5.605193857299268e-45, 5.605193857299268e-45, 5.888376108487137e-06, -4.639063263311982e-06], [1.6141873970809684e-07, -1.9734906662625696e-40, 5.605193857299268e-45, -4.2283673451493087e-07, -7.340699994529132e-07, 5.4982265851322154e-08, 1.807513285712048e-07, -1.778978457878111e-07, -2.765614794952853e-07, -5.605193857299268e-45, 6.870659596813766e-11, -5.605193857299268e-45, 1.1760553775275184e-07, -7.012886179677155e-25, 1.0181108223150659e-07, -2.3767029233567882e-07, 9.942235124071885e-08, 1.2339951311598863e-30, 5.605193857299268e-45, 1.7200250331781453e-35, 1.7703118260214978e-07, -1.6451554074592423e-07, 1.619713714262616e-07, -1.1097094443357491e-07, -1.0357774726799107e-07, 1.3116456898387696e-07, -1.0101675798068754e-06, 7.926037426386756e-08, -5.605193857299268e-45, -4.203895392974451e-45, 3.347853692048375e-07, -1.0928587812486512e-07], [-5.7262397490376316e-08, 1.8637269575520067e-43, 5.605193857299268e-45, -1.1834376323349716e-07, 4.917004616800114e-07, -1.9469442946729032e-08, -6.397876006758452e-08, 6.311649514145756e-08, 1.0017988927302213e-07, 0.0, 7.0626153814146164e-09, -5.605193857299268e-45, -4.1622683966124896e-08, -5.605193857299268e-45, -3.5845456380911855e-08, 2.6155674959227326e-07, -3.525853031760562e-08, -6.961650770765691e-42, -5.605193857299268e-45, 5.605193857299268e-45, -6.260233220700684e-08, 5.822219861784106e-08, -5.724019302988381e-08, 3.534288595119506e-08, 3.6629007382771306e-08, -4.648153151265433e-08, -2.1443018027866856e-08, -2.8070086699472085e-08, -5.605193857299268e-45, 5.605193857299268e-45, 1.2100426260985842e-07, 3.79739262257317e-08], [-5.214744305703789e-06, -9.892900911424987e-40, 5.605193857299268e-45, -9.745210718392627e-07, 3.0892540962668136e-05, -1.7726190435496392e-06, -5.861081262992229e-06, 5.744614554714644e-06, 2.309058345417725e-06, -5.605193857299268e-45, 7.40312611213767e-09, -5.605193857299268e-45, -3.793477389990585e-06, 8.697331743690029e-09, -9.510403060630779e-07, 4.0665017877472565e-06, -3.2266707421513274e-06, 2.0891827879085313e-30, -5.605193857299268e-45, 4.4390790414176873e-13, -5.721105480915867e-06, 5.302699719322845e-06, -5.242846782493871e-06, 3.795700195041718e-06, 3.333221229695482e-06, -4.23869369114982e-06, 2.3492397303925827e-05, -2.061803343167412e-06, 5.605193857299268e-45, 5.605193857299268e-45, 5.117217369843274e-06, 3.4551433145679766e-06], [1.1426720902818488e-06, -5.605193857299268e-45, 5.605193857299268e-45, -7.717221706116106e-07, 2.1930634375166846e-07, 3.8782735600761953e-07, 1.2849509403167758e-06, -1.2590161304615322e-06, -2.1966189933664282e-07, 5.605193857299268e-45, -4.067239099225621e-14, -5.605193857299268e-45, 8.363859933524509e-07, -7.316936884365439e-16, 1.810805201785115e-06, -9.610964752937434e-07, 7.076419024087954e-07, 1.6847900912044675e-31, -5.605193857299268e-45, -1.213435048039277e-16, 1.2524673138614162e-06, -1.16039780095889e-06, 1.1482280797281419e-06, -7.524641887357575e-07, -7.29985856651183e-07, 9.282971973334497e-07, 2.7112610041513108e-06, -4.2062573868406616e-08, 5.605193857299268e-45, -5.605193857299268e-45, 6.112192636464897e-07, -7.612186436745105e-07], [2.2202959470973838e-09, 5.605193857299268e-45, 5.605193857299268e-45, -2.1535018213114654e-10, -2.1361890034654607e-09, 7.54099893640614e-10, 2.5011792637030794e-09, -2.448184766024042e-09, -1.3947324406515804e-09, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 1.628823520505307e-09, -1.813147661211976e-36, 1.427646889595735e-09, -1.6524995816169508e-09, 1.3768929330026936e-09, -5.605193857299268e-45, 5.605193857299268e-45, 5.605193857299268e-45, 2.43893416573826e-09, -2.259246345559518e-09, 2.2362809382059368e-09, -1.462713394850823e-09, -1.4185100871699774e-09, 1.8052710437643782e-09, -2.2725078763219386e-10, 1.101004620807089e-09, 5.605193857299268e-45, 5.605193857299268e-45, 1.606598326597819e-10, -1.4811171178408244e-09], [-6.688196663162671e-09, -6.034425589906603e-40, -5.605193857299268e-45, -3.7774811971758027e-06, 2.5492150598438457e-05, -1.1746124073397368e-09, -1.3801582099404186e-08, 1.1476913641672581e-08, 5.672264364875446e-07, -5.605193857299268e-45, 1.8674647606076178e-08, -5.605193857299268e-45, -2.6091584004461765e-08, -1.1344006622948655e-08, 3.0048420285311295e-06, -2.150795808120165e-08, -6.890786607982591e-09, 5.105816650804224e-34, -5.605193857299268e-45, -2.1579745900634503e-16, -9.970335668185726e-09, 9.247060006600805e-09, -1.0437588571221568e-08, 9.79164269665489e-08, 2.9604052542708814e-09, -5.6627413869136944e-09, 1.2272172170924023e-05, 1.3962693401481374e-06, -5.605193857299268e-45, 5.605193857299268e-45, 2.9485131562978495e-06, -1.9217623048461974e-09]], [[-4.983154212823138e-06], [8.150003716556316e-39], [5.605193857299268e-45], [3.13720647682203e-06], [-6.241913069970906e-06], [-1.8547357285569888e-06], [1.0914977792708669e-06], [-4.8264910219586454e-06], [-1.5533281839452684e-05], [5.605193857299268e-45], [-2.0553843071979827e-09], [-5.605193857299268e-45], [3.885491423716303e-06], [1.8353970787643448e-08], [2.0368019249872304e-05], [-1.4427153473661747e-05], [3.0471996979031246e-06], [7.647308273850722e-31], [5.605193857299268e-45], [1.5019042943253459e-16], [6.045410373189952e-06], [-7.041373464744538e-06], [3.5584193938120734e-06], [-1.0758581083791796e-06], [4.540085228654789e-06], [-2.7655014491756447e-06], [-9.199125088343862e-07], [1.4162101251713466e-05], [-5.605193857299268e-45], [-5.605193857299268e-45], [1.842546771513298e-05], [-8.802302545518614e-06]]], "v_w": [[[2.7437519270478994e-11, 4.5267697146300634e-08, 5.275141434779584e-10, 1.0830670804651277e-09, 1.2629321588519815e-07, 3.4899354517392567e-09, 4.377230311547464e-08, 7.82669207222142e-11, 8.254503569560256e-08, 9.962642266714283e-09, 1.0609650047399555e-08, 2.834845552746046e-11, 2.3661822501352958e-11, 9.040139747895637e-10, 1.0196498159698031e-11, 2.6692991567101032e-11, 1.8484858088640976e-08, 1.0547237389024744e-10, 2.4813110211809562e-14, 6.50735021423543e-09, 9.150671331781268e-08, 1.7592643786201734e-08, 5.926520940668922e-10, 5.466711458512741e-11, 2.7267226254679144e-09, 2.8336272564488674e-11, 2.5450513918556794e-10, 9.49245998645154e-13, 2.7685380030173512e-11, 6.123564766369327e-09, 2.1991375831476034e-08, 1.4056097086267982e-07, 1.2180954911400477e-08, 5.3987738724003975e-09, 4.813341392129189e-10, 9.366248228392937e-12, 1.8326163069709578e-12, 4.2071096498057237e-13, 4.097491679289078e-09, 7.510890576156726e-09, 5.414124260028075e-08, 5.206493902676357e-09, 3.340781817851024e-11, 2.3569798202061065e-07, 1.2604507715341384e-11, 3.340759491265999e-08, 6.142202718661949e-11, 2.151689937335277e-11, 1.0652621146300945e-10, 1.2281711203598888e-09, 3.396208282050589e-13, 1.0866651933838511e-07, 3.687095420645825e-11, 3.163057442634454e-07, 8.860644995500877e-10, 2.403394983030438e-10, 4.56304938278862e-10, 5.380779502517363e-11, 1.3023079281637706e-09, 5.384803714036934e-10, 1.1241067972289631e-11, 1.3709748714063608e-07, 5.7677779219389436e-11, 3.318517127759435e-10], [3.097121864525931e-11, 4.838187095401736e-08, 6.031483645863034e-10, 1.1907730357307855e-09, 1.3191350944907754e-07, 3.962615124919466e-09, 4.44466543569888e-08, 8.496994774453981e-11, 8.70167440325531e-08, 1.0466655098184674e-08, 1.0771761260741641e-08, 3.097374787208729e-11, 2.561052585281498e-11, 1.102291480314932e-09, 1.0892679119800519e-11, 2.918033523147123e-11, 1.9910743276341236e-08, 1.341696059808939e-10, 1.0570271532519236e-14, 6.639569782862509e-09, 9.294087277567087e-08, 1.852788500400493e-08, 7.809182189788544e-10, 6.791493062374698e-11, 3.064337672498141e-09, 3.276219920356205e-11, 3.4989239283689244e-10, 1.2402700394487098e-12, 3.933170802938868e-11, 7.265692048008532e-09, 2.2138099353696816e-08, 1.4450625940298778e-07, 1.3947657251378587e-08, 5.571361150202847e-09, 5.741361275291013e-10, 1.282757667447898e-11, 2.6250345213502113e-12, 4.339819248324467e-13, 4.122695074215699e-09, 7.776780996948673e-09, 5.5275449994951487e-08, 5.441258110749914e-09, 4.080730198197102e-11, 2.429810876947158e-07, 1.6647874051534117e-11, 3.411395610442014e-08, 8.490649155978858e-11, 3.856950869796094e-11, 1.242135005963263e-10, 1.2945423621957275e-09, 7.805480437342305e-13, 1.1235741936843624e-07, 4.0341393420240124e-11, 3.2638968150422443e-07, 1.0232261704601342e-09, 2.8830107745569933e-10, 5.616208054171068e-10, 5.950399895038316e-11, 1.3393725017962765e-09, 5.561086591221454e-10, 1.2302854915380301e-11, 1.4063839159916824e-07, 6.149104836428165e-11, 3.3458774639782973e-10], [1.0797807092899347e-11, 1.1574618596910113e-08, 2.45727965753062e-10, 2.930063414119388e-10, 2.1534836136538615e-08, 1.2553522665825767e-09, 4.0621497277015806e-09, 3.940205106633954e-11, 1.6137843061869717e-08, 1.8470568408091026e-09, 6.873570601584333e-10, 1.008592254853058e-11, 1.0310772201316265e-11, 4.5133360937477107e-10, 3.6374709667941207e-12, 1.0463784352876537e-11, 4.843814682686798e-09, 7.954372577279045e-11, 4.4974562810919105e-14, 1.0512256620742733e-09, 7.417892078365185e-09, 3.28798765991678e-09, 4.490074145824252e-10, 3.946508397856263e-11, 8.636107939885562e-10, 1.6153460513645967e-11, 2.8268534735254036e-10, 1.2933632029948905e-12, 3.3776682839548045e-11, 3.036347395735106e-09, 1.31671928915722e-09, 1.833874208045927e-08, 5.237892786169596e-09, 6.790902840059232e-10, 2.7889590636931416e-10, 9.962038138855434e-12, 3.3720378919688265e-12, 4.012489125682084e-13, 2.890973849201117e-10, 8.273893237209506e-10, 5.5575783974859405e-09, 8.850298272022883e-10, 2.332536767901683e-11, 3.0268864747995394e-08, 9.635478179226276e-12, 3.7789482654204676e-09, 6.378760714076392e-11, 4.3362275575775655e-11, 4.468724348893893e-11, 3.953720406624228e-10, 7.34022976948967e-13, 1.4050704599810615e-08, 1.6027039070887206e-11, 4.045229928806293e-08, 3.214965516029622e-10, 9.8682825799834e-11, 5.702293637277478e-10, 2.1060226479407973e-11, 2.10070488781966e-10, 9.23071064029557e-11, 5.400150812628901e-12, 1.6280019110581634e-08, 1.0685170630242435e-11, 2.0812724807472982e-11], [1.0797807092899347e-11, 1.1574618596910113e-08, 2.45727965753062e-10, 2.930063414119388e-10, 2.1534836136538615e-08, 1.2553522665825767e-09, 4.0621497277015806e-09, 3.940205106633954e-11, 1.6137843061869717e-08, 1.8470568408091026e-09, 6.873570601584333e-10, 1.008592254853058e-11, 1.0310772201316265e-11, 4.5133360937477107e-10, 3.6374709667941207e-12, 1.0463784352876537e-11, 4.843814682686798e-09, 7.954372577279045e-11, 4.4974562810919105e-14, 1.0512256620742733e-09, 7.417892078365185e-09, 3.28798765991678e-09, 4.490074145824252e-10, 3.946508397856263e-11, 8.636107939885562e-10, 1.6153460513645967e-11, 2.8268534735254036e-10, 1.2933632029948905e-12, 3.3776682839548045e-11, 3.036347395735106e-09, 1.31671928915722e-09, 1.833874208045927e-08, 5.237892786169596e-09, 6.790902840059232e-10, 2.7889590636931416e-10, 9.962038138855434e-12, 3.3720378919688265e-12, 4.012489125682084e-13, 2.890973849201117e-10, 8.273893237209506e-10, 5.5575783974859405e-09, 8.850298272022883e-10, 2.332536767901683e-11, 3.0268864747995394e-08, 9.635478179226276e-12, 3.7789482654204676e-09, 6.378760714076392e-11, 4.3362275575775655e-11, 4.468724348893893e-11, 3.953720406624228e-10, 7.34022976948967e-13, 1.4050704599810615e-08, 1.6027039070887206e-11, 4.045229928806293e-08, 3.214965516029622e-10, 9.8682825799834e-11, 5.702293637277478e-10, 2.1060226479407973e-11, 2.10070488781966e-10, 9.23071064029557e-11, 5.400150812628901e-12, 1.6280019110581634e-08, 1.0685170630242435e-11, 2.0812724807472982e-11], [2.9938281020935875e-11, 4.724822133539419e-08, 5.746837450359976e-10, 1.1616503314826332e-09, 1.3259881370686344e-07, 3.7519485296400035e-09, 4.4545892308178736e-08, 8.045783483900948e-11, 8.719011646007857e-08, 1.0526667537646972e-08, 1.0770291325457038e-08, 2.9956783581530644e-11, 2.3879677749083505e-11, 1.0393000904329597e-09, 1.0550487566929334e-11, 2.8112024860749152e-11, 1.9727549371850728e-08, 1.0718421289412916e-10, 5.002131047153642e-15, 6.581562850271894e-09, 9.239825971008031e-08, 1.8330903017726996e-08, 7.091776610401723e-10, 5.90135509903611e-11, 3.0393494387936926e-09, 2.9716330091078547e-11, 2.522407838156937e-10, 8.543423672506545e-13, 2.5092124558701023e-11, 6.958711828985997e-09, 2.2165050239664197e-08, 1.4384033875103341e-07, 1.3460601522297111e-08, 5.58974644349064e-09, 5.197602348516739e-10, 1.0706651711045456e-11, 9.031899035095992e-13, 2.792347787456545e-13, 4.108982931683158e-09, 7.73982655744021e-09, 5.515219214657918e-08, 5.505123468196871e-09, 3.483792421210552e-11, 2.417466475890251e-07, 1.5510899856185922e-11, 3.4125875458812516e-08, 6.511659961239147e-11, 1.2046093289530546e-11, 1.2009949978963874e-10, 1.235302526936266e-09, 7.474342867720696e-13, 1.1281986900257834e-07, 3.7184554046998386e-11, 3.227982290354703e-07, 1.0178961007412113e-09, 2.8302685195491506e-10, 3.160585126948945e-10, 5.6510896656591925e-11, 1.349300671193987e-09, 5.501780142580515e-10, 1.12251189246515e-11, 1.3912794827319885e-07, 5.832510169279104e-11, 3.332113751586263e-10], [1.140755198636434e-11, 1.9421444008571598e-08, 2.7285548820366046e-10, 5.735923958027911e-10, 5.1150330193650007e-08, 1.1255600895765383e-09, 1.3885810723479608e-08, 3.828980535414139e-11, 4.086403748715384e-08, 4.368541972610274e-09, 8.865407297165007e-10, 1.1925674857360402e-11, 1.0397988893517951e-11, 3.5133571052448076e-10, 4.6999613402542995e-12, 1.192062247523662e-11, 8.087075009655109e-09, 5.469672284541538e-11, 3.801557982660185e-15, 2.142588995113215e-09, 1.3773972185049388e-08, 5.045695417038587e-09, 2.8870283941273556e-10, 3.1286872398395005e-11, 1.276729610921734e-09, 1.3465444904936508e-11, 1.5602029390660022e-10, 4.5287021745513134e-13, 1.1840432280474378e-11, 2.4060928804914283e-09, 3.1741669292983943e-09, 4.11583229720236e-08, 5.143586001565836e-09, 8.986815180911378e-10, 2.265513193711044e-10, 4.975014324115623e-12, 9.8436525857587e-13, 2.2495137805451926e-13, 5.561934246500755e-10, 1.1257053067481593e-09, 1.4345231669210534e-08, 2.1383048665057913e-09, 1.403490431511889e-11, 5.61061490600423e-08, 5.935545457913527e-12, 1.2246745839661344e-08, 3.3425071738202305e-11, 1.5308084660992094e-11, 4.4741554211524814e-11, 6.945237718269937e-10, 2.887575974771378e-13, 3.31107159468047e-08, 1.6169501501628325e-11, 7.281038705286846e-08, 4.1479966683688474e-10, 1.0317564858031147e-10, 1.5406434461517904e-10, 2.2328357912604346e-11, 5.155929017064409e-10, 1.9968893205657423e-10, 4.983086859811081e-12, 2.6316744339283105e-08, 3.5646856560295204e-12, 4.919092910782297e-11], [6.0898014062060746e-12, 1.0775592862444228e-08, 1.0676358408456821e-10, 3.51127654729666e-10, 3.87299685655762e-08, 6.886483605583749e-10, 1.2941829830026563e-08, 1.6120276988274007e-11, 2.3756742351110915e-08, 2.921496822239078e-09, 3.5235083739593165e-09, 6.400074914481024e-12, 5.795827793392272e-12, 1.6053779139379998e-10, 2.2151048356677805e-12, 6.4853946865617296e-12, 4.653763152617785e-09, 2.2396199478302847e-11, 2.9388631315133563e-16, 1.7948196262551619e-09, 3.461578046426439e-08, 6.249872619434882e-09, 9.833594355468378e-11, 9.681684273732394e-12, 5.725243612531017e-10, 5.714310968851777e-12, 4.127838001966033e-11, 9.197284996315461e-14, 4.092162372848485e-12, 1.3142213983741158e-09, 6.647107309021294e-09, 4.9404242474793136e-08, 2.401737031476614e-09, 2.0614177032030057e-09, 1.03075166457689e-10, 1.332251583358035e-12, 6.529816970338512e-14, 4.1815780438964056e-14, 1.174340735765611e-09, 2.131698151330852e-09, 2.044167146664222e-08, 1.5564669553214117e-09, 5.803771525869639e-12, 8.683684882271336e-08, 1.860191905025954e-12, 1.0009501671959242e-08, 1.1134000839352343e-11, 6.172945184526601e-13, 2.1900843985567242e-11, 2.915980512607774e-10, 9.582314325698449e-14, 4.081470450501001e-08, 8.013743314772004e-12, 1.2601930166056263e-07, 1.855668119166154e-10, 4.798477587497629e-11, 4.2574159475616824e-11, 1.1446149583704823e-11, 4.404639708521785e-10, 1.4591806929420414e-10, 2.315269287053723e-12, 5.3928918219980915e-08, 1.6536525621058118e-11, 1.6358231436086612e-10], [9.68032338316549e-12, 1.3366960871508127e-08, 1.7541833263745588e-10, 4.650309581855083e-10, 5.083791165816365e-08, 1.3011268729101744e-09, 2.178799896057626e-08, 2.2344593189616013e-11, 3.09814005561293e-08, 4.254593566344056e-09, 4.96648766556973e-09, 9.44725287582715e-12, 7.786217851024624e-12, 3.230289646882767e-10, 3.2829214607205115e-12, 8.566048044500452e-12, 6.386546846925967e-09, 3.060404013544016e-11, 3.5363845247037733e-16, 2.178966118648873e-09, 5.822257165277733e-08, 9.06524899590977e-09, 1.8511950305999392e-10, 1.4841036385937478e-11, 9.4751173573826e-10, 8.503576315321837e-12, 5.80313887221795e-11, 1.8177392100207634e-13, 7.378746919028956e-12, 2.2447645964263074e-09, 1.33173392313779e-08, 7.86779779105018e-08, 4.233831507605146e-09, 2.8092803638912756e-09, 1.7207818503450767e-10, 2.2933801125529785e-12, 1.4466500100705076e-13, 1.0777487301043276e-13, 2.5612589826806698e-09, 3.8357383935760936e-09, 3.247259527938695e-08, 2.275503563353709e-09, 9.855192183161332e-12, 1.4345391718961764e-07, 4.769571890217428e-12, 1.4453664043401204e-08, 1.533600156589099e-11, 1.0733295762593853e-12, 3.6131507508141425e-11, 3.25546700707946e-10, 1.9682169847927422e-13, 6.14788504549324e-08, 1.2020465352258203e-11, 1.8893005915288086e-07, 3.4230140943947163e-10, 9.091841168817894e-11, 7.232884430274922e-11, 1.7223261011833912e-11, 4.928213948041105e-10, 2.1032459107672707e-10, 3.405474470127845e-12, 8.822306796218982e-08, 1.8898474798967335e-11, 1.9577017784655482e-10], [6.141794711700399e-11, 8.637594528515535e-10, 5.176051143251925e-09, 3.1253555299315394e-09, 3.771260992380121e-08, 8.452761823818378e-10, 3.272941739851376e-08, 6.028507554267648e-11, 1.4004488235741519e-08, 2.8077133951143196e-09, 1.272575794741826e-10, 4.0445320703685894e-11, 3.3418039169230696e-11, 9.041765114403688e-10, 2.095077236696774e-11, 8.824284358777135e-11, 8.973056964123316e-09, 1.5886570947643008e-09, 3.8135951678736155e-15, 3.704519135894202e-09, 3.590621577842512e-09, 4.968400357796554e-09, 2.6227853222593467e-09, 2.838493051715574e-10, 1.7891426118410436e-09, 6.371148747463806e-11, 1.210281119767842e-08, 2.343192480325218e-11, 1.8131783574570903e-10, 2.5799222758138285e-09, 1.3659329743676007e-11, 3.0458306099490073e-08, 1.2133756221999192e-08, 1.629788748402916e-09, 1.6463412855216575e-09, 3.0615457391469647e-10, 6.642825733926827e-10, 5.791500363051122e-14, 7.933223522549326e-11, 1.559664841721542e-09, 1.2909571189823055e-08, 1.3287935196615308e-09, 4.770854267199809e-10, 2.355989003888226e-08, 3.3159447410113785e-11, 1.75801808666165e-08, 1.7256166495727143e-09, 4.766405586192901e-12, 1.73868183739323e-10, 8.04904320972355e-09, 5.267336588600513e-13, 9.206162054908873e-09, 1.048773776157752e-10, 2.3385570813161394e-08, 2.2092288068376043e-11, 3.095768086325279e-10, 2.904253781910171e-10, 5.119908663697714e-11, 2.1933999061474196e-10, 2.6703655953141947e-10, 1.4255795328932397e-11, 5.855128826226519e-09, 1.3186939040732426e-10, 2.3596466447450837e-10], [2.953309038294938e-12, 1.3990276992448258e-10, 1.913799396735527e-10, 4.659183108768339e-11, 2.0334027794888243e-09, 6.008252922962143e-11, 4.5491757583171477e-10, 3.6658336956263415e-12, 1.444271813255682e-09, 3.067108789167605e-10, 9.736217908284939e-12, 2.567251316046293e-12, 1.3739413252944477e-12, 1.746499472821128e-11, 4.1623310158799e-13, 2.685485297679313e-12, 1.9703755294031566e-10, 6.091606385982828e-11, 9.29204142863032e-16, 1.6805522251583938e-10, 1.2939831151026482e-10, 3.802243520034665e-10, 8.187756722621842e-11, 9.014777639648752e-12, 1.3742448845555089e-10, 1.2597799539659782e-11, 2.314187452778782e-10, 5.139824113195579e-13, 7.046344410732708e-12, 2.070488086536315e-10, 9.162195741679868e-13, 1.5470542624740347e-09, 7.227872744763886e-10, 2.4785243302183346e-11, 8.022298797483174e-11, 9.528226298238796e-12, 8.643585847067925e-12, 2.924307135012587e-15, 4.219572607988553e-12, 3.0888271107532006e-11, 2.8881630420585225e-10, 1.4180435471689012e-11, 1.1133052812972721e-11, 3.687984639899611e-10, 1.8728059467815195e-12, 6.253514373000257e-10, 1.886740243206564e-11, 2.363849066033645e-14, 1.3556136248260575e-11, 1.2763774759338986e-10, 3.937167974456257e-13, 2.0461742022970242e-10, 2.2612179056274995e-12, 5.482331810746643e-10, 4.2860437421410325e-12, 2.8158508511011426e-11, 4.0488598584964564e-11, 3.719035496230205e-12, 1.884272078644944e-11, 2.3130381290870083e-11, 3.076732662046777e-13, 3.496032074945532e-10, 6.864727427995099e-13, 4.446157417931085e-12], [4.202407952874632e-12, 7.914377486706314e-10, 5.380875259253237e-11, 2.630608057774264e-11, 3.4747660304645933e-09, 7.181233385722408e-11, 6.44239772640276e-10, 7.859370272644828e-12, 2.9839637427642174e-09, 6.760586535037305e-10, 7.422759629172049e-11, 3.0086098543047335e-12, 2.383736871086617e-12, 4.839959336089272e-11, 7.037277119543994e-13, 2.734397560807955e-12, 6.002803809579405e-10, 3.091487829620654e-11, 2.703292268041533e-14, 4.0878306295510924e-10, 1.139840000163872e-09, 4.766152472690521e-10, 1.9054231803483646e-10, 6.102831781595874e-12, 2.3186939868136136e-10, 4.707241974682974e-12, 9.940338829839135e-11, 6.242780814860738e-13, 1.6701310473488107e-11, 2.449922487102185e-10, 4.783621762594059e-11, 3.299485351604403e-09, 7.617443342766705e-10, 7.221171577365126e-11, 1.6195604579660738e-10, 3.5253141551783163e-12, 2.164659510667244e-12, 4.302095585697642e-14, 9.435667525092839e-12, 1.1004275962678278e-10, 6.665630825075652e-10, 3.804122988837477e-11, 7.868883496187085e-12, 1.9361974246123737e-09, 1.4186904689211799e-12, 9.475499274103072e-10, 1.7936591448219907e-11, 6.557972345505245e-14, 1.1901735673391922e-11, 5.4401396581971184e-11, 9.339976844236278e-14, 1.2173163588258262e-09, 2.3102466120694665e-12, 4.3591268372722425e-09, 2.417666934706464e-11, 4.438676856621804e-11, 6.225679000104734e-11, 5.518759928213601e-12, 4.764833666515145e-11, 2.2224593693165318e-11, 7.48512146361846e-13, 1.7110892702731917e-09, 3.148220399651347e-12, 2.3549367750980155e-12], [5.948035813885255e-11, 3.975497264718797e-08, 1.923052384000812e-09, 4.813318188467974e-09, 4.920090113103015e-09, 6.706628141728288e-09, 2.7045141681725227e-09, 1.439989516516249e-10, 6.713569433713928e-08, 7.424241776909923e-10, 1.2959848472160473e-10, 6.151512632612821e-11, 1.1922386689011688e-11, 6.204534802600747e-11, 2.0500618563845663e-11, 4.4857024344979735e-11, 1.009685224317991e-08, 2.6632911431789807e-09, 4.476910480516721e-15, 2.819920297270073e-09, 5.633769006863076e-10, 6.158971999070673e-09, 8.275014451442075e-09, 1.2122709502904172e-09, 8.05597366593247e-09, 2.27269841834854e-10, 1.1320926418534327e-08, 1.8047393007120105e-12, 8.292335568205189e-11, 2.10984540949255e-09, 1.2742246369157328e-08, 6.996791768187904e-08, 1.3034023638169856e-08, 3.325869302184259e-10, 1.397175708461873e-09, 1.6488554965832236e-10, 1.3663063735958048e-11, 1.271146367351028e-15, 1.3868692305685215e-10, 2.916007157960365e-10, 2.7542405689473526e-08, 1.4670284431694824e-10, 1.524278370190757e-09, 7.678628843876822e-10, 1.0192546806564451e-10, 9.849957294250089e-09, 2.714554137028813e-09, 6.151380620156299e-12, 3.4479358257399895e-10, 2.9646103349989517e-09, 1.6055104633456475e-14, 3.65919383682467e-08, 1.5889695115234304e-10, 8.696915898553925e-08, 5.1542714540886436e-11, 7.815242897279973e-11, 1.2976951957455185e-08, 2.925177808310586e-11, 2.6440583056341893e-10, 5.973030403616519e-10, 3.101256057513879e-11, 3.944781923337359e-08, 2.390146969233342e-10, 3.287619482206239e-11], [2.025940396346848e-12, 2.4456967007147057e-10, 3.441931115122365e-11, 4.7656181084709814e-11, 4.796326669165296e-10, 1.016169787204646e-10, 4.43470121735956e-11, 3.1750060480034703e-12, 1.2496620405144654e-09, 1.0978319642251932e-10, 9.102932817250942e-12, 1.9907506632749206e-12, 1.2441380391192691e-12, 3.012053930925851e-12, 3.0303800376170476e-13, 1.4542310498161237e-12, 3.94019816774005e-10, 3.93717038138508e-11, 8.524158416341014e-16, 8.928910388839029e-11, 8.047345428918717e-11, 2.8840838051102935e-10, 9.352828927999823e-11, 1.3514399668790311e-11, 4.703508069137108e-11, 6.460914268868745e-12, 1.9800643069611823e-10, 1.0044452791214964e-13, 6.278526309966281e-12, 1.6464667129678645e-10, 2.2630132143208748e-11, 1.290562878786261e-09, 5.867812902238256e-10, 6.816854372648784e-12, 7.895398917989738e-11, 1.1288264593900532e-11, 2.6167504036007927e-13, 5.000550060157592e-16, 4.281366927649799e-12, 2.0509639125920742e-11, 2.0393907396165645e-10, 1.7439638275162928e-11, 1.8587117955881638e-11, 7.697166515274745e-11, 1.835357170063001e-12, 6.646665995369005e-10, 4.135948528105615e-11, 2.238198097996233e-13, 8.892482236677601e-12, 4.8448609707429924e-11, 7.610089587575114e-15, 5.897948796018682e-10, 1.904774732039427e-12, 1.907347835228279e-09, 1.213535435334867e-11, 5.80794483687197e-12, 1.4890806643297338e-10, 2.4996042562175358e-12, 1.3811798926788299e-11, 2.1997180119082138e-11, 4.0277538791190504e-13, 2.902992846109953e-10, 4.795428377307731e-12, 9.032428125756164e-13], [2.5536003433329624e-12, 5.845028350215387e-10, 6.163666799174905e-11, 4.630508129710442e-11, 2.9226099318435672e-09, 7.238183663549336e-11, 2.5335097908474324e-10, 4.4118411181293116e-12, 3.4150464678361914e-09, 3.322170039066208e-10, 5.6944289561489114e-11, 2.4362014142131905e-12, 2.1558583911118756e-12, 1.7511216435228683e-11, 6.028286051763809e-13, 2.1581686091010077e-12, 1.085291856384174e-09, 4.2618544110473167e-11, 2.5388460729363835e-14, 4.076546045173046e-10, 3.0101912629199035e-10, 4.897232064315915e-10, 9.363065184286867e-11, 1.278083628514226e-11, 1.1445999009707108e-10, 4.808550693041758e-12, 2.2748959660479073e-10, 4.0689069409800827e-13, 1.393889344225574e-11, 3.340612786395525e-10, 4.3321499165749344e-11, 3.006620064027743e-09, 7.469612151034255e-10, 4.4567641244164236e-11, 6.101635169342146e-11, 4.571574455797256e-12, 1.6068552738390807e-12, 8.979297170988009e-15, 1.4551461598177884e-11, 9.529051159251622e-11, 6.672025709697493e-10, 1.5099185790568015e-10, 9.516150020760783e-12, 2.368940599239977e-09, 1.4812915434189722e-12, 7.827087866729698e-10, 4.2331055327693434e-11, 1.3248984158040211e-12, 8.783784463672895e-12, 4.590606714205414e-11, 2.8779319964471195e-14, 1.5579846301960742e-09, 2.4239731315905955e-12, 4.769829864414987e-09, 2.325115620871454e-11, 1.2877326809046519e-11, 9.47321179833871e-11, 3.485699142519172e-12, 6.808607150299295e-11, 2.870636540974747e-11, 7.75564779498944e-13, 1.583912001557053e-09, 7.990308067973295e-12, 1.6291548188621108e-12], [7.025173498487192e-11, 1.057046561392383e-09, 2.1725581056397658e-10, 2.90624035254039e-11, 1.0403417682880445e-08, 6.796837398459488e-11, 7.683633729271833e-10, 1.062936110657331e-11, 2.3857704700702698e-09, 1.5233888595034273e-09, 4.60745226693593e-11, 3.2773755931359005e-11, 2.1312965281516938e-11, 2.8172406074666867e-10, 4.44952278147448e-12, 6.32938632061375e-11, 6.120110640495113e-09, 4.4001819549110976e-11, 5.45779128292857e-17, 2.2927610920930874e-09, 7.0857679723701494e-09, 2.4269055654002614e-09, 1.2518205361189416e-09, 1.5119168417232487e-10, 2.2658086518134724e-10, 3.0011645946181886e-11, 1.071077893044503e-09, 1.1642953094692654e-11, 1.095092974634504e-10, 9.649143983825326e-11, 3.8862156223097577e-13, 1.5291243826709433e-08, 5.978235684267474e-10, 2.5946168824564353e-11, 6.02339636501803e-11, 1.0407124467759488e-10, 4.134263677929573e-12, 1.4729896176488705e-14, 5.174205508495788e-11, 3.899851108712937e-09, 3.272438986456905e-10, 7.820951664072595e-10, 3.579748442117392e-10, 7.238644794682614e-09, 1.6755265577761413e-11, 7.93820287281477e-10, 1.009502814675045e-09, 4.224245519351966e-12, 3.419896588141569e-10, 3.1161175861882384e-09, 2.721012000786449e-12, 2.376916663493489e-09, 2.8494841902704238e-11, 2.2457676607245958e-08, 5.986949130898367e-11, 2.441532809260849e-10, 5.922177331862954e-11, 4.6420623421583596e-12, 2.1918279691224285e-10, 3.5859350211442376e-11, 1.664931105309353e-12, 3.728506392519648e-09, 9.680635459918818e-11, 1.7015586856183873e-11], [4.996616727141745e-13, 7.839381921392885e-11, 7.2156308705828565e-12, 3.486322829818894e-13, 3.444683149833594e-10, 4.311800048950598e-12, 7.22687881760109e-12, 5.361625314732887e-13, 9.439937026511913e-11, 1.4592308264504972e-11, 1.45718300707115e-12, 4.4357963482899443e-13, 3.3757989893051787e-13, 1.4380270411951113e-11, 7.259830621863736e-14, 5.497858570312208e-13, 1.275985705984084e-10, 2.38609197504569e-12, 1.4241360777196574e-18, 2.7568934982125093e-11, 1.8747103869287685e-10, 3.0577308046675356e-11, 1.7422020423540907e-11, 1.796973268970714e-12, 1.9879597100425084e-12, 2.3504089299852815e-12, 7.778060313878843e-12, 1.1044236272045316e-12, 4.116055152963982e-12, 9.28494781060607e-12, 5.4609142457594934e-14, 4.5034317941450297e-10, 7.997402046155955e-11, 1.3255820052737732e-12, 5.249521737443752e-12, 1.6032264491677717e-12, 2.1727847927983934e-13, 2.461478538814385e-16, 1.088869879678489e-12, 3.7733951380181097e-11, 5.084504432067982e-12, 7.711620404748931e-12, 3.3029460243250153e-12, 3.0616675861239173e-10, 6.395438107049956e-13, 6.493937332319177e-11, 5.214354122096143e-12, 6.45100021578332e-14, 2.7586982177807418e-12, 5.0984258481712175e-11, 1.4202200613461224e-12, 1.5349607696002465e-10, 5.720269093470454e-13, 5.319180096385878e-10, 8.025502137853913e-12, 4.171175991413145e-12, 1.2156267312213309e-11, 3.1164047037401943e-13, 2.2935804731144538e-12, 3.5990678753233807e-12, 7.978256862670521e-14, 2.269324450576704e-10, 5.488820118901283e-13, 2.2331466645493514e-13], [6.747860191620714e-13, 4.786931406819406e-10, 1.0294528250687218e-11, 7.375364208250801e-12, 6.471378433126063e-10, 3.24791235573052e-11, 4.035221809473022e-11, 4.4369720571257876e-12, 5.234587763247589e-10, 3.460050648773638e-11, 4.935181169979375e-12, 8.597800748265383e-13, 5.260231269663129e-13, 1.3148183063138585e-11, 1.9458837752922564e-13, 7.314107544446891e-13, 1.8377604993347063e-10, 1.374516819807603e-11, 1.0570108928663143e-16, 4.037465153872155e-11, 3.308001927937454e-10, 5.496369678836821e-11, 4.4368630297553224e-11, 4.8954733496142655e-12, 1.549708972259367e-11, 2.0464777875789375e-12, 6.292070336977318e-11, 3.670922615363337e-13, 9.168138470627696e-12, 7.057229106655072e-11, 1.7841707928775707e-12, 6.034553967637635e-10, 1.9549498131432586e-10, 1.3744810845039979e-11, 1.8444351948532223e-11, 1.6759356489398636e-12, 9.462035105087252e-13, 7.621123885778996e-15, 1.0913334472228975e-11, 4.5955728805724405e-11, 4.69489898347053e-11, 9.31947227722496e-12, 4.810488812845293e-12, 5.523333457269075e-10, 6.455044289886691e-13, 1.0812518935754412e-10, 1.490303540296889e-11, 2.4042306773913724e-12, 2.9401921435717737e-12, 1.105469743523102e-10, 4.1058557378667593e-13, 2.3768587098516036e-10, 1.075975463241119e-12, 1.2939567195502377e-09, 8.694039412004972e-12, 4.641220133910773e-12, 4.5809928767015506e-11, 1.2295252706587267e-12, 6.03791929648656e-12, 5.436872306530116e-12, 2.2418021215428463e-13, 5.908384892450158e-10, 2.548121436074524e-12, 3.639640943232242e-13], [1.9800949074832985e-11, 1.0011880213767199e-08, 2.0791189950242206e-11, 6.137465535793751e-12, 3.4717509422854675e-10, 1.5042804502041207e-10, 6.778894334757979e-09, 1.2506870539219506e-11, 3.7021929966130074e-10, 2.7693484658253276e-11, 8.742377481663066e-12, 8.478957987112512e-12, 5.968215071455729e-12, 8.021739938968153e-10, 3.549860926044257e-12, 3.516398283665012e-11, 3.398291870126968e-09, 1.5924690385804574e-11, 2.5669248763246846e-14, 1.333939209091639e-10, 5.859969842703094e-09, 2.8508598259868734e-10, 1.6909379452201279e-10, 1.0080548375202003e-11, 5.2831634900218916e-11, 9.096921133044944e-11, 6.0162266279917276e-09, 6.190987826559802e-12, 2.4434003431661466e-11, 2.4052340674707295e-10, 3.0610010082199324e-09, 6.557505649595896e-09, 1.01587083189969e-09, 1.61615457128228e-10, 1.5587520163506952e-10, 2.217124270634252e-12, 2.616808159050521e-11, 1.1601419796353468e-14, 2.5910870671275177e-11, 8.281977881274827e-11, 2.408442556500745e-09, 6.985780842683198e-10, 1.454296266745203e-10, 3.702347040057674e-10, 9.023972541433167e-12, 4.129549480147432e-11, 2.834591728007041e-10, 1.2100742630138939e-10, 5.612022131729066e-12, 6.696223575630711e-10, 1.7111985439743904e-10, 1.0707778413943103e-10, 3.6132499769969684e-11, 4.27692520288403e-10, 1.8107850288662242e-11, 6.190421873025764e-12, 8.374368559715961e-11, 1.838485440275317e-11, 6.299648736690644e-12, 3.0404775919201654e-11, 1.850233334599327e-11, 9.86351889054049e-10, 1.111740799246419e-12, 3.5018047489510096e-11], [1.4691004489308934e-13, 1.4513826251949524e-10, 2.014755549895053e-12, 5.345876193975363e-13, 3.84541773423841e-11, 1.786555278715518e-11, 6.825730258785967e-11, 3.422286596905383e-13, 3.403826873138449e-11, 3.3590448131337602e-12, 4.923640163113918e-13, 1.6704834130548685e-13, 1.5207621403487415e-13, 8.372993270944207e-12, 4.816163947144424e-14, 3.765697606170071e-13, 5.7774562911561134e-11, 1.102826814244895e-12, 1.3090477036088689e-15, 4.531407367391882e-12, 6.58817098098119e-11, 1.5018774418562586e-11, 7.94343237020545e-12, 8.638458329733589e-13, 2.4746851703255635e-12, 1.2347792059663742e-12, 6.435030286411347e-11, 6.09958183137374e-14, 3.078531895552017e-13, 1.5778938919353003e-11, 3.333719411635627e-11, 8.234049553301759e-11, 2.8347667963002365e-11, 4.585139993379395e-12, 5.74648011467116e-12, 9.051251095197957e-14, 6.509078757759024e-13, 8.523861954809475e-16, 4.952040839022176e-13, 1.876048622007076e-11, 4.1051936156000224e-11, 8.81536597191479e-12, 1.8251108090117096e-12, 1.2534941140618372e-10, 1.5961295056921704e-13, 2.7145618652218984e-12, 2.5616798179223244e-12, 1.3274828285225748e-12, 2.6520154345135993e-13, 1.0652885691631031e-11, 2.192266333744808e-12, 1.751742674527268e-11, 5.138414650371348e-13, 1.637609353677405e-10, 1.3868099377201126e-12, 3.528399089829798e-13, 1.1059781562794413e-11, 3.431804807777633e-13, 3.879202189506492e-13, 1.0237687433911624e-12, 1.8537493588766107e-13, 8.639779863761632e-11, 7.547798107007675e-14, 4.733338287293831e-13], [7.979531206799007e-13, 5.121128521246021e-10, 2.969784834716549e-11, 1.4187254669673077e-11, 6.825056630965776e-10, 7.30311852659149e-11, 1.401388310950935e-10, 3.936438848495261e-12, 6.58526733143816e-10, 6.418196529800468e-11, 1.5924711202486286e-11, 8.348281918188483e-13, 1.0471318907454008e-12, 1.3215581406988974e-11, 2.315457667181192e-13, 1.2601607040849117e-12, 2.398493070820962e-10, 1.0856475440856883e-11, 2.5303581251785376e-14, 7.316945660473806e-11, 5.331282082465805e-10, 1.3492804096237876e-10, 2.434775644988285e-11, 6.5098646959138584e-12, 2.715019875587643e-11, 2.1811144470390564e-12, 8.526999245583866e-11, 5.309406343398382e-13, 2.857219018673196e-12, 1.3322107306201758e-10, 1.7903603599656037e-10, 6.054522994070055e-10, 3.3643984820308503e-10, 5.840537775636534e-11, 2.44506671853717e-11, 1.4062909907755494e-12, 7.001352622659773e-13, 1.681142374019163e-14, 5.6072954439378986e-12, 7.559473880203171e-11, 2.724167558199042e-10, 2.6809063649602116e-11, 5.266144291471431e-12, 8.639785553654633e-10, 7.007686531751434e-13, 8.238174031838241e-11, 1.521709841467711e-11, 8.399324638586059e-12, 1.8856348774076714e-12, 3.851210322869392e-11, 2.816208637818063e-13, 3.433654471862724e-10, 2.4097813588336292e-12, 1.1251979348259056e-09, 1.3245021399099777e-11, 2.14325302297369e-12, 1.0959228663454113e-10, 1.2968696212409259e-12, 7.69506333653247e-12, 7.932441162261661e-12, 4.082739463347196e-13, 9.648816190477305e-10, 2.583026023975088e-12, 8.879364257752265e-13], [1.0906990507162165e-13, 2.017025990674881e-10, 1.8734651417023906e-12, 2.072049129497877e-12, 4.800828068418639e-10, 2.1244768097505862e-11, 3.5238548190541508e-12, 9.120877881088618e-13, 1.127167803538498e-10, 1.3197811767062806e-11, 7.906299855260646e-13, 1.7413381934311412e-13, 3.862743729477619e-13, 2.1097155272764567e-11, 7.713356456372569e-14, 4.847344856236113e-13, 4.0555517277773845e-11, 2.358518762235473e-12, 1.1656959534946695e-15, 6.200171886322492e-12, 2.8934180051898295e-10, 2.9729524397836826e-11, 1.335094361454292e-11, 4.116863100422918e-12, 1.1961018113459954e-12, 4.1840993560485207e-13, 1.5534289132812518e-11, 5.63220314570706e-13, 2.2761908460497415e-13, 4.0216587005037496e-11, 7.49399500787895e-12, 1.3557709122036243e-10, 3.510079379931419e-11, 5.231226693144797e-13, 2.462156520333103e-11, 9.163537170817776e-14, 1.819889589504617e-14, 3.134357329888024e-14, 2.886146183156413e-12, 4.107343284931453e-11, 1.1178864084415707e-10, 7.824936011646688e-12, 7.594056134797855e-13, 4.8984458850265256e-11, 2.6395796355951906e-13, 3.7051695045420274e-11, 2.1897540204707244e-12, 1.900521027446006e-13, 4.261607885157337e-13, 4.7814648074240296e-11, 8.667187383374839e-14, 5.4525692988471874e-11, 7.545274084350129e-13, 5.245652801022516e-10, 1.4153273822023471e-12, 9.0940124354566e-13, 1.1429752110048153e-11, 4.2986989835791523e-13, 1.102486591603169e-12, 1.5909576173839257e-12, 1.3487194488407545e-13, 2.727106596100981e-10, 1.2781244704100636e-13, 6.59977782602357e-14], [9.81766412415895e-15, 9.05965146652532e-12, 9.858949187634483e-14, 9.985749342212094e-14, 1.7275372105052256e-11, 1.3752547278061966e-12, 2.8381195505723655e-13, 4.808398349083996e-14, 5.1111836117667675e-12, 4.980934284817828e-13, 2.7540888338883733e-14, 1.12777990003937e-14, 1.4505583217330927e-14, 4.559919607703689e-13, 3.738589976877774e-15, 1.5893568674151502e-14, 3.973493409303863e-12, 6.511375369010891e-14, 4.4519121956677516e-17, 2.906606162353387e-13, 9.61056234594082e-12, 1.3725787000040679e-12, 1.0880038189831076e-12, 1.0445815626326446e-13, 1.7363972130805816e-13, 2.7699127645957992e-14, 4.950564155663251e-13, 1.444092749840111e-14, 1.5084852109299197e-14, 1.5343830806618941e-12, 6.73711032708052e-13, 6.2844178645715676e-12, 2.8008251100331005e-12, 1.3776021881399536e-13, 4.0725157079112007e-13, 8.48737770467239e-15, 1.0910904561708132e-15, 1.9228128329172388e-16, 1.0663687408140124e-13, 1.2813454724341922e-12, 3.698131644663816e-12, 3.3897277346151e-13, 2.4461916799350773e-14, 4.900102025529041e-12, 1.44427198201175e-14, 2.170572315635111e-12, 5.838715334783792e-14, 1.645760791372814e-14, 2.72674796560372e-14, 3.6887242392535935e-12, 5.006098549478581e-15, 7.128799286992837e-12, 2.5799039621754623e-14, 2.426164998070579e-11, 1.4323710674588735e-13, 7.32349971681659e-14, 6.846960064893493e-13, 4.835400065376569e-14, 6.1699248683246e-14, 1.201280557232981e-13, 5.29118781666775e-15, 7.749210127749873e-12, 9.996476167456123e-15, 5.8203030407961466e-15], [1.9222607717823276e-13, 3.840803786125946e-10, 6.972784762776518e-12, 7.32699057676145e-12, 4.036667666795779e-10, 4.021769028916822e-11, 2.2558505410885665e-11, 1.8183912492072962e-12, 2.637050022791243e-10, 2.0066797182249907e-11, 7.135824049708805e-13, 2.1829237094143916e-13, 3.4713296690261353e-13, 9.199618497546247e-12, 8.314438818424891e-14, 4.556376435004006e-13, 5.590174503855572e-11, 3.478447131027851e-12, 2.6393129472717476e-15, 1.7771518631692906e-11, 1.9775496518104063e-10, 5.0663265249717426e-11, 2.3502946117082146e-11, 3.5931750196754875e-12, 1.0792758180222517e-11, 7.078044747532708e-13, 3.259569697489084e-11, 1.4541788454815185e-13, 3.115348148723107e-13, 7.676084073926503e-11, 2.5041351370963527e-12, 2.172487467699824e-10, 1.2625565870560962e-10, 5.1373601553383885e-12, 1.3049831180944604e-11, 3.515208686199339e-13, 7.962635542244079e-14, 1.3080450283575566e-14, 5.464093153634275e-12, 2.117900993470201e-11, 1.141414254779427e-10, 1.0642289133278027e-11, 8.295273647672408e-13, 2.2396855203776767e-10, 2.848016148002813e-13, 3.965867564903469e-11, 3.4520548312239052e-12, 1.0296545517249345e-12, 7.649802015799456e-13, 2.974153562318449e-11, 2.280635532855846e-14, 1.150551320883153e-10, 7.820809971859077e-13, 4.993075397585756e-10, 4.543999291423129e-12, 2.1408313490012265e-12, 2.924365610779134e-11, 5.76840766992881e-13, 2.9702347352500436e-12, 2.900424258406309e-12, 1.7854171103798971e-13, 2.855891911845987e-10, 9.135097192580766e-13, 1.761933020273318e-13], [6.816960190780819e-11, 1.5377274564798427e-07, 1.3572386547977544e-09, 1.3803390430666695e-08, 9.534281275591638e-08, 1.6450952600166602e-08, 3.7781489936605794e-08, 1.7674681718204965e-09, 5.346329956523732e-08, 5.235794908742264e-09, 4.805442155308981e-10, 1.5340272108144148e-10, 1.8347146024666472e-10, 1.4961383243417004e-09, 2.092564177491596e-10, 3.043688079351625e-10, 3.820249006025733e-08, 6.615345493621305e-10, 4.11141576377649e-15, 7.002419200041743e-10, 7.205705543356089e-08, 1.7425890064259875e-08, 1.995418497102719e-09, 5.044349382643531e-10, 2.4887012450847124e-09, 2.693346379256667e-10, 1.5315795298675994e-09, 1.946307143230186e-10, 1.0726032562136112e-10, 6.004857056041146e-08, 1.0808259842676193e-09, 1.05038864717244e-07, 5.00846759621254e-08, 6.954175457707379e-09, 1.2367418200653901e-09, 8.194222522739381e-10, 4.783344293574077e-12, 1.3058248059250044e-11, 3.766067901977976e-09, 1.8046977245944618e-09, 2.5049430973922426e-08, 1.7490451309498667e-09, 1.5959887855743204e-09, 9.961389935142506e-08, 1.6220334797534264e-10, 3.3833633672486485e-09, 2.0514221432677004e-09, 1.716215614067096e-08, 4.943380704780509e-10, 4.499308481342723e-09, 7.738689897229811e-12, 5.5669470810926214e-08, 5.626259458324512e-10, 1.6269711977656698e-07, 1.5308748713138698e-09, 3.2049179976567643e-10, 1.1878065642179081e-08, 7.038427618510923e-10, 5.196076902080904e-10, 1.8933668521903257e-10, 1.3073797600071657e-10, 1.6262467283922888e-07, 9.128049704987262e-11, 2.0915154330669594e-10], [4.5430321830852716e-12, 6.7113181678735145e-09, 7.129492135549143e-11, 1.7497692184065272e-10, 6.163764165734165e-09, 9.304594872361349e-10, 1.4032077721992664e-09, 3.892120306603353e-11, 4.25167945294902e-09, 4.936344111250435e-10, 4.748049522995679e-11, 5.235555478738663e-12, 7.45296446086341e-12, 1.7040063804429906e-10, 3.6760781051137226e-12, 1.0595488028619648e-11, 2.412287480879627e-09, 2.129015019836089e-11, 1.0200473676648717e-16, 6.537919511329093e-11, 2.977599722342461e-09, 1.4047515373150077e-09, 1.8483074792907672e-10, 3.207771201441112e-11, 1.8016163561007659e-10, 9.204453171873794e-12, 1.921846015662254e-10, 3.180013110476443e-12, 7.021471511853283e-12, 1.4197735209720008e-09, 1.3648955576872623e-10, 5.9413309827505145e-09, 2.0217116869503116e-09, 4.553094290482562e-10, 1.1521523318736016e-10, 1.511934501208234e-11, 8.747535573498666e-14, 2.661330899579595e-13, 7.469488916278522e-11, 1.2282107275662923e-10, 1.6959839088670492e-09, 2.5967378247671036e-10, 3.3267687216120834e-11, 9.33468680131e-09, 5.769631300500677e-12, 4.672625064650049e-10, 8.01614816192675e-11, 1.4861373243135745e-10, 2.0234282999131992e-11, 1.1350754364203297e-10, 1.2902264705846184e-13, 3.894549571725747e-09, 1.9646641952197896e-11, 1.3331002080008147e-08, 9.597538042083187e-11, 3.5222488120600914e-11, 3.5747058091395445e-10, 1.428245369194947e-11, 4.3158504547946563e-11, 1.0730099968270235e-11, 3.3589433318104156e-12, 5.8545492898076645e-09, 1.7108497778195453e-12, 1.1397494059650626e-11], [2.41065847839117e-11, 4.0688671987254565e-08, 5.935191227379732e-10, 9.628691177709925e-10, 8.35512423691398e-08, 3.0038735943094252e-09, 2.230989970541941e-08, 6.332503271755385e-11, 6.086894899226536e-08, 7.4261294891186935e-09, 1.4768485323557456e-09, 2.2858256953917078e-11, 1.6651726872374262e-11, 1.120087356198951e-09, 9.830249461662e-12, 1.77267558271188e-11, 1.2624520984161336e-08, 1.0592459548375288e-10, 1.1350517837706666e-15, 1.5028650546256017e-09, 2.3524632908333842e-08, 1.0059677535423361e-08, 7.992371209297744e-10, 7.163964560463754e-11, 2.9331703732538017e-09, 3.078303584258535e-11, 3.4038577512163215e-10, 1.4426854893015428e-12, 3.418911334596153e-11, 7.493706100092368e-09, 4.958297772361675e-09, 7.039569283051605e-08, 1.3965986589425938e-08, 1.7644640193381633e-09, 4.4722325842627697e-10, 1.3776679450017149e-11, 2.3054574742331635e-12, 4.0514634832775065e-13, 6.40312247668362e-10, 1.9942933970895638e-09, 2.1330526678298156e-08, 3.2937212957051543e-09, 4.013619644971378e-11, 1.0206449729821543e-07, 1.8193141437805593e-11, 1.3200557980042049e-08, 8.534171286322945e-11, 4.475507464629658e-11, 1.1222176660163896e-10, 5.506528011345324e-10, 9.111035493766795e-13, 5.6027463557484225e-08, 3.5175425072697664e-11, 1.1686394429943903e-07, 8.552752395196705e-10, 2.7556626425173647e-10, 6.72211175611892e-10, 4.701941960782996e-11, 1.0049898691022463e-09, 2.320600239746895e-10, 1.1900945506848615e-11, 4.741245618333778e-08, 9.007421544748873e-12, 7.643978505722515e-11], [1.3722910308100467e-10, 1.3714159763367206e-07, 5.905449462773049e-09, 1.279804040521526e-09, 5.1503800335694905e-08, 7.958576020428154e-09, 1.7793854167891254e-09, 2.9742752705175235e-09, 1.3704753598631214e-07, 1.094177637384064e-09, 4.3897324664143866e-10, 1.9121505767660807e-10, 1.1632798196936633e-10, 1.5906049810610057e-09, 1.1798563515075244e-10, 3.163842798858951e-10, 4.177408285954698e-08, 5.496546551242432e-10, 2.809185298964479e-16, 1.7667631801998596e-09, 5.063755637024769e-09, 6.060552060205282e-09, 6.217275583253468e-09, 7.773460763971229e-10, 1.363357338135529e-08, 2.469221216383488e-10, 7.653883082880952e-10, 6.621339327522735e-12, 3.7310021738790056e-10, 4.7939053615664307e-08, 8.855760014192526e-10, 4.204580861255636e-08, 1.7134862417833574e-08, 5.42171996187335e-09, 7.988522621182881e-10, 6.677475239413866e-10, 4.2574711117682185e-11, 3.055313224642475e-10, 1.4147458315960648e-08, 7.157503478794069e-10, 2.5425135774526098e-08, 1.4167583772817238e-09, 1.3200218695885724e-10, 6.259185170165438e-08, 1.085861955907319e-10, 2.1159785035251844e-08, 5.380231260510016e-10, 1.512016178928377e-09, 3.850745555755708e-10, 1.6605725683405126e-09, 1.0397032627201819e-12, 7.042324767780883e-08, 5.674568592795026e-10, 1.8363779474839248e-07, 1.2600660515005302e-09, 2.9368457665768233e-10, 6.668024798983652e-09, 2.4635171680387202e-09, 1.5015079180003e-09, 1.097727353460698e-09, 6.965296117655839e-10, 4.383628038340248e-08, 7.09066009033088e-12, 7.07603212135588e-11], [3.245658516254357e-12, 4.636941053348664e-09, 1.3121036201990677e-10, 2.9566193243679706e-11, 4.996133284862481e-09, 6.932141527471458e-10, 2.2013947609256235e-10, 6.67545740906661e-11, 6.060092427873087e-09, 1.700959650907663e-10, 4.031219455469248e-11, 3.77126671904926e-12, 5.5207696053605204e-12, 1.2124146131498037e-10, 1.968473127555992e-12, 6.266358525824911e-12, 1.9398551653893037e-09, 1.6479196479624036e-11, 2.4975414959393287e-17, 1.5395278107899202e-10, 5.143896419923522e-10, 5.91067528254996e-10, 4.829115995974576e-10, 2.7735647112336892e-11, 3.7040914779851164e-10, 6.740660547094324e-12, 2.1797291402392283e-11, 2.4330355980796414e-13, 6.383054241415609e-12, 1.2696251827648553e-09, 7.244200378453414e-11, 3.689177185961512e-09, 1.3506447071875982e-09, 2.2065330118614668e-10, 5.5734732801182574e-11, 5.619819280072713e-12, 5.215614181861006e-13, 1.3276367852310678e-12, 1.3928830311371598e-10, 6.674548413965198e-11, 1.6084447107544975e-09, 1.8200332907447603e-10, 3.7487907743327664e-12, 5.10080599980256e-09, 3.844616031783987e-12, 9.99902383114204e-10, 1.1290522336504516e-11, 1.0761390042968166e-11, 8.993045023941715e-12, 8.693065017828516e-11, 5.579414493893549e-14, 4.742180870209722e-09, 1.0111419514180486e-11, 1.5862838154134806e-08, 9.574588344385404e-11, 1.356096311633248e-11, 2.3229207446462397e-10, 2.0822408033915885e-11, 5.275114026148664e-11, 3.1852128573595095e-11, 3.1432612589143982e-12, 3.398413994659677e-09, 2.3813446332031363e-13, 2.2090385076722896e-12], [2.231414879261262e-11, 1.9838680032080447e-08, 4.728522018382364e-10, 4.443738987891521e-10, 5.7670867192882724e-08, 2.696880052610595e-09, 8.477685220498188e-09, 7.643084776187692e-11, 4.8570907296152654e-08, 4.6353765270623626e-09, 1.1542362621241864e-09, 2.1813736580944543e-11, 1.8750464722550042e-11, 1.1301172220257172e-09, 8.730394879252756e-12, 2.1871391850392108e-11, 1.3302172696683101e-08, 1.1160290747103119e-10, 2.0430070463606405e-15, 2.8160807019617096e-09, 9.378132048709631e-09, 8.071144641519368e-09, 8.055563993636383e-10, 4.592207863973741e-11, 1.9716681620707277e-09, 2.8517308306441613e-11, 2.4967219958149656e-10, 9.927577423324285e-13, 3.726651626179134e-11, 7.056960349416386e-09, 1.2047417508043168e-09, 3.827182837312648e-08, 1.2972697582824821e-08, 1.4871600617638592e-09, 3.518385305323335e-10, 1.3135856118118294e-11, 2.358263974724939e-12, 4.0542574722760016e-13, 1.3873409365761091e-10, 1.3677537991085842e-09, 1.4599301323414693e-08, 3.5001184173211186e-09, 3.259977704450634e-11, 7.160253545634987e-08, 1.7517954101209376e-11, 9.616111462662502e-09, 7.036492222223245e-11, 4.2130982730315125e-11, 9.825028290944005e-11, 4.5757397870715977e-10, 8.905845895815223e-13, 4.4033793500375396e-08, 3.19681919824788e-11, 9.420993052344784e-08, 8.517671012953087e-10, 2.346942640230054e-10, 6.615071268534223e-10, 4.5179013308249694e-11, 7.01560642912824e-10, 2.2804866328662854e-10, 1.0734779384846682e-11, 3.51428326439418e-08, 6.837746514831711e-12, 2.1449692716446478e-11], [4.330012390307836e-11, 2.847883529000228e-08, 5.151805093639439e-10, 1.6578282080459417e-09, 2.902316076358602e-08, 4.686719012880758e-09, 4.4251260988836805e-10, 4.5159778694348063e-10, 1.1412503830854348e-08, 2.5381803325785768e-09, 5.481758935665937e-10, 3.742903209591475e-11, 1.5588219604012465e-10, 2.7191009444038627e-09, 9.715631077433784e-12, 7.712481348010058e-11, 1.1598935145684663e-08, 1.3498485662566395e-10, 3.014643049081833e-11, 1.0566861829985896e-09, 5.571972661044811e-09, 6.048006984116228e-09, 1.956641959566241e-09, 1.4805782988513982e-10, 8.995464373384721e-10, 4.6442294454607236e-11, 3.481812616001889e-09, 3.6181645787086714e-12, 2.765905005031044e-10, 5.6878604048904435e-09, 5.327450286474189e-11, 2.1908803660153353e-08, 9.134571321567364e-09, 2.369500817778203e-09, 1.2859294740152905e-09, 7.298933679678044e-11, 1.8145124291990555e-11, 6.341728357728282e-12, 1.95493093935184e-10, 4.049779622761207e-09, 4.69968552962996e-09, 2.429462631070578e-09, 6.374598765512829e-11, 5.880843545469361e-08, 4.586166515996304e-11, 1.7838258647984162e-09, 1.467141408362238e-10, 4.7939013869680025e-11, 9.404105272281527e-11, 4.3676756655841587e-10, 4.899307955857912e-13, 2.406528842868738e-08, 1.1624274459665074e-10, 8.941423601527276e-08, 6.267228958023452e-10, 1.3713226387768174e-10, 1.0859858567968672e-09, 8.191579359273504e-11, 1.4390745539660799e-10, 5.379881956590893e-11, 4.173909828875111e-11, 2.8092500770071638e-08, 1.694196345713994e-11, 1.9012923180294905e-11], [3.30166558155931e-12, 1.943757377276256e-09, 2.5472249309821393e-11, 9.419042629188468e-11, 2.057181758274851e-09, 4.347301685303506e-10, 1.3120576847214238e-10, 1.2230023417603153e-11, 1.0052678689476124e-09, 3.384183488996939e-10, 1.060487739290572e-10, 2.675297049864467e-12, 1.46075859741579e-11, 2.4547500143690115e-10, 1.0383584183454309e-12, 5.0866546218164554e-12, 1.0006471207191225e-09, 1.1145064038320385e-11, 4.600303970224429e-13, 1.448604292075828e-10, 5.623657650666303e-10, 5.477361897376909e-10, 1.054382067766646e-10, 1.3720086698698619e-11, 9.658283894875552e-11, 3.8257561181531674e-12, 1.5466652958373572e-10, 2.5441056054377464e-13, 9.159825675730815e-12, 5.587313389732174e-10, 6.5667033442851075e-12, 1.981767194791928e-09, 7.670367119239074e-10, 1.7634058102622419e-10, 5.842532013744517e-11, 6.690063433789639e-12, 4.774236561644329e-13, 2.190912382071808e-13, 1.2356582770878255e-11, 3.3114805342293607e-10, 3.5160263589517626e-10, 1.4620367416728897e-10, 4.184403691598337e-12, 5.452297724417576e-09, 3.6218352535838383e-12, 2.061693732402503e-10, 7.261073686759545e-12, 5.335667237899022e-12, 8.907589943429883e-12, 7.144691782645651e-11, 2.5325922592802155e-14, 2.8900339898996208e-09, 7.613989300159218e-12, 8.001372009402985e-09, 4.793623831211846e-11, 1.5065691749693855e-11, 1.3144722810221054e-10, 6.396220358917404e-12, 1.005659357872224e-11, 4.846310418943345e-12, 2.1080561341674242e-12, 2.069830973283615e-09, 7.196683570256934e-13, 1.2489521136055393e-12], [1.5509407993996582e-11, 1.717020836622396e-08, 3.377241264423958e-10, 4.457457736251058e-10, 2.2791580178704862e-08, 2.7504769573027943e-09, 1.132091531630408e-09, 4.217922885962899e-11, 1.561998885790672e-08, 2.319258785021816e-09, 8.185240818470163e-10, 1.371873708383431e-11, 1.1254224982493177e-11, 1.1073448824561183e-09, 4.686969128780971e-12, 1.1661551065078601e-11, 7.00701008327087e-09, 7.688265996064203e-11, 4.58414637629842e-14, 1.4279096793856638e-09, 5.395857094470102e-09, 4.777680473466717e-09, 5.903679212160284e-10, 3.920371666188416e-11, 1.634199442435147e-09, 1.7531786786206816e-11, 2.8921237626988727e-10, 1.1205408345996148e-12, 3.59974723640466e-11, 5.996652507889166e-09, 1.639735291991684e-10, 1.4758693822614077e-08, 9.280193502547718e-09, 1.2604715049491233e-09, 3.344269305927128e-10, 8.053355725345934e-12, 2.554228313231266e-12, 3.5235364430862004e-13, 8.807648360642517e-11, 1.339726662941132e-09, 4.374218764979787e-09, 1.2796910198176192e-09, 2.7907849642350158e-11, 3.604546350288729e-08, 1.821355045950046e-11, 2.430251111462667e-09, 5.994638119233286e-11, 4.093061306553736e-11, 7.493271975134164e-11, 2.0949728063435202e-10, 3.929968329929867e-13, 1.411961303432463e-08, 1.8720230227087242e-11, 4.18709262817174e-08, 5.751889520233533e-10, 2.0618276530548485e-10, 6.292168452937119e-10, 2.760076542318579e-11, 1.6743167963184646e-10, 5.416675788461056e-11, 6.563995440939108e-12, 1.5431750099992314e-08, 7.802919768651329e-12, 5.140980956913621e-12], [2.0602420811033362e-11, 4.100175488019886e-08, 4.4053177772340746e-10, 3.087764210985e-10, 3.456137065427356e-08, 1.133975358058592e-09, 1.707199537293036e-08, 1.0985280740616332e-10, 3.742326271094498e-08, 6.234107452485205e-09, 2.4568738155039682e-09, 4.4228401496759773e-10, 1.982288985735714e-11, 8.15399636699965e-10, 8.702009599015348e-12, 2.919329014638983e-11, 1.7056304812967937e-08, 4.980356127504137e-10, 6.027394549586824e-15, 7.935502921441184e-09, 3.4497524836751836e-08, 6.6553664801460855e-09, 8.115895178129051e-10, 1.9204594858823754e-10, 4.542624942871498e-09, 4.52601844891376e-11, 9.936454326009425e-09, 1.3382387645949345e-12, 8.457737288303235e-11, 9.947237700203004e-09, 1.1122989196366007e-09, 2.893931494440949e-08, 1.1844911718128515e-08, 3.281702687374377e-10, 1.300220375810568e-09, 1.2446810075672499e-11, 8.649707061714196e-10, 4.874097544842193e-13, 4.12606704358609e-09, 1.197388632689922e-09, 9.763282404762208e-10, 1.5461448787945642e-09, 7.981568739268141e-10, 5.5134350418484246e-08, 3.84527618080277e-11, 1.2122930215241468e-08, 2.0196118388771112e-10, 2.6253135776421743e-10, 7.614457675497732e-11, 3.162640371812131e-09, 6.315302556077207e-13, 1.713700470418189e-08, 4.2657537224766173e-11, 3.820177951752157e-08, 1.5384425955389247e-09, 2.482683780780093e-10, 1.367409074859438e-09, 4.9131719526140927e-11, 1.2028222862170423e-10, 2.752915950754442e-10, 1.8813802946104907e-11, 2.625749040419123e-08, 4.2540294203918805e-11, 9.46478052182842e-12], [1.8094461476034218e-12, 2.7214821507470788e-09, 2.3878047109016087e-11, 5.060447200166962e-11, 2.615065719524523e-09, 1.4767921607816703e-10, 5.647249334828075e-10, 8.549809298041833e-12, 2.1605892630560675e-09, 3.1809610501198904e-10, 1.229010920811291e-10, 7.252477264574342e-12, 2.0743380971244285e-12, 5.0218485619923925e-11, 9.957422256526294e-13, 2.1093287706774877e-12, 9.017705471237036e-10, 8.221450603640434e-11, 1.5943072508902155e-16, 2.6312133027950324e-10, 1.5125164454232731e-09, 4.932226849163612e-10, 1.5221685023547593e-10, 2.534362997241857e-11, 1.4311767049246527e-10, 6.106760496588093e-12, 5.244378264990246e-10, 5.666140300009115e-13, 5.917799670435153e-12, 6.004431396533505e-10, 1.5640301553876412e-10, 3.3803475574245567e-09, 1.0515689430334874e-09, 4.943737780260804e-11, 1.1568408730955326e-10, 1.5598610727737827e-12, 1.2165808291331182e-11, 5.6353816876636084e-14, 1.8839731164010942e-10, 7.752987835063507e-11, 2.365560802797262e-10, 5.919970763601512e-11, 1.3554872502208326e-11, 2.559018552616976e-09, 2.83198247838512e-12, 9.606305750864408e-10, 5.2479753182010924e-11, 7.100188492703552e-12, 6.5962513229322894e-12, 4.282073584604973e-10, 6.537653041540151e-14, 1.599373966598705e-09, 3.3402317370367918e-12, 5.408744563339951e-09, 5.753589618628929e-11, 1.8072052535011984e-11, 1.8606990948022428e-10, 3.364980169506815e-12, 2.673965042443438e-11, 1.5100577038795748e-11, 9.685598677255935e-13, 2.1090496016284987e-09, 1.516803002643563e-11, 6.087446627507653e-13], [1.2591139936235507e-11, 1.3030138745762088e-08, 1.6675666403287437e-10, 2.419956735000284e-10, 2.1246066239655192e-08, 1.0602445588148157e-09, 3.1275793066498636e-09, 3.388049216179745e-11, 1.4858700936315472e-08, 2.3467854326497672e-09, 1.3503828055760891e-09, 1.045381402969836e-11, 9.871611340861453e-12, 5.578834061381599e-10, 3.1624887170816907e-12, 9.884468243903655e-12, 5.022219529138283e-09, 7.520029737806411e-11, 2.959877860116058e-15, 1.9141048746007527e-09, 8.280667707083467e-09, 3.427520267607065e-09, 4.823002552889477e-10, 4.1113723536767566e-11, 1.124950577136019e-09, 1.3716503627358989e-11, 1.8998180806306664e-10, 9.806067633247317e-13, 3.586898486562795e-11, 3.88918008908945e-09, 2.53331311483862e-09, 1.639507019035591e-08, 5.2238928738290724e-09, 7.161066184480092e-10, 5.897317634229182e-10, 7.904620534515683e-12, 3.2657496498722516e-12, 3.9519789892840385e-13, 7.371573351733218e-10, 1.1118808096455268e-09, 1.9857990807281567e-09, 7.548650038380345e-10, 2.211274392760476e-11, 2.5781982770922696e-08, 1.1474436852065839e-11, 4.196686109736447e-09, 5.672257802347147e-11, 4.0747866886237105e-11, 5.041153952611843e-11, 1.1997329796287204e-09, 8.460396012238691e-13, 1.1428915591693567e-08, 1.2929580149589892e-11, 3.357676092718975e-08, 3.772411827362987e-10, 1.3500767170882e-10, 6.727897128300242e-10, 2.2277303265982873e-11, 1.071606553493254e-10, 1.3815500132796643e-10, 4.47206898249175e-12, 1.2853657693767673e-08, 8.593960612590656e-12, 3.754141962575286e-12], [1.76011531738407e-11, 1.1525259857592118e-08, 1.9870903533725226e-10, 1.3330124504218333e-10, 6.212014014295164e-09, 1.5061186742215682e-09, 4.1091913205448805e-10, 1.1920496534312264e-10, 8.438329146542856e-09, 1.6773329392094638e-09, 7.465766338476953e-10, 1.4197092286505342e-11, 2.7659239482114018e-11, 7.835265769529087e-10, 1.007539711384009e-11, 2.07018083231425e-11, 5.778725054028655e-09, 1.1425137919074402e-10, 4.811207279743681e-15, 7.777646304774066e-10, 2.1134372030218174e-09, 5.164085603581725e-09, 6.256674622839853e-10, 3.353101823977411e-11, 1.8228471510006727e-10, 2.5981409731978822e-11, 4.229788741483276e-10, 4.7980170184147575e-12, 4.062748470978761e-10, 3.4954690253385934e-09, 2.693630873906727e-10, 1.2092104206828935e-08, 6.075928205007131e-09, 4.642184137093608e-10, 8.424066999523916e-10, 1.6224532134456737e-11, 9.208889727163605e-12, 2.0477451114983558e-13, 4.583400325941511e-10, 4.0262990164130485e-10, 3.9491335201979894e-10, 5.61680146837773e-10, 3.3766399398782454e-11, 1.1635505003937396e-08, 1.6856934251241462e-11, 1.2886858247185273e-09, 9.975023584907206e-11, 1.4721937210970815e-11, 6.367257415762495e-11, 2.4133645082358157e-10, 3.827388406207888e-11, 4.25280433091757e-09, 2.5354015761869242e-11, 2.841145274601331e-08, 3.5187927571733724e-10, 1.367446711419973e-10, 8.359301029159383e-10, 3.202028225901543e-11, 2.507498653159246e-10, 4.786173193882526e-11, 6.4915260666875696e-12, 1.0791257665232479e-08, 1.7734622798082356e-11, 6.5501657917077516e-12], [9.460680936573818e-13, 7.473700547322437e-10, 1.887099330966091e-11, 1.2548084099561763e-11, 7.188951656189602e-10, 7.226836490348276e-11, 2.4100891421463544e-11, 5.3930171960148154e-12, 8.910801541084368e-10, 1.117503312109136e-10, 8.062082251791836e-11, 7.966216662019798e-13, 1.6187278297288832e-12, 5.1227379976870324e-11, 3.852078432706879e-13, 1.6038341444854498e-12, 3.326286746041518e-10, 2.351709972592264e-11, 1.9659244276523186e-17, 3.0621880031667104e-11, 1.819684819492906e-10, 4.1263042982464526e-10, 6.893851461908795e-11, 3.656054625711391e-12, 1.6770066238458448e-11, 1.849630691663773e-12, 6.812500563668777e-11, 2.42111886095131e-13, 4.374563211673177e-11, 1.9774626380808513e-10, 7.902917903424012e-12, 1.015659556458104e-09, 4.2282108370095273e-10, 5.331829422416945e-11, 7.019976960842556e-11, 7.491542650985006e-13, 4.3685029009997434e-13, 5.87380418284357e-15, 2.923458350401198e-11, 3.219511462981828e-11, 7.403897633873058e-11, 4.8453480810950467e-11, 1.5718904042977266e-12, 8.018187225289353e-10, 8.927032832568849e-13, 2.786776920338241e-10, 9.78703663251368e-12, 5.070321875029482e-13, 2.6100909628068436e-12, 2.1078330053603267e-11, 1.0642243379946348e-12, 4.104558914974632e-10, 2.0951478399422463e-12, 2.348359284809476e-09, 1.6837390856561107e-11, 7.877279557810812e-12, 6.531532953379937e-11, 1.7065797559834284e-12, 1.4325301361806098e-11, 7.60501991242668e-12, 5.181653175111156e-13, 8.888375591098452e-10, 2.550258832237362e-12, 4.3072059048750166e-13], [8.533728411419528e-12, 6.57224452638161e-09, 1.2514753122694344e-10, 1.2908361879393482e-10, 8.56297788232041e-09, 7.233948440266147e-10, 4.248633667103263e-10, 2.3728524353727742e-11, 6.1127853889786365e-09, 1.1581499093082925e-09, 3.857529851103436e-10, 6.1294511133347385e-12, 7.754163630635524e-12, 3.3160246770691515e-10, 2.152432962768125e-12, 7.054849759935422e-12, 2.364432427626184e-09, 6.573251665198399e-11, 8.393243121595758e-16, 5.523562163212148e-10, 2.703467893994116e-09, 1.7653301043196734e-09, 4.041079415539883e-10, 2.7665437649093683e-11, 5.131604030594872e-10, 1.1226224810867436e-11, 2.0197048200554235e-10, 9.489041497001693e-13, 3.802501022387439e-11, 2.167720225543235e-09, 1.0265542582654774e-10, 6.522911100148576e-09, 3.697109063338644e-09, 4.1638875680760634e-10, 2.6376975603703556e-10, 6.29176832162015e-12, 2.326703283164755e-12, 2.754247567862689e-13, 7.558798031936931e-11, 2.389228259680465e-10, 1.3502347018246041e-09, 3.48752221546178e-10, 1.605098519374959e-11, 1.278892014511257e-08, 7.92179169484264e-12, 1.5829662025623747e-09, 5.3224716300981356e-11, 3.909777016031235e-11, 3.289990849197899e-11, 1.8764632903067735e-10, 8.721330406989691e-13, 5.375630607318271e-09, 1.0003749564835296e-11, 1.9186373378943244e-08, 1.6857520934721038e-10, 7.944171015461521e-11, 6.050995815520821e-10, 1.4284138108444644e-11, 6.699404919707774e-11, 3.0855273197571975e-11, 3.5345335599318295e-12, 7.262518586514943e-09, 8.288758568397725e-12, 5.81129068477626e-12], [8.95970363873344e-12, 4.0830748504472325e-11, 1.2486105899212063e-11, 5.916823021118178e-12, 1.501824775651528e-10, 8.236235478353837e-12, 1.2555614881115673e-10, 2.553657806048104e-11, 2.1919237258583024e-10, 2.8040758950909073e-11, 3.177562726830452e-11, 4.431674645311023e-12, 2.0407263118943364e-12, 1.788989789641704e-11, 2.1410302350477473e-11, 1.6052388585041655e-11, 1.1573132729925106e-10, 2.1634145863647092e-11, 9.788433017149205e-15, 5.203225697525404e-11, 3.0146645596529353e-11, 3.669891474045173e-11, 2.960963418896512e-11, 2.0699466446449932e-12, 1.8409215124526312e-11, 1.9011814691993756e-12, 1.8315926553214013e-10, 1.1169612733645182e-13, 1.9571061785073063e-11, 2.345055226393722e-11, 6.430399615564575e-12, 1.2728978981968453e-10, 8.545693319650383e-11, 3.092658074077548e-11, 2.614140501289164e-11, 9.237932684438843e-13, 5.14883003854133e-13, 5.386490034662173e-15, 6.436898236650279e-11, 6.346689146452533e-11, 3.945401297333895e-11, 4.213280765941185e-12, 5.905969723690729e-12, 1.0293579877362902e-10, 2.0446154264022048e-13, 5.610447176285227e-11, 2.0117482332770997e-11, 3.3146666834904526e-12, 9.61331166580981e-13, 1.014239386920579e-10, 2.0263599690350728e-14, 1.132980376183923e-10, 5.971418498562642e-11, 2.417582523062123e-10, 2.64397683434614e-12, 4.237329237488652e-12, 1.9196911421603957e-11, 6.07435651257815e-13, 4.905520867987123e-12, 2.2319552889921157e-12, 1.2495078582919206e-10, 9.719591104184744e-11, 1.4659424932630949e-12, 9.43345770422488e-13], [3.5947574777983604e-11, 2.4564441591934383e-09, 1.1199438598730183e-10, 5.775670913754638e-11, 8.478794555344393e-09, 2.357030959299067e-10, 2.381362662617903e-09, 1.3704683221593683e-10, 6.4695528934066715e-09, 8.6706491986277e-10, 6.381955519607629e-10, 2.328658620098789e-11, 1.1056444822188372e-11, 1.4635957723552195e-10, 9.605611445140383e-11, 7.154550563104323e-11, 2.0788579746522373e-09, 1.1320309273310514e-10, 1.869031349434054e-15, 8.068384849124755e-10, 4.448989621153032e-09, 1.2185616959925483e-09, 1.8668808166033557e-10, 5.275170491397807e-12, 2.583916691722976e-10, 1.2305247099053673e-11, 7.864216500230725e-10, 7.180777375709671e-14, 9.563289743441672e-11, 4.5622691735580645e-10, 1.1501314345352398e-09, 8.45510950142625e-09, 1.2704685081743605e-09, 4.494828398371453e-10, 1.656410980599432e-10, 9.036945996208912e-13, 1.5029972167020234e-13, 4.7353017774282025e-14, 5.045612261334043e-10, 7.282480729564611e-10, 3.2526406013033693e-09, 4.2389219911953546e-10, 2.4865330280898768e-11, 1.3713257196457107e-08, 1.050579328393253e-12, 2.3961472805922313e-09, 1.0395984767486155e-10, 2.3702832231686788e-12, 1.0993884622112482e-11, 6.208180081124226e-10, 4.4673466315092725e-14, 7.022771253417659e-09, 2.9009977753347016e-10, 1.8855171646237068e-08, 7.13646641781196e-11, 3.796626207863696e-11, 1.491693296662433e-10, 6.5444099792144605e-12, 1.1466125965364782e-10, 5.4631500712165604e-11, 5.8419902249085e-10, 7.253271760987445e-09, 3.0135598877434333e-12, 2.12099816876421e-11], [1.2126477773322097e-11, 1.918858183458383e-09, 6.055637241653145e-11, 7.878307034525633e-11, 5.4215743006125194e-09, 2.31758293112172e-10, 1.180951669788044e-09, 3.105820114979174e-11, 4.522250129923577e-09, 5.066935204744993e-10, 2.087417877438824e-10, 7.205665317894239e-12, 3.6280355889678484e-12, 1.1384364284605653e-10, 2.2009043892934343e-11, 1.834347777840417e-11, 1.3277077215434474e-09, 3.6330140285034673e-11, 1.7404075752726518e-14, 2.818507094382028e-10, 1.8029299164723511e-09, 8.116773919653042e-10, 1.3692129374742734e-10, 1.057318642361249e-11, 2.061736337211073e-10, 4.913814147244899e-12, 2.620779426809605e-10, 3.421545273669946e-13, 2.2368478597156738e-11, 6.344966219096193e-10, 3.454071195729824e-10, 4.544296938746584e-09, 1.154734974306848e-09, 1.7778183092342914e-10, 7.658210177119429e-11, 3.901843258213855e-12, 1.4936993699213308e-12, 2.194202427445533e-14, 1.2543255323294034e-10, 2.710578150821874e-10, 1.4314401886039718e-09, 2.3405513638330433e-10, 1.0696285003553019e-11, 7.48774464653934e-09, 2.1101063604755943e-12, 1.0381979720364143e-09, 3.061412581772949e-11, 3.546087251962704e-12, 1.2260317761025874e-11, 1.4991068109093675e-10, 1.4570515746627904e-13, 4.102922890325544e-09, 6.082016834607629e-11, 9.540659817730557e-09, 8.142149454659631e-11, 3.051995808855956e-11, 7.08295852525076e-11, 4.480633745973517e-12, 6.32093266617062e-11, 2.4704323656199456e-11, 1.1871466309987255e-10, 3.4079519206642317e-09, 5.000500447743805e-12, 6.057402843206994e-12], [1.1123634457987919e-08, 8.941747609014783e-08, 2.6354101123615692e-08, 1.6533538982343998e-08, 3.9766794657225546e-07, 1.3996491965428959e-08, 2.3670857274282753e-07, 5.300845984379521e-08, 4.4871885052089056e-07, 4.401905329132205e-08, 5.355773069481984e-08, 6.972112220893223e-09, 2.1742259104229333e-09, 3.353992639176795e-08, 3.985840635323257e-08, 2.7328328044973205e-08, 1.9588219402066898e-07, 4.206054171618234e-08, 2.6377804529119277e-15, 9.312029192187765e-08, 3.965237471703631e-09, 8.824314079447504e-08, 2.7497650378904837e-08, 2.003667010086474e-09, 5.320212892456766e-08, 2.8271711638439e-09, 2.0621089902306267e-07, 1.0348667062176631e-10, 3.2425671037117354e-08, 7.449326488995212e-08, 9.838829306829666e-09, 3.6091296351514757e-07, 4.773562167770251e-08, 5.874149522355765e-08, 3.95110646422836e-08, 2.3719659569820806e-09, 3.2977880842777196e-11, 6.535645505692522e-13, 1.1756462470202678e-07, 1.0601927158404578e-07, 1.3289862010879006e-07, 3.6145852977398363e-09, 1.0247511283978383e-08, 1.1769672170203194e-07, 1.817001132886631e-10, 1.0018856499982576e-07, 3.7227568583375614e-08, 2.0871413486389656e-09, 1.0098117897427983e-09, 1.6527339141703123e-07, 8.349389755968328e-12, 3.449306262837126e-08, 1.0049663501376926e-07, 4.4759115525039306e-08, 6.718396061700105e-09, 9.041853488156448e-09, 3.8052373696473296e-08, 7.161854442827575e-10, 6.349312631215298e-09, 4.491293559283349e-09, 2.2394442567019723e-07, 2.391017233094317e-07, 1.0032883378252588e-11, 2.0857287008624326e-09], [9.4250640625404e-10, 1.4678263937639713e-08, 2.0554240531822643e-09, 2.6559604515696833e-10, 4.895759175838066e-08, 3.3002485189115305e-09, 1.9466559919578685e-08, 6.352410597543212e-09, 5.520671564340773e-08, 2.222821260389196e-09, 6.724598655694081e-09, 4.6491965832728965e-10, 3.1067498573733587e-10, 3.698444661637268e-09, 3.915257007491846e-09, 3.4289990846758656e-09, 2.3756511424721793e-08, 5.632580180048308e-09, 4.188796035156433e-16, 9.773973630444743e-09, 1.3944068122384579e-09, 1.0644371606360892e-08, 5.638109534800151e-09, 2.2390080067768992e-10, 6.445281197642316e-09, 4.801923858543944e-10, 2.9209124008389153e-08, 1.7185568289626585e-12, 4.2780405884457195e-09, 8.256278327678501e-09, 4.928399355286217e-10, 3.712964158353316e-08, 7.987571493117684e-09, 5.842895500762779e-09, 4.457203051089209e-09, 5.2711671832961216e-11, 8.608930083565947e-13, 7.236230251074158e-14, 1.2021638795545186e-08, 1.0722462029377766e-08, 9.625568786475469e-09, 8.575704035784781e-10, 1.0748020251583057e-09, 3.49944535571467e-08, 9.278060091044704e-12, 1.5686163479244897e-08, 5.251302948039438e-09, 3.9190761746965563e-11, 1.0402501082751314e-10, 2.5643183576562478e-08, 5.851086542357775e-12, 1.296692708763203e-08, 1.0250745141604511e-08, 1.6903072719287593e-08, 1.927823678471441e-09, 1.1788056086814436e-09, 4.303625900092811e-09, 1.6730397622843896e-10, 6.326366097653136e-10, 1.0821285534312608e-10, 2.8576563337878724e-08, 2.180962255238228e-08, 1.5553714999977375e-12, 1.8622281494629078e-10], [5.017906534732219e-09, 4.590355828781867e-08, 9.916767851336772e-09, 8.974315734988636e-10, 1.4077944854307134e-07, 7.576619331928214e-09, 4.1927989968826296e-08, 2.190861003725786e-08, 1.270671958764069e-07, 2.0040765491557977e-08, 2.0027879799044968e-08, 3.4585290187294504e-09, 9.910637865928607e-10, 1.4304855966429386e-08, 1.702970209294108e-08, 1.1129577259794132e-08, 9.070695483615054e-08, 1.7976381272433173e-08, 8.793571644775348e-15, 4.639894513047693e-08, 3.407306081726347e-08, 2.7285112835784275e-08, 2.3393365466972682e-08, 1.5151552235082022e-10, 7.797861911740256e-09, 1.244123026822308e-09, 1.2611455701971863e-07, 1.4158108279510584e-12, 1.3996976910846115e-08, 1.0722414067743102e-08, 9.30127619369614e-09, 1.7262026119624352e-07, 5.8395151825152425e-08, 2.236605922689705e-08, 2.1585551124303493e-08, 1.587341542930165e-11, 9.548260619662852e-13, 5.566527057007664e-13, 5.0224290504274904e-08, 5.390325696907894e-08, 6.346745351493155e-08, 1.103456881423881e-08, 3.870545217665722e-09, 1.786841181683485e-07, 2.2325231940900636e-11, 2.9562999159793435e-08, 1.7970954502288805e-08, 1.0041195652732426e-10, 5.162241190070915e-10, 8.466118117667065e-08, 7.600251808112524e-13, 5.5348497340901304e-08, 4.653984930769184e-08, 1.6718627193768043e-07, 2.7962994142427533e-09, 3.872317577702233e-09, 1.6572888839050393e-08, 3.1139610334740553e-10, 6.025151932931294e-09, 3.684793581371082e-10, 9.470100081898636e-08, 1.4665532432900363e-07, 5.706223341062078e-11, 8.191705647142555e-10], [1.8386355549182554e-08, 1.5967426492125014e-08, 1.4209756926675254e-08, 6.506766681013687e-09, 2.2032789814829812e-08, 1.5772892325571775e-08, 2.9418316671581124e-07, 5.5508255769609605e-08, 1.2014571382223949e-07, 6.279642406070707e-08, 5.909555866878691e-08, 1.0793193894187425e-08, 3.2447085018816324e-09, 3.7238823580310054e-08, 4.7296463634438624e-08, 3.444808172048397e-08, 2.2122942766600318e-07, 1.5628048188887078e-08, 3.253819436110916e-11, 9.576851311976498e-08, 3.7374498162989767e-08, 9.591582283974276e-08, 5.688857029895189e-08, 7.36201588580343e-09, 5.531797953040041e-08, 2.374526131276866e-09, 3.4475581855986093e-07, 1.7951116938405565e-12, 3.6736313546725796e-08, 3.2235816238568304e-09, 7.185262163034167e-09, 5.791273594013546e-08, 1.4669366521502525e-07, 6.526361318037743e-08, 4.587819546486571e-08, 3.864338626868857e-09, 1.8118714861792284e-11, 3.25902174171111e-12, 1.3187369063416554e-07, 1.1754616480175173e-07, 9.718191584795477e-09, 6.375850514217518e-09, 1.2971329788058483e-08, 1.6390843882163608e-07, 4.0716008342656096e-10, 1.0254093041339729e-07, 1.7858527101566324e-08, 1.6551034154321798e-10, 1.2990122311151708e-09, 1.6750199449688807e-07, 3.6672864723273635e-13, 2.5246805535061867e-07, 1.2087686229733663e-07, 5.80269556849089e-07, 3.728522379731203e-09, 8.376339621918305e-09, 1.9067449841259076e-08, 9.653796650965774e-10, 1.3161818301909989e-08, 7.0869612400770166e-09, 2.650447186169913e-07, 1.36778561810047e-08, 5.407627678977178e-09, 2.7149045234153846e-09], [9.272965728612803e-10, 6.948566166897763e-10, 1.2299009588545573e-09, 5.7655987623084215e-11, 2.9017044322898755e-09, 1.1139230648993248e-09, 2.1318353304877746e-08, 4.708528678065704e-09, 2.508691565594745e-08, 4.544816523122108e-09, 5.121575608058038e-09, 4.852910295838342e-10, 2.5148857996093454e-10, 2.8168125609795425e-09, 3.2228053559180125e-09, 2.706882051839443e-09, 1.7696812903977843e-08, 3.719693220105569e-09, 4.544096490147892e-13, 7.800984747063922e-09, 3.992912223083067e-09, 6.213993763992676e-09, 5.726896734614684e-09, 1.4592434205429328e-10, 2.9642408527763564e-09, 3.7698236199368296e-10, 2.4046379110131966e-08, 1.198132982800984e-13, 3.2148170792112296e-09, 9.594359751119441e-10, 1.0742947642583545e-09, 6.699916621499824e-09, 9.700285019675903e-09, 5.106229217233249e-09, 3.860739727912232e-09, 1.1483166501013997e-10, 1.8767240094873933e-13, 1.375000509501803e-13, 9.329250261203015e-09, 9.030191705505786e-09, 1.0861626043023875e-09, 1.2751205646921449e-09, 8.38817959536442e-10, 3.064577569489302e-08, 2.1405516248407253e-11, 1.526006698782112e-08, 3.718440000355372e-09, 3.971089082566159e-12, 8.35268243459808e-11, 1.8902088783079307e-08, 4.187441883583658e-14, 2.570842738691681e-08, 8.423839403803868e-09, 5.722456108969709e-08, 1.2495512402566078e-09, 8.661968919909668e-10, 3.062128106634532e-09, 1.226181933766668e-10, 4.5724113384437715e-10, 2.1865305399604296e-10, 2.2260524090711442e-08, 2.7793638501805162e-09, 8.438560267221007e-11, 1.5010678811044897e-10], [4.0438101756024025e-09, 9.473569484441668e-09, 8.049452659975032e-09, 4.823428809141994e-11, 3.984039054216737e-08, 3.2304383612569154e-09, 6.509885963623674e-08, 2.0464009153897678e-08, 6.722638090650435e-08, 2.103118923457714e-08, 1.6040079486856484e-08, 3.1046432091841325e-09, 8.841302689965858e-10, 1.3146544297626406e-08, 1.562440310465263e-08, 9.941397927093476e-09, 8.477684332319768e-08, 1.7185863399049595e-08, 1.0016913378407474e-13, 4.496050109992211e-08, 6.85012722101419e-08, 1.4548787063972668e-08, 2.2827558510130075e-08, 1.0881978651511304e-10, 4.128662745017664e-09, 1.2692236150968483e-09, 1.1610829631081288e-07, 8.805011841167554e-13, 1.213690126178335e-08, 4.2748093953548505e-09, 1.7147652187077256e-08, 6.575653088702893e-08, 5.870138153341031e-08, 2.5308359852260764e-08, 1.9560413733188398e-08, 1.9900253320215278e-11, 9.479950461785402e-13, 2.4431563543092505e-12, 4.285254817659734e-08, 5.145731662992148e-08, 2.061765869143528e-08, 1.1853712678089323e-08, 3.5357143879366504e-09, 2.604114683890657e-07, 3.7400204461190967e-11, 4.642893003392601e-08, 1.686078832108251e-08, 8.171120030597834e-11, 3.9659991957208263e-10, 7.742993091142125e-08, 1.9508534870003869e-13, 1.1290593704416096e-07, 4.1099831094015826e-08, 2.60247389860524e-07, 2.213249583604693e-09, 3.49690076895115e-09, 1.516662351264131e-08, 2.3128993165144607e-10, 5.7291069666121075e-09, 5.809308034621097e-10, 8.687914743177316e-08, 2.9906338738783234e-08, 1.1344598871421141e-11, 5.594148477783278e-10], [2.9590456751549254e-09, 2.4059051639824247e-08, 3.691650318771167e-09, 6.3691261154019685e-09, 8.832785169943236e-08, 1.3163586887188217e-09, 9.903545361567012e-08, 2.430937584563253e-08, 4.085828209099418e-08, 8.77003525356912e-10, 2.829259670988904e-08, 3.629726963438884e-09, 9.046239313192928e-10, 4.085073168624831e-09, 1.855886466728407e-08, 1.031051866107191e-08, 1.6590835372198853e-08, 1.9603938028467383e-08, 1.327433781926797e-14, 2.221802652968563e-08, 7.674038471350286e-08, 5.958458171306802e-10, 1.4531698511177638e-08, 2.833568935045605e-10, 2.539660926004217e-08, 2.081793848418556e-09, 1.0877901956973801e-07, 1.8350546082679386e-10, 1.5637322547945587e-08, 1.775333435816151e-09, 7.123743955839146e-11, 1.0619866941397049e-07, 6.621794312877682e-08, 2.1417733364614833e-08, 9.328260830443469e-09, 1.4893247746172733e-10, 7.823749981206163e-10, 4.2584363227522737e-13, 4.447323576073359e-08, 2.232788176570466e-08, 3.964700123759712e-09, 1.1179086101265057e-08, 1.935476667824787e-09, 1.6988890649827226e-07, 2.6595906033044514e-10, 8.167673826164901e-08, 1.800793114625776e-08, 3.9938035517606e-12, 1.1865660676235734e-09, 8.491201697324868e-08, 1.3069202838000837e-11, 9.626936048334755e-08, 4.024337485475371e-08, 8.871118239994757e-08, 2.9481310725998355e-09, 1.4006595883131467e-09, 7.446714800352083e-09, 2.869147142092743e-10, 4.85331508315312e-09, 3.751916277661138e-10, 1.1064805960359081e-07, 9.857080129904716e-08, 9.16299913548968e-13, 7.169448923427524e-10], [2.3057188103248194e-10, 2.86795587278732e-09, 4.0146455604350706e-10, 6.751252890069281e-10, 1.2242516334026732e-08, 2.861985648472398e-10, 1.0244117554236709e-08, 2.738049786898955e-09, 7.975582860808572e-09, 9.63476659565643e-11, 3.126109149320655e-09, 2.155813444426613e-10, 1.8070044072171498e-10, 3.7277411712999253e-10, 1.8019032932414802e-09, 1.4008946225274599e-09, 2.1041131059718055e-09, 2.4986406277349715e-09, 1.0575843738762749e-15, 3.7623268944741994e-09, 7.331791174181035e-09, 4.6202191378297286e-11, 2.707284840752777e-09, 7.40644212626762e-11, 3.488246802518802e-09, 3.360478284530899e-10, 1.0909041670004171e-08, 8.091214330485652e-12, 2.275897914572056e-09, 2.531152787366153e-10, 6.511095482220064e-12, 1.1478742401038744e-08, 8.176087362699036e-09, 2.0244335097174826e-09, 1.1354055473589142e-09, 3.7930669889718605e-12, 1.2083944088414622e-11, 2.0136537971999005e-14, 4.362728844853336e-09, 2.4314639190947673e-09, 1.258050746910655e-10, 4.236114514721834e-10, 2.57001447900862e-10, 2.74069513750419e-08, 3.073728771507689e-11, 9.957298985341367e-09, 2.117475306206984e-09, 1.5004143760766198e-13, 1.4984018192887305e-10, 1.0850939702322648e-08, 4.3120724005363265e-12, 1.3235617934981292e-08, 4.198442482561404e-09, 1.5816226550668944e-08, 4.0597339379111474e-10, 2.3156448980543587e-10, 1.5567140909666932e-09, 5.654200024851619e-11, 1.7947061892176208e-10, 1.0512988916910881e-11, 1.3843236779109702e-08, 9.488466901075299e-09, 4.353444417026092e-14, 5.76913065930551e-11], [8.434200560181182e-10, 5.398480329432687e-09, 1.395203286236324e-09, 4.4284131917038394e-10, 2.3906443047394532e-08, 7.036695670592508e-10, 2.088680162160017e-08, 4.4131862608765005e-09, 1.94293203747975e-08, 1.4777754575590052e-09, 4.613405213405031e-09, 4.742973236382397e-10, 1.8413678914974696e-10, 1.6994042839613144e-09, 3.305065332526169e-09, 2.2624497830747714e-09, 9.320032745563367e-09, 3.6543792436560807e-09, 4.138018866364085e-14, 4.788219598594878e-09, 6.65286536971621e-09, 5.535248925880865e-10, 4.749714843654829e-09, 5.3544967071328387e-11, 4.110366713661051e-09, 2.5535726311254336e-10, 2.2614697670064743e-08, 1.1252640529438307e-12, 2.799914078366328e-09, 9.506352371957405e-10, 1.6921587742135813e-10, 2.1349542578263936e-08, 1.213542155653613e-08, 3.877840271115929e-09, 3.79629705449247e-09, 1.778309791089505e-11, 2.356429721489528e-12, 5.653236125752192e-13, 9.385527910410474e-09, 8.549393193391097e-09, 8.808274665206284e-10, 1.4553416249896145e-09, 6.736347035740664e-10, 3.9963673259535426e-08, 2.2510731126357264e-11, 1.4466905007282094e-08, 3.60297924828501e-09, 3.187598839396455e-12, 1.032435317793734e-10, 1.770360391617487e-08, 7.348509279379856e-13, 2.2848951175546972e-08, 8.285260477691736e-09, 3.1401405919950776e-08, 7.199384421952004e-10, 5.92464577398033e-10, 2.667357446028973e-09, 5.765521740586088e-11, 5.031420280410259e-10, 5.946017983537999e-11, 2.0197473915573028e-08, 1.636166047092047e-08, 1.0752403741681738e-12, 1.0324244237303049e-10], [4.0755581132145835e-09, 3.527766878619332e-08, 5.424818816379684e-09, 1.4780089374610839e-09, 5.86543258407346e-08, 3.001673576363828e-09, 4.7926027590960985e-09, 4.978714329695322e-09, 4.888490678922608e-08, 3.2318707710032868e-09, 8.479192459276419e-09, 1.8495563969267437e-09, 1.930912763015158e-09, 5.784946743858654e-09, 5.009259229638019e-09, 6.59792398494119e-09, 9.925055444170994e-09, 6.393652274283568e-10, 2.979723672663637e-14, 5.172032579991992e-09, 3.3354496942195055e-09, 1.590612619395415e-08, 3.789088598438184e-09, 6.571041488712126e-10, 3.025489192509667e-09, 1.149240924647188e-09, 2.2089610141051708e-08, 1.7853610256857166e-10, 9.944400858330482e-09, 9.80419478935346e-09, 4.23915080816073e-09, 5.35875122054108e-09, 2.355588257785257e-08, 8.827596431615348e-09, 8.255315875338454e-10, 2.3098160883971985e-10, 1.5952470455715684e-09, 5.602226581941094e-13, 1.3121399966564695e-08, 1.0404692218912714e-08, 6.5047718322830406e-09, 1.903172508477269e-09, 1.7585508604867073e-09, 7.355059494784655e-08, 5.448195714019555e-11, 1.9635390202665803e-08, 3.725500352658173e-09, 2.5429061079051962e-09, 7.399563184407043e-10, 6.58000498532374e-09, 4.519080693422134e-13, 2.4939913245702883e-08, 2.5350384902367296e-08, 3.939545933917543e-08, 1.584508524388184e-09, 3.8049494111014326e-10, 2.447793079340954e-09, 6.000383523385722e-10, 1.1040847125443065e-09, 2.808876242710312e-09, 3.419538430193825e-08, 1.7603211333039326e-08, 1.9030993957374481e-13, 7.899435550129397e-10], [2.336036086791893e-10, 1.7439093502602532e-09, 3.2821736994925743e-10, 3.082764599149357e-11, 2.7840274530177567e-09, 1.0476631367994926e-10, 4.876554160482272e-10, 2.210513161404748e-10, 1.7187766765403012e-09, 1.8502312182366865e-10, 3.193468545159561e-10, 1.3018991440461036e-10, 9.747878199073412e-11, 2.8568503118719946e-10, 2.0865340011333444e-10, 3.321314334669978e-10, 1.068028887551975e-09, 8.34490462842119e-11, 6.088679289144804e-16, 8.314970378897613e-10, 5.600852559517477e-10, 9.435568992799404e-10, 2.2481513872740777e-10, 1.3240453004825792e-11, 1.525050086215174e-10, 7.035540205979629e-11, 1.8688399716637605e-09, 1.6112700366652244e-12, 5.742021302879152e-10, 1.7674796348732258e-10, 4.3009293348994504e-10, 8.286702990467631e-10, 1.4689514049592844e-09, 3.345712040747628e-10, 1.5318994683877207e-10, 5.449962963560706e-12, 1.9873278370163838e-11, 8.381387624949513e-14, 6.547387076949462e-10, 4.1753278612333133e-10, 3.2445407471826115e-10, 1.1125807219958261e-10, 1.0253638910162621e-10, 3.333712417230572e-09, 1.987001275322031e-12, 9.816513157900886e-10, 1.823165507452984e-10, 2.245554610313949e-11, 3.425144542990033e-11, 9.559357749822084e-10, 1.554157396852461e-14, 1.2983105701636077e-09, 1.3677036170278711e-09, 2.586247660474328e-09, 5.985954787401937e-11, 2.3277822377987256e-11, 2.982685209929059e-10, 3.3691757717058124e-11, 5.2514721737839665e-11, 1.2478262867432477e-10, 1.8289314507313748e-09, 1.254538584127829e-09, 2.738161395754793e-14, 3.3881390748558005e-11], [2.3421908856846585e-09, 1.724336406994098e-08, 3.2502947000523363e-09, 2.1002424799299035e-10, 4.4597666004619896e-08, 1.672883609415976e-09, 1.3094837214566724e-08, 3.833110273632201e-09, 1.7532878260340112e-08, 2.680723421022435e-09, 4.79011141862884e-09, 1.2538438065590185e-09, 6.745307645772414e-10, 3.836870376972001e-09, 3.194716491350391e-09, 3.328275210989773e-09, 1.908414226647892e-08, 2.170346347085683e-09, 8.765730518832046e-15, 1.452553188840966e-08, 1.1057144533310748e-08, 1.0978607356548764e-08, 3.90209509149031e-09, 6.565731291985344e-11, 1.6350958365052293e-09, 5.517293844015114e-10, 2.8861789402867544e-08, 1.7271005589222788e-12, 5.847896389354901e-09, 6.704735655560512e-10, 1.058028509248743e-08, 1.54742014757403e-08, 1.789170944732632e-08, 3.761185141115675e-09, 4.383398533036598e-09, 2.1423201754244836e-11, 2.6387258263843583e-12, 2.746155950208995e-12, 8.787657712616692e-09, 7.961743264672805e-09, 8.441659815616731e-09, 2.203510263143471e-09, 1.101595592523097e-09, 5.1176073156966595e-08, 2.516874729463492e-11, 1.7264587981458135e-08, 2.9235598386634365e-09, 1.0604830902316564e-10, 2.221094280718816e-10, 1.9255764982517576e-08, 2.740069727103639e-13, 2.014486355506051e-08, 1.5452352286615678e-08, 4.788324048377035e-08, 5.791460644388735e-10, 5.316153073309238e-10, 3.974339524148718e-09, 1.7701502763589616e-10, 1.0781813220006597e-09, 6.776175176526067e-10, 2.4073003146440897e-08, 1.8580085026087545e-08, 7.501095556326776e-13, 2.0745533069188582e-10], [9.196920308651713e-11, 2.671814991472843e-10, 4.1340077194806923e-11, 2.6892765792041473e-11, 1.6746772857345604e-09, 3.7665448537893553e-10, 2.0351882401570265e-09, 5.282758119840025e-10, 2.225763351404453e-09, 5.045667217373762e-10, 4.912554252278767e-10, 5.975246686329427e-11, 1.342583162700084e-11, 3.0200367207022794e-10, 3.624116007294731e-10, 2.454443592814215e-10, 1.6922220291704093e-09, 3.413326288281837e-10, 3.321037462232241e-15, 6.258300544459416e-10, 9.683316370967532e-10, 5.653156276430593e-10, 2.181480551755044e-10, 3.768382481061927e-11, 4.751390947355105e-10, 5.346509346360051e-11, 2.7278304060018854e-09, 6.586875142544635e-13, 2.9566329939889613e-10, 7.823392628170112e-11, 5.2854276511027365e-11, 1.3550331967593365e-09, 5.632697086532801e-10, 5.502364119891467e-10, 2.671263210629604e-10, 2.546505888101347e-11, 3.3763383798859903e-13, 2.019796412370753e-13, 1.0090163149456544e-09, 9.16947406892632e-10, 4.95299468106225e-10, 2.3023959475065858e-11, 6.458569096201572e-11, 6.281176134770305e-10, 2.843911521208109e-12, 7.576506089179702e-10, 3.189067343534191e-10, 3.813752970111689e-13, 1.0848153972342622e-11, 1.7922771045064678e-09, 1.3086474720709618e-13, 1.450478515074849e-09, 8.23894674706338e-10, 1.598119747647786e-09, 1.3009054770918294e-11, 4.334795022931104e-11, 8.314600397074656e-11, 6.5660268021294765e-12, 1.0502880509744017e-10, 2.9522984751340076e-11, 2.3324411291270053e-09, 5.584893658650003e-10, 1.771521975337323e-13, 3.498107706279008e-11], [3.588264451195866e-12, 1.4809518195102456e-11, 4.510323104583991e-12, 1.7034267876456233e-12, 5.939366359841713e-11, 9.505323611547212e-12, 7.389345385577784e-11, 2.6358793620007148e-11, 8.502731851933731e-11, 2.0679940399004337e-11, 2.88542644638623e-11, 2.32513162369552e-12, 1.1904171225152194e-12, 1.682319908380414e-11, 1.7586978748318494e-11, 1.4417148898326904e-11, 9.311326709671164e-11, 2.3603502832814094e-11, 1.1019177342284301e-16, 3.4859885811311386e-11, 7.179011551894376e-11, 3.076502594345776e-11, 2.4979681517711683e-11, 1.0527847040323057e-12, 2.912637839247445e-11, 2.2985400475322715e-12, 1.2658918357999482e-10, 2.3707937197615936e-14, 1.9074604742930212e-11, 5.433889015832305e-12, 2.768728172078405e-12, 4.419491855811586e-11, 6.339649638587019e-11, 2.773557078450395e-11, 1.3032169961235684e-11, 4.4062523811908005e-13, 1.244389570635154e-14, 3.4451786109818312e-15, 4.8967996324478236e-11, 4.2065469163521385e-11, 3.412688534543129e-11, 5.446630559763355e-12, 3.785929902910823e-12, 1.4750470289648376e-10, 2.1675086584512643e-13, 5.58790722027247e-11, 1.9632942840908107e-11, 5.5153764313888715e-14, 1.2570399365516294e-12, 1.049421868848377e-10, 1.0022327613006324e-14, 1.1456386533881258e-10, 4.1214046064830256e-11, 1.7623390247134552e-10, 1.423782858105127e-12, 2.791065555757255e-12, 1.187479628517174e-11, 5.488328975317147e-13, 2.755302062895648e-12, 1.4011197800936626e-12, 1.258052412245192e-10, 2.9096142162288174e-11, 3.753771771907886e-15, 8.538261785963341e-13], [1.5296282296350938e-10, 6.725667245355282e-10, 2.8306965105251436e-10, 8.055064254497424e-11, 2.495591733264746e-09, 4.493405925121152e-10, 2.3433557316820952e-09, 1.0588296905922334e-09, 3.861091446566434e-09, 7.602876661572111e-10, 1.227837720385594e-09, 8.442443272249633e-11, 5.916086370794105e-11, 6.520263773346358e-10, 6.792251205922639e-10, 6.037048083662455e-10, 4.042614687449486e-09, 1.0038840869697196e-09, 3.1131973880744275e-15, 1.5095985572699533e-09, 3.3020826073482112e-09, 1.5739828329586203e-09, 1.3050164282546461e-09, 2.5091909452990002e-11, 1.1568039859355395e-09, 7.557000164526428e-11, 5.213764087130812e-09, 3.578104609477939e-13, 7.401688151276176e-10, 2.845169377874157e-10, 6.415327297171203e-11, 1.7726740075829639e-09, 2.8951505637309083e-09, 1.170457841759287e-09, 6.621128645356578e-10, 1.0109879947095557e-11, 3.349926672863157e-13, 1.1215527340397227e-13, 2.032129797768789e-09, 1.8035197779653345e-09, 1.9255390615313672e-09, 3.415176197396619e-10, 1.7773264804343825e-10, 9.22429865823915e-09, 2.8439314705280827e-12, 2.512657637510074e-09, 8.73927430422583e-10, 2.7399799009536485e-12, 2.2280682507314076e-11, 4.410009246669233e-09, 2.1736606926284902e-13, 5.40762190581745e-09, 1.7272220320663223e-09, 8.755669078652772e-09, 5.3833677099435207e-11, 1.3252891839510283e-10, 6.414169750890153e-10, 2.0330650357669455e-11, 1.0590290450140927e-10, 3.3270761146120265e-11, 4.965590161276623e-09, 1.6558465709692882e-09, 2.5890035016025437e-13, 3.281607971472589e-11], [6.497429764357188e-12, 2.9208799823265963e-09, 9.124486582967606e-11, 6.233048799320073e-11, 8.49574632866279e-09, 1.0111880222041236e-09, 1.2863454745826175e-09, 1.4079336654870822e-11, 6.6693046640864395e-09, 1.4554429883517628e-09, 6.407502306515767e-10, 5.254996958414804e-12, 3.921541476964441e-12, 1.3156353784182784e-10, 2.114717905996044e-12, 3.517413790787849e-12, 1.996878440380101e-09, 1.1549027359447628e-11, 4.044216709308536e-18, 6.727533807815433e-11, 1.117430770136707e-08, 1.5984024104298555e-09, 2.951810462725746e-10, 1.3704031832928454e-11, 5.076535858350439e-10, 5.54534716756816e-12, 8.671604406762512e-11, 3.499966972058538e-13, 8.416413399547906e-12, 6.618709469385919e-10, 8.694205945458666e-12, 6.059349022535798e-09, 2.8005140428888353e-09, 2.458766523716349e-10, 5.373282721543582e-11, 4.127359044814316e-12, 3.768267893767196e-15, 7.723637742286342e-15, 4.2078876494322515e-10, 7.564122245229399e-11, 9.748500895412349e-10, 8.811129048602595e-10, 8.041079087306446e-12, 3.0398798145370165e-08, 2.501605259747075e-12, 1.3120931008359094e-09, 9.536661391140733e-12, 1.507302041427877e-13, 2.6204101388760392e-11, 6.534650598410963e-11, 3.1718947807917244e-14, 7.724440642675745e-09, 7.035406545535805e-12, 2.0441943249238648e-08, 7.231666654394786e-11, 5.3890274187562426e-11, 1.1284220780005683e-10, 1.2569017007746375e-11, 8.007548790711638e-11, 3.470196352495236e-12, 2.22017781763284e-12, 2.4961444022864043e-09, 2.0389119808738448e-13, 3.1406533623767885e-11], [4.5949524567212574e-12, 5.8002562752790254e-09, 1.8503082399590198e-10, 7.634959886537729e-10, 1.885065969986499e-08, 9.868177386351817e-10, 5.184633167232278e-09, 1.265690677265674e-11, 1.3257556830126305e-08, 1.6936170244008508e-09, 2.6292874544253664e-09, 3.75113915623837e-12, 3.989528325754055e-12, 2.8308475008564926e-10, 2.4956482193305707e-12, 3.5346142245734624e-12, 1.3285821331976422e-09, 1.6491735060908397e-11, 1.0178184798735108e-16, 2.8447225131067455e-10, 1.715039132932361e-08, 2.967953438570703e-09, 9.758764629719252e-11, 2.715886196491546e-11, 6.667176255525931e-10, 6.631067656776013e-12, 3.8740254060254387e-11, 1.1663143595439657e-13, 5.0853752632529226e-12, 1.7656536233090492e-09, 9.315305193879908e-10, 2.3159543616202427e-08, 3.9395864348534815e-09, 4.2393125121442665e-10, 9.847487408842781e-11, 2.630024236588424e-12, 6.620273448366965e-13, 8.506967035643541e-15, 1.6705062680366645e-11, 3.3692684753283686e-10, 2.3214754563127826e-09, 9.552061364104247e-10, 6.592475697286826e-12, 1.2310688468630815e-08, 7.871604409959154e-12, 6.733385848889384e-09, 8.065791957945212e-12, 2.457951160314553e-12, 2.01942056826665e-11, 1.1699129165432254e-10, 4.137009745192044e-13, 1.2172748142802448e-08, 8.077455371235942e-12, 8.383305072356961e-08, 2.425009637541109e-10, 6.004807762138853e-11, 1.0193133143099331e-10, 6.814607472066525e-12, 3.0439409326454836e-10, 1.4748725851720934e-10, 2.6389159954454122e-12, 1.9368252779372597e-08, 1.7034271671163836e-13, 2.2664603527289273e-10], [8.483498463180555e-14, 3.957909347485078e-11, 1.4656385913941472e-12, 1.5465316744248114e-12, 3.0512664617177165e-10, 6.688005704802436e-11, 2.6966880117829106e-11, 2.141553536068319e-13, 1.5030660049930589e-10, 1.8710010971090263e-11, 2.7744800814438753e-12, 9.7769462339449e-14, 1.6610452976181106e-13, 6.468986370883334e-12, 4.767656741947422e-14, 2.0773745950438544e-13, 6.134931451740044e-11, 2.1474083633250124e-13, 7.006492321624085e-43, 1.508112211501267e-11, 3.8400820717710005e-11, 8.320837074915488e-11, 4.376856949789287e-12, 3.693636379826365e-13, 2.6145637738173022e-11, 1.203164222982403e-13, 1.6966210337684973e-12, 1.034071967458269e-14, 4.873252409248741e-13, 9.633066913594668e-12, 5.456306413631484e-12, 2.2553148237847154e-10, 1.3548848154520954e-10, 1.666956156443078e-11, 1.0390285853922876e-11, 2.989161652575123e-14, 7.221896876007751e-17, 1.6888174072686608e-22, 8.473744709386333e-13, 5.825895863821595e-13, 2.5295597214092247e-11, 2.2596782084383094e-11, 2.6845322839696983e-13, 4.3790501780271995e-10, 8.030100700053347e-14, 4.6320520336040616e-11, 2.7261634789887967e-13, 2.9881408614066513e-16, 3.0882566469381256e-13, 1.4878836010479013e-12, 2.554505288822793e-17, 2.2002470678739172e-10, 4.0938284121168345e-13, 5.940469782750313e-10, 9.839559722557567e-13, 1.233545925995172e-12, 1.329228610860711e-12, 1.5921415390512256e-13, 6.520765915077331e-13, 6.272444992875756e-14, 5.148177484358765e-14, 1.2202315546883113e-10, 3.338892668111651e-32, 3.950981455522716e-14], [5.910640900330666e-12, 3.4268521353908454e-09, 1.3538349608044342e-10, 1.7015515385576663e-10, 1.7468012813992573e-08, 6.030860810746219e-10, 7.927680734098885e-09, 9.063068871772995e-12, 1.1053564286100936e-08, 1.687453066168132e-09, 4.54053489251649e-10, 3.905359976380529e-12, 3.819155929007945e-12, 2.1199253463777268e-10, 1.6229423404137688e-12, 3.632551941537554e-12, 2.7530060453528904e-09, 4.35775027174401e-11, 6.950030401930152e-17, 3.4849706453954354e-10, 2.9787200261921498e-08, 3.6992462426610473e-09, 1.4835407902147324e-10, 9.13638869420863e-12, 4.45227216205879e-10, 6.677933379883871e-12, 1.0723661542089147e-10, 2.561999007041904e-13, 1.8657733344418226e-11, 1.6154253490441306e-09, 5.512346135105872e-09, 4.363893779668615e-08, 2.8588889033898113e-09, 3.0628397040821653e-10, 1.4911524792715625e-10, 1.8098590117907043e-12, 4.523779354587143e-13, 2.962612590689563e-14, 8.889760594321672e-10, 5.814183579033738e-10, 1.8427584791425033e-08, 1.009771155580097e-09, 8.43391762678225e-12, 8.472689216887375e-08, 2.9670966204820015e-12, 3.245637092419429e-09, 3.0934459854803364e-11, 1.9209903578867177e-13, 2.0776205408856718e-11, 9.293663061349378e-11, 2.9521459062042954e-13, 3.51503572915135e-08, 6.39030191609824e-12, 1.0087121893320727e-07, 1.5665295449718286e-10, 5.3294028912187486e-11, 2.596155790346444e-10, 7.643020764891428e-12, 1.2204753874200946e-10, 3.787349253658867e-11, 1.954059960715404e-12, 5.1946653201184745e-08, 4.65160852544666e-12, 1.4274786214185653e-11], [4.6898747228405965e-14, 3.11107498270069e-12, 3.3016628710538787e-13, 9.042305072022236e-14, 2.1399103322661261e-10, 1.4929803920926688e-11, 9.662508293484251e-11, 4.7831835334969514e-14, 1.8555736808201218e-11, 1.0800059631332903e-11, 6.021923844995447e-12, 2.8411653455254204e-14, 2.461145707805673e-14, 3.996971211037842e-13, 6.337577591354875e-15, 2.5269500034119652e-14, 1.7780768177266815e-11, 3.8060636050165145e-14, 0.0, 2.1625843477091067e-12, 1.2025583306929377e-10, 8.71558207549139e-12, 2.265360425288132e-12, 9.093536335177607e-14, 6.018193755841228e-12, 3.2542914353951916e-14, 1.929482506927982e-13, 3.377905560245e-15, 2.5459399738696382e-14, 4.7367569935841125e-12, 6.388121354056112e-20, 3.672277412714031e-11, 7.92669836019444e-12, 1.70612291655603e-11, 1.4673491371616776e-12, 2.4682307995962764e-14, 2.0481349308837588e-17, 1.3954460419562916e-18, 1.0143038318977116e-11, 1.8591626447985593e-13, 6.417416598125669e-11, 5.979005918838043e-12, 2.0366446430806345e-14, 9.82257053472324e-11, 7.534631657468965e-15, 6.55995258114217e-11, 1.2563947278387833e-12, 3.7422779186254494e-17, 6.291562865308464e-14, 6.299796703182134e-14, 8.969153527928165e-16, 1.6511036982080896e-10, 4.150707419913954e-14, 1.2159964701830006e-10, 3.877352540600232e-13, 1.346798920217468e-13, 7.972739628865286e-14, 5.464628654639793e-14, 2.6665963274302706e-13, 1.6845831912574993e-14, 9.142870244531129e-15, 1.2099193869019587e-10, 1.0252352352496663e-12, 7.789932436087776e-13], [5.538071303629044e-12, 6.349588854703825e-09, 7.454507150450596e-11, 6.395652757396064e-11, 3.051883012972212e-08, 9.724054894633127e-10, 9.044521576129227e-09, 1.471802367480901e-11, 2.0611723883234845e-08, 3.0965803254900948e-09, 7.3431194458351e-10, 5.175828515779912e-12, 3.0553188017784505e-12, 3.096478351505283e-10, 1.7581039705658053e-12, 4.139788772200559e-12, 1.918132097600278e-09, 2.3997175774281843e-11, 7.351969108272693e-16, 1.3831354950255559e-09, 1.2543255323294034e-08, 6.090105753031594e-09, 1.460540022257817e-10, 1.8061691031689975e-11, 9.12863618030002e-10, 5.666858909209038e-12, 9.457996191786222e-11, 5.87398998799088e-13, 6.439832608146068e-12, 2.3575337237957683e-09, 3.825892935793718e-09, 2.5466453834610547e-08, 2.344174188095849e-09, 3.926271308074547e-09, 1.525455317619162e-10, 1.675825927680008e-12, 1.045468724612808e-12, 2.189477576021795e-13, 1.9126304984240505e-09, 3.798550807232459e-09, 1.5177677781252896e-08, 1.1354575057964666e-09, 1.0300669171792176e-11, 6.716400946515932e-08, 3.4025031056539312e-12, 7.263665668943986e-09, 2.05769134370426e-11, 2.5211163452026897e-12, 2.5453823077059567e-11, 2.781827546094462e-10, 1.7062198008621632e-13, 3.08159613382486e-08, 6.395695605065921e-12, 6.501766591782143e-08, 4.5894338329688367e-10, 7.15314196764183e-11, 1.0617479118124606e-10, 1.1172477873411246e-11, 2.5264187963891516e-10, 1.2078019140382423e-10, 2.0472245860353455e-12, 3.253364155852978e-08, 2.6956470909611507e-12, 2.7368827690277264e-11], [9.34341579800213e-12, 3.259856384829618e-08, 1.735106780476059e-10, 1.6978222994179504e-10, 5.601121699783107e-08, 3.7676886610604754e-10, 2.1523055337979713e-08, 3.9510002908249575e-11, 3.3551760481032034e-08, 2.68978705975087e-09, 6.348707781711482e-09, 1.1491721636780472e-11, 1.365839299299898e-11, 9.508221987530874e-11, 3.746448897640198e-12, 1.63220548188292e-11, 1.146068573376624e-08, 5.9667278062836e-11, 4.514254977315037e-14, 4.7116617274411965e-09, 2.2925590315026056e-08, 3.997247866038833e-09, 7.342907532015275e-11, 8.750448282635048e-12, 4.85873563604855e-10, 1.153842819900941e-11, 1.1189331405869751e-10, 2.769873631673636e-13, 7.327170988002951e-12, 8.295517606171643e-10, 1.2837164220513841e-08, 4.475489134847521e-08, 2.2271715582888874e-09, 7.88035803278575e-10, 2.0532178734988804e-10, 4.516102335844208e-12, 1.3256731866764793e-12, 3.094706565662242e-13, 9.831031544393909e-10, 2.8877487068257324e-09, 1.767564050680903e-08, 1.1986461823099148e-09, 9.476933127139375e-12, 5.11768938338264e-08, 1.4926643905274761e-12, 1.55015094094324e-08, 3.039001342242109e-11, 4.131620393033053e-11, 2.4533196654741296e-11, 8.560049891137567e-10, 1.368801312530074e-13, 2.462517123547059e-08, 1.5542322637229766e-11, 6.455167778085524e-08, 8.93429358272968e-11, 2.2760749882055897e-11, 1.2704441665345456e-10, 1.9556262859099505e-11, 6.168720534382999e-10, 2.610965332827675e-10, 4.742850209793481e-12, 3.758647437734908e-08, 5.654516091468942e-11, 3.332637291131313e-11], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]], [[7.793964362790007e-10, 1.3205235375888417e-19, 3.670064668578537e-20, 1.4756410537941633e-09, 1.6308255856856135e-09, 7.791074729812664e-11, 8.769390213991812e-10, 8.085467295693149e-10, 8.311827892626411e-10, 1.012707509539558e-13, 2.137501980969958e-12, 3.607310563844316e-16, 3.335837994722368e-10, 2.919198563433589e-11, 3.937188353120291e-10, 6.651401651680544e-10, 2.7362959120758035e-10, 1.2746377948079628e-14, 6.730695135129394e-21, 1.8382065075824017e-13, 7.920155087326464e-10, 6.744615976828072e-10, 6.533764640437312e-10, 4.0693062808294655e-10, 2.501399087861955e-10, 4.4712256119794347e-10, 1.2889425082818207e-09, 2.7431157345603197e-10, 3.920031339160281e-22, 8.356621059198155e-14, 3.448599461552959e-10, 2.736174342654607e-10], [2.680197452864519e-10, 1.8768630905106223e-18, 2.488586282238995e-20, 1.061519344647266e-10, 2.235834156705252e-10, 2.5711979420584008e-11, 3.534354198198031e-10, 3.1482133566740345e-10, 7.696868142836877e-11, 2.1102822993831344e-14, 2.5731309173226274e-14, 1.6523687124465376e-17, 1.3703295442812902e-10, 6.513383582484877e-12, 7.254703088266368e-11, 1.553272926946292e-10, 1.1261355042924137e-10, 8.008448759152338e-16, 7.067021905237214e-22, 7.984776983485306e-14, 3.1866623229070967e-10, 2.6282670484434334e-10, 2.5674384840357334e-10, 1.105544406021508e-10, 9.675971135436612e-11, 1.7923990069945717e-10, 1.3499100448566281e-10, 7.305713672911551e-11, 4.233591837852457e-26, 3.217623379108553e-14, 5.727099697261373e-11, 1.0509856179785615e-10], [1.1573155767052867e-09, 8.810034132425205e-21, 3.993016497675839e-21, 7.429790671587e-10, 1.2256897718998516e-09, 1.028077345477385e-10, 1.5359322702579448e-09, 1.3222867245588077e-09, 5.078808484881847e-10, 5.7766088462120335e-15, 3.931534256680115e-14, 1.2556323765869142e-16, 5.879590703194992e-10, 6.022572848415897e-13, 4.032415790167221e-10, 6.83626044661878e-10, 4.912704132387091e-10, 2.231000403021795e-23, 1.5084127185012462e-21, 2.8352696573993516e-14, 1.373045455110855e-09, 1.1198657556832359e-09, 1.0759010349303821e-09, 4.751535831459819e-10, 3.9392297757068206e-10, 7.73257236019731e-10, 7.505190913192905e-10, 2.9337493545611437e-10, 4.408046790001631e-28, 1.2831706353120132e-15, 1.8343443430879347e-10, 4.228304928410864e-10], [4.988800483829436e-10, 2.254881166628541e-19, 2.9602550476640667e-21, 4.283139468097552e-11, 3.520273517132466e-10, 4.4730510961876746e-11, 6.529848883829459e-10, 5.837920702411736e-10, 1.314554853859562e-10, 1.650825709584216e-14, 1.3525609126631422e-13, 8.396319968776659e-17, 2.5251786772706453e-10, 2.476714579952022e-12, 1.5890565252529854e-10, 2.4407240117874096e-10, 2.0739204797948219e-10, 1.6889333680546799e-19, 4.1635409623517376e-22, 5.969913962049905e-14, 5.912214606773603e-10, 4.91513774125707e-10, 4.758799465598429e-10, 2.0588350468919714e-10, 1.6645471112575194e-10, 3.3204999860814155e-10, 2.2563127755059753e-10, 1.228746271397796e-10, 2.786735647869534e-28, 4.3071300107229427e-13, 2.7162994076235236e-11, 1.88786916655026e-10], [2.3878570232227503e-09, 5.2443372004897e-21, 1.3690100660919907e-21, 8.450050104080731e-10, 1.9192503142306805e-09, 2.22218077272629e-10, 2.8949664887534254e-09, 2.6367603656041183e-09, 6.837788668612177e-10, 8.048506387184004e-14, 4.1148313055516805e-13, 1.5659432690448028e-18, 1.1412498723828435e-09, 4.8040082328837386e-11, 8.657275452073065e-10, 1.2625054335302366e-09, 9.067063211354309e-10, 1.2839057752069352e-14, 1.6957492858150189e-22, 9.332436895752999e-14, 2.649660268971843e-09, 2.2019275291995655e-09, 2.139662669264908e-09, 9.247677068557891e-10, 8.108116400507015e-10, 1.4795549230228744e-09, 1.2449344888310065e-09, 6.576029165650255e-10, 5.759607007392643e-22, 4.896407782809149e-15, 4.442404499815922e-10, 8.961212327740498e-10], [1.6377876832507354e-10, 1.666678668210006e-18, 8.991810303208001e-21, 4.860245192417345e-11, 9.746086576667423e-11, 1.1536248518961845e-11, 1.4734749531619684e-10, 1.3233168727477818e-10, 4.1687358426356624e-11, 6.835885888378454e-14, 8.809160269730026e-14, 2.4152257753339717e-17, 5.917245859965448e-11, 1.375112697321601e-11, 5.520785217871804e-11, 6.8076391745997e-11, 4.808269754574823e-11, 1.3426008385836272e-14, 1.40603522743499e-23, 1.5551455793700458e-13, 1.3391635023118909e-10, 1.1070215577557718e-10, 1.0858539761793295e-10, 5.2271686978855314e-11, 4.201225131672537e-11, 7.368301108146014e-11, 9.022298880223545e-11, 6.559336407363503e-11, 6.451099505279822e-22, 7.288702417497257e-15, 4.239020245933034e-11, 4.558640617768894e-11], [3.2615201650543213e-09, 4.083327980019151e-19, 2.0767042586703584e-23, 2.144034505491277e-09, 2.796916698244445e-09, 2.868554560553349e-10, 3.808407811334291e-09, 3.5053406843843504e-09, 1.5278061038515034e-09, 6.261588740997387e-14, 6.52918637124994e-13, 1.473844669450419e-18, 1.4838635875591422e-09, 4.951854898349595e-11, 1.2848929697995004e-09, 1.7793210238536972e-09, 1.1869173421885648e-09, 1.1758599465210712e-14, 7.006492321624085e-43, 9.506756276297934e-14, 3.489087907482258e-09, 2.925471420667236e-09, 2.8459186118823254e-09, 1.4707579598649545e-09, 1.0789497073560028e-09, 1.9480865809384795e-09, 1.5105878770071968e-09, 9.548544177562235e-10, 5.325365458577147e-22, 3.522511236758491e-15, 8.056620925955826e-10, 1.1987973946858688e-09], [7.392854661780746e-10, 6.170086496603879e-19, 4.195727608098329e-20, 1.899739032751313e-09, 3.445895346843031e-09, 8.096231324250525e-11, 9.655386490337037e-10, 8.774458937210738e-10, 1.0676979300683342e-09, 3.1240506329858336e-14, 7.185303133733223e-12, 4.445016619558163e-16, 3.6194033881109533e-10, 1.63130862984584e-11, 3.7923827966857004e-10, 8.149289021375239e-10, 3.0514402116210704e-10, 4.966327774283022e-19, 1.8592059196561533e-24, 2.1610117124579165e-13, 8.487370251053505e-10, 7.235727572663109e-10, 7.020110603939145e-10, 3.285908212191657e-10, 2.5842372686213366e-10, 4.893576655007337e-10, 2.3125719117444987e-09, 2.7250399159406413e-10, 1.0816743192115636e-23, 1.1355747071839506e-12, 4.640511308551254e-10, 2.822279077108192e-10], [3.622345978726571e-09, 5.483310487249836e-19, 1.1209620465956183e-20, 1.241321267997364e-09, 3.183082686319949e-09, 3.7975417255253774e-10, 4.55769511020776e-09, 4.259936847716972e-09, 1.214626177414857e-09, 2.6950399648496132e-14, 2.690192632461702e-13, 9.030698015433377e-17, 1.8175950744492297e-09, 7.702333909564985e-11, 1.571170193948035e-09, 1.9739758716497136e-09, 1.424791840065609e-09, 7.202800571151462e-15, 9.427259136684369e-27, 1.4664236892922983e-13, 4.1969840935962566e-09, 3.5491096728179627e-09, 3.4690459393971196e-09, 1.5051283552836026e-09, 1.3344578775331684e-09, 2.3407606963843364e-09, 1.7435876076277168e-09, 1.097930191207297e-09, 1.1984255754120923e-23, 9.843926804205044e-16, 8.098740011952543e-10, 1.4872376663532805e-09], [1.7385943795744652e-09, 4.0578311716129694e-19, 8.70260041529883e-22, 3.9338074464545514e-10, 1.4201831932680875e-09, 1.5389177432378887e-10, 2.2760291429335666e-09, 2.0203787531869466e-09, 6.50878073660266e-10, 1.250902491669887e-14, 1.0876398523138042e-12, 2.10906604742115e-17, 8.74831651564989e-10, 1.3046685043080486e-12, 5.814216330612965e-10, 9.968246228453381e-10, 7.235163579366599e-10, 4.816075747450307e-21, 1.238905124043497e-30, 2.062587297138596e-13, 2.043654356853608e-09, 1.690979245516644e-09, 1.6358493448720424e-09, 7.075733332584377e-10, 5.865301577756554e-10, 1.1522106602157578e-09, 6.416551734389486e-10, 4.298079669950994e-10, 1.5601051969461712e-34, 1.720774960917897e-15, 2.0666685029979703e-10, 6.510299521700347e-10], [2.480915473057621e-09, 6.226769048079075e-19, 1.1661727177298264e-20, 1.229112589484771e-09, 2.97945401683819e-09, 2.631237450145818e-10, 2.8708180277448037e-09, 2.636491469587554e-09, 1.9553312302633685e-09, 1.1086849483182143e-13, 5.966376698252063e-12, 1.0111318164994281e-15, 1.1549431411239652e-09, 1.3865690540182385e-10, 1.0937231120777824e-09, 2.6342799053225008e-09, 8.982323773665257e-10, 4.2558879055458465e-14, 1.0137897112726672e-21, 1.212148545599867e-12, 2.6178925693898236e-09, 2.1909205560888267e-09, 2.1267145822179145e-09, 1.190352372226755e-09, 8.152862829291507e-10, 1.4615804122541931e-09, 3.0612219426018328e-09, 9.600735761949863e-10, 1.633153210851055e-21, 2.2687665260340923e-15, 8.997593226034439e-10, 8.820340013926398e-10], [1.7786204731251587e-09, 1.1139204971478502e-18, 2.3066777948699336e-20, 1.9103945092524555e-09, 3.6477387777011927e-09, 2.0705370751272767e-10, 2.250056141406276e-09, 2.06133132785169e-09, 1.6330108376649832e-09, 5.3665571471276166e-14, 3.680734970284982e-12, 6.739952863772387e-16, 8.805529638777898e-10, 7.104167948357443e-11, 8.825176700533177e-10, 1.6673991076743278e-09, 7.06323277643861e-10, 7.411597580781436e-15, 9.20773110027205e-21, 5.180212270423923e-13, 2.0667376698924045e-09, 1.7162756771327281e-09, 1.6686345638561306e-09, 7.886496455888903e-10, 6.281054010237597e-10, 1.1485630224683518e-09, 2.9301796544700665e-09, 5.779409728567941e-10, 5.679570820779602e-22, 1.7089570047718744e-13, 5.890942733621785e-10, 6.9609706887519e-10], [1.2576601982061675e-09, 5.307030026908661e-19, 2.3419514805305956e-23, 8.743006318923108e-10, 1.9925052718861025e-09, 1.2124391768342235e-10, 1.5088685856312622e-09, 1.3760249606420416e-09, 9.2031876564036e-10, 6.230110286171986e-14, 2.1534826873115254e-12, 4.951881333718483e-17, 5.785462109386685e-10, 3.1490234031483766e-11, 4.635883066317348e-10, 9.629689268209063e-10, 4.732363390047567e-10, 1.7755506334410538e-14, 3.031911789658782e-22, 3.2216151404571014e-13, 1.3412916333166436e-09, 1.1470457916828991e-09, 1.1109552167098968e-09, 5.753820753184868e-10, 4.161118394296892e-10, 7.676373980913809e-10, 1.1539518229852774e-09, 3.993855801631696e-10, 1.8395301288700255e-21, 1.8880207184983344e-13, 3.3572561397576806e-10, 4.5465875508909903e-10], [1.959704176712762e-09, 1.7214990487182377e-20, 7.987773790488448e-22, 1.1190808280048259e-09, 1.9412562668463806e-09, 2.1691794194200753e-10, 2.491103989754606e-09, 2.3092932011081757e-09, 9.061129069287688e-10, 2.2610888923452373e-14, 4.961623993604558e-12, 6.401069275256926e-16, 9.783867049861783e-10, 3.8067837077049305e-11, 7.384335920512797e-10, 1.5109907769428332e-09, 7.757053333001807e-10, 1.0409123514304106e-14, 2.71401356572371e-31, 4.1842012710527343e-13, 2.2907935548488467e-09, 1.907632274367188e-09, 1.8611187035944e-09, 8.435608878087919e-10, 7.076323416121966e-10, 1.2734563403782317e-09, 1.6253420831446874e-09, 5.345410225565672e-10, 3.384674372597242e-24, 4.4984114632058703e-13, 4.509487783188604e-10, 7.818714564677975e-10], [8.848670685068782e-10, 1.2209063832142337e-18, 2.5019484803059943e-20, 4.282863841353901e-09, 4.931837160881969e-09, 8.184231764518657e-11, 9.24449627959234e-10, 8.444567267673619e-10, 2.0765351660401166e-09, 1.267182973135883e-13, 1.569055649297546e-12, 1.2133310218054424e-16, 3.526760272709595e-10, 4.3924922726867877e-11, 7.28826554663442e-10, 7.61748275568408e-10, 2.8891875003544953e-10, 2.0131601463982407e-14, 1.0261192790551351e-22, 1.557878175420524e-13, 8.226906378361321e-10, 7.017081360416455e-10, 6.82756851055899e-10, 5.100946887104385e-10, 2.559348566411046e-10, 4.695406286003845e-10, 4.088428262605248e-09, 4.5049269870034436e-10, 5.716765170698666e-21, 3.0827180001399834e-13, 5.583343787307626e-10, 2.806022358914362e-10], [1.2640125612861652e-09, 2.450435452230085e-19, 3.2714273785326683e-22, 2.7677080627341866e-09, 3.863743103238448e-09, 1.248641884332713e-10, 1.6862414797813585e-09, 1.4784826696256914e-09, 1.5990626600626001e-09, 6.950672405258568e-14, 4.889685878417538e-12, 1.9608505017749183e-17, 6.107621630668802e-10, 3.9521851069590497e-11, 7.512171995571748e-10, 1.1600984617388121e-09, 5.410203951505821e-10, 6.569835825437017e-16, 3.8920223594038658e-22, 3.259657897335816e-13, 1.426643025936869e-09, 1.2371457192017488e-09, 1.1845188163661646e-09, 5.884356890639708e-10, 4.4912881747016797e-10, 8.497633707804653e-10, 3.0896984970496533e-09, 4.737480407968064e-10, 1.0260794258022033e-23, 1.215842313981308e-12, 6.492924531364963e-10, 4.685507537516287e-10], [5.919020829026067e-09, 1.2010880921650464e-19, 2.3283514617266e-21, 1.8360137854500636e-09, 5.034483052668293e-09, 5.888784460061913e-10, 7.668591983645001e-09, 6.840917610162478e-09, 2.089998618615141e-09, 2.316371514087326e-14, 1.002796912348558e-12, 8.028847959500182e-16, 2.9543014701260972e-09, 1.9479508284181435e-11, 2.075568605874878e-09, 3.4008211802216692e-09, 2.4261679332227004e-09, 1.6360712277867422e-18, 7.006492321624085e-43, 2.1625687623028772e-13, 6.903173144223729e-09, 5.750569354034951e-09, 5.555770510312641e-09, 2.4544588583808036e-09, 2.0769233000095255e-09, 3.896380551537959e-09, 2.8689413067439773e-09, 1.447332587112271e-09, 1.4284468099285295e-21, 3.991453028555705e-15, 1.034591523563222e-09, 2.267515730736136e-09], [1.0513649950638637e-09, 1.959590250752663e-18, 8.36400768326153e-21, 1.2479871580595159e-09, 2.69119371232307e-09, 9.913778825643149e-11, 1.3040938329211826e-09, 1.2003907867708108e-09, 8.771686155206737e-10, 5.855287364990233e-14, 5.408793598009505e-14, 1.0966078302658807e-16, 5.223776966545302e-10, 3.663473691073449e-11, 7.163259430065239e-10, 6.180754241746911e-10, 4.0952627400336894e-10, 9.635596086212533e-15, 1.4046839718132187e-22, 5.95860302288545e-14, 1.200609278662057e-09, 1.000238447623758e-09, 9.745108053849094e-10, 4.487731852798049e-10, 3.561929085016402e-10, 6.661552975906204e-10, 2.4146631361077198e-09, 3.7896938365200583e-10, 2.357475632056621e-23, 5.170839257939491e-15, 3.3316011061046424e-10, 4.0629360986699226e-10], [2.679277528734158e-14, 7.630182957447378e-29, 2.039426724946561e-21, 7.167323443188663e-15, 1.312553869439086e-14, 2.058937406757889e-15, 1.6549176579897656e-13, 1.7140541779979077e-14, 1.0282322682100137e-14, 1.373990755304983e-17, 1.2760787096860612e-17, 2.166980948082564e-19, 4.770755844919013e-16, 8.363340740975313e-15, 3.7560649018543403e-16, 1.4509381313066415e-14, 2.7550180290315113e-14, 5.957547074596354e-25, 6.327854186168541e-32, 1.1948029066501716e-14, 5.3954328391126946e-14, 1.378293112915029e-14, 3.2532716077266974e-14, 5.7810718628111164e-15, 4.9782303184809674e-15, 1.1204202848705616e-14, 1.058347677616693e-14, 5.39212576837673e-15, 1.1835228096211096e-23, 6.900740363589342e-17, 9.099049206763164e-16, 3.296470330388314e-15], [1.0698814056908645e-09, 1.4341940769804193e-18, 2.1692036082378882e-20, 6.214116443636897e-10, 1.4625353150776732e-09, 9.999689964956815e-11, 1.2360307222181177e-09, 1.1356610096768804e-09, 8.557520803087471e-10, 1.7070149276304097e-13, 4.1859324708716505e-13, 2.545854402366142e-16, 5.148788617681532e-10, 8.823012459524548e-11, 5.455037532797746e-10, 9.873774020618953e-10, 3.847028529069263e-10, 7.704980994590119e-14, 4.916546284029605e-21, 6.875202447284567e-13, 1.136851723870791e-09, 9.509895093628984e-10, 9.234587539097561e-10, 4.5764317335716953e-10, 3.5261396580388293e-10, 6.297128929411144e-10, 1.6141192826779616e-09, 5.284696014129509e-10, 1.0798829265363334e-22, 2.836241754761268e-15, 5.067413710868607e-10, 3.902406453537566e-10], [1.9124482553145583e-10, 1.275528014193254e-18, 4.9329743818005925e-21, 7.042925270761557e-11, 1.1115282999574205e-10, 1.5128412411691272e-11, 2.620789418816827e-10, 2.169928403628063e-10, 6.320090978340076e-11, 1.0811267652606135e-14, 3.9780658422309406e-14, 1.585556176317772e-17, 9.742189693850989e-11, 4.860530380956796e-13, 6.315081790830845e-11, 1.0595219146480872e-10, 8.521496702718068e-11, 8.991578162723906e-18, 4.2220378383731344e-22, 4.0262098397001594e-14, 2.2188179071847003e-10, 1.8354499864425833e-10, 1.7631826554342922e-10, 7.569869731050005e-11, 6.411323555388648e-11, 1.3006401511361787e-10, 8.706637494304559e-11, 5.025676402814483e-11, 2.4158012266539716e-25, 3.2843340423200544e-15, 3.1998355354279084e-11, 6.570662763882851e-11], [9.853169391504935e-10, 7.098883145481749e-19, 2.8750455995870077e-22, 3.2756405921041676e-10, 6.949893993635214e-10, 8.383046340432188e-11, 1.0614291667820908e-09, 9.52079415306173e-10, 3.312825014312182e-10, 1.1362303242376526e-13, 1.1116933382963184e-13, 1.0846575354127149e-18, 4.1519124249767003e-10, 2.92849702820952e-11, 3.2768268654059796e-10, 5.171539307902151e-10, 3.327130237984477e-10, 1.629229249341252e-14, 7.276408561112431e-22, 6.1266981512240765e-15, 9.58229495751084e-10, 8.026159736829186e-10, 7.753248598696416e-10, 4.272027454010896e-10, 2.966552836713987e-10, 5.390533575067025e-10, 3.454856123408234e-10, 2.85452328441238e-10, 4.954113531654011e-21, 1.3354772491455712e-15, 1.722762765776764e-10, 3.20662246755532e-10], [3.648093604979863e-09, 5.417156200773025e-19, 2.683815240088613e-23, 1.5707236622475307e-09, 3.188459052338999e-09, 3.238194157262342e-10, 4.663085917400167e-09, 4.251037299951577e-09, 1.3572613033474568e-09, 3.073034177385886e-14, 5.415342653469768e-13, 9.741337151483808e-18, 1.8181984806631135e-09, 1.7889223088984885e-11, 1.2035966667767184e-09, 1.7928788453858147e-09, 1.4611014620413698e-09, 7.68157493315864e-15, 4.9052732267723365e-30, 3.386332826562505e-13, 4.246849094613481e-09, 3.5456750868689824e-09, 3.446824603514642e-09, 1.5122945118406506e-09, 1.256559523099554e-09, 2.377666286079716e-09, 1.3262008158321237e-09, 1.0122371829623944e-09, 3.085908371988074e-23, 4.668112498249855e-15, 6.110935646397309e-10, 1.418203443570576e-09], [1.8070445140239144e-10, 3.122115997016403e-20, 8.500409141178142e-25, 4.45881734312259e-11, 1.5753301441101542e-10, 1.5714528636689984e-11, 2.2914418973396522e-10, 2.0752032037218981e-10, 1.1020250684223853e-10, 1.8791097286053118e-14, 2.9126503184144503e-13, 5.652724666082817e-17, 9.035017178860016e-11, 1.0284407006566632e-11, 5.3000010630244176e-11, 1.2967163454113972e-10, 7.227664994280403e-11, 1.303899056190631e-14, 7.006492321624085e-43, 2.65154570392237e-13, 1.9044954502334122e-10, 1.72539801890359e-10, 1.6731512009204863e-10, 7.228400517034217e-11, 6.170289973406184e-11, 1.1625415213822876e-10, 6.971682953160752e-11, 1.0594438520916682e-10, 3.1469696139312907e-22, 4.377677690833859e-14, 7.359349241120583e-11, 6.770855404125697e-11], [7.271122037799671e-10, 1.1571047017970998e-19, 8.127875891152483e-21, 5.661446866866982e-10, 8.351635494285858e-10, 7.838721338693233e-11, 8.891203884253684e-10, 8.261968331702008e-10, 4.817213850039082e-10, 7.579766485689768e-14, 3.5325941390856874e-13, 2.99367013366765e-16, 3.74242553613513e-10, 6.580556932700432e-11, 4.3219525180937524e-10, 6.994479440081136e-10, 2.7777843913945333e-10, 2.7205449739243874e-14, 4.8709386631366e-21, 3.1241364204827315e-13, 8.231679782255696e-10, 6.901104132595037e-10, 6.728140267142635e-10, 3.0262950478920914e-10, 2.6304391997911125e-10, 4.565658962008001e-10, 7.302146665111309e-10, 4.4045289637750784e-10, 2.035409365589745e-21, 4.215082008608576e-15, 4.4561865308878623e-10, 2.89164303612921e-10], [1.606975330581406e-09, 3.809603575567697e-19, 3.084384928856621e-20, 3.720258545669708e-09, 4.243027262873511e-09, 1.4037894457974431e-10, 1.939359339786506e-09, 1.7586295752991532e-09, 1.7647934225095696e-09, 1.2833642839844145e-13, 3.2409150910921516e-14, 1.9378317858632417e-16, 7.609882168857496e-10, 7.48804351857757e-11, 1.0939557038014414e-09, 9.401245337770092e-10, 6.100282501364518e-10, 2.3142762933889977e-14, 3.3632628543168003e-21, 1.686891457682721e-13, 1.7489077963617206e-09, 1.46663203803854e-09, 1.4268203285539016e-09, 6.846896938306202e-10, 5.185881168934259e-10, 9.865538386222283e-10, 4.538968756406803e-09, 6.165328803042769e-10, 7.336418535458914e-22, 4.503756766263472e-15, 4.39781905337e-10, 5.858173390826948e-10], [2.1579269482430163e-09, 1.1479702054635555e-22, 2.4711915786858e-21, 1.9360855141314914e-09, 1.8381376420961715e-09, 1.642649349875569e-10, 2.226970829966035e-09, 2.032523704897926e-09, 1.4938020820309816e-09, 3.326391083153385e-13, 7.258750892025212e-13, 2.8664825779837e-17, 8.888810798524105e-10, 7.758112902100933e-11, 1.0877845291190624e-09, 1.1357988993765389e-09, 6.908512650838361e-10, 9.481488267041802e-14, 7.006492321624085e-43, 3.3453247767420424e-13, 2.035358548369004e-09, 1.696685236751705e-09, 1.65054692136124e-09, 8.713295640561114e-10, 6.197539703656219e-10, 1.1321795723162609e-09, 2.098973217457001e-09, 7.476130825523342e-10, 1.4376226380296686e-21, 7.109312697730057e-15, 5.682892489922153e-10, 6.908703054087084e-10], [2.5462755168237372e-11, 7.67481194443357e-21, 7.337676673939433e-22, 8.056027199498939e-12, 1.761725834659167e-11, 3.5110837848240095e-12, 3.482957672273912e-11, 3.160535722024349e-11, 5.2055764213077005e-12, 1.3739544619284266e-15, 1.0076041021510329e-13, 1.8786195506387358e-16, 7.748054801914872e-12, 1.805416059708076e-12, 3.987405891581197e-12, 1.0748902636026347e-11, 1.0951341396225889e-11, 1.3359976053078712e-18, 2.046685559307321e-27, 1.7602340754690332e-14, 1.8055034897712652e-11, 2.623378077271088e-11, 2.6197252700477236e-11, 1.105117213018314e-11, 9.072547400845732e-12, 1.7677491415124535e-11, 9.16050915678035e-12, 1.2318116145160207e-11, 3.675324729985678e-23, 3.672339400787397e-16, 3.5476164107067776e-12, 1.0250177442938657e-11], [1.6997604435076141e-09, 1.761130183056797e-18, 3.91878107666704e-21, 1.5343120107758068e-09, 2.951118460714497e-09, 1.888148110085197e-10, 2.156950396070556e-09, 1.998895715615845e-09, 1.2318500663965892e-09, 4.827078474889564e-14, 2.7182112897344846e-12, 4.862740976012869e-16, 8.734110101826786e-10, 5.1797292149879937e-11, 7.592481088281033e-10, 1.3807519572139881e-09, 6.713278821735003e-10, 2.0323586563675278e-14, 7.524213879031614e-22, 5.445034614165456e-13, 1.9689743169237772e-09, 1.6561503279888257e-09, 1.6189860563287084e-09, 7.494161957666279e-10, 6.091465110102945e-10, 1.1029704927167927e-09, 2.599125137336955e-09, 6.262354523833835e-10, 9.256823946509646e-21, 4.649518075237891e-13, 6.093620608105255e-10, 6.772525318332612e-10], [5.888687870658771e-10, 7.360772359765424e-26, 2.2582908882657348e-23, 1.7864568158110217e-10, 4.955660326544375e-10, 5.993961577077656e-11, 7.498148768547708e-10, 6.910845784524611e-10, 1.7164340782027665e-10, 6.320341741427671e-16, 3.053111962466465e-14, 1.5811098158275035e-16, 2.9469762741207717e-10, 1.0669477454317011e-11, 2.1561423479976582e-10, 3.2608984956716824e-10, 2.36656250152123e-10, 3.769358653827578e-20, 1.3535573285659932e-22, 2.8111320983146247e-14, 6.84972190079236e-10, 5.770008915106928e-10, 5.614695930411528e-10, 2.4130750175821447e-10, 2.1599572130881484e-10, 3.841732487686045e-10, 2.2359208928790508e-10, 1.632155383068934e-10, 1.1910701888768978e-26, 1.3176470997267498e-16, 9.504145387362328e-11, 2.3765209244963614e-10], [4.132621675423387e-11, 3.987594748813209e-19, 5.179907181693278e-21, 1.7877352376238775e-11, 3.1244909437511126e-11, 2.5660764745721876e-12, 5.753454310197803e-11, 4.602041664414358e-11, 1.5763638658294887e-11, 9.247902329990662e-15, 5.695761668978979e-15, 1.7294541700387218e-17, 1.90815956785384e-11, 2.3926637716465207e-14, 1.1512375254485452e-11, 2.6430970259672115e-11, 1.9012128676942908e-11, 8.347263091971012e-20, 1.1865602665618324e-30, 2.7176660783432595e-14, 4.1550492213549006e-11, 3.980915944112873e-11, 3.707472523428734e-11, 1.6661328566813793e-11, 1.2969730324441375e-11, 2.8270129293073154e-11, 2.2922634276834053e-11, 9.64421598137477e-12, 1.690349816908707e-22, 2.7513165374036573e-15, 5.250841428328101e-12, 1.3351364284985845e-11], [2.8462647794214035e-09, 5.371100609879534e-21, 2.8512338647173477e-22, 6.429619614500837e-10, 2.167906298922162e-09, 2.403666987671471e-10, 3.4228950784864765e-09, 3.0529261341172287e-09, 9.35199806484377e-10, 1.3494338025471508e-13, 2.9394124937895394e-13, 6.925795995215819e-17, 1.3157985812028983e-09, 3.063503270506196e-11, 9.43534250730238e-10, 1.4626241329196432e-09, 1.0794289906357335e-09, 1.5942325584661354e-14, 1.1633505949782134e-22, 5.631400632811513e-14, 3.100939283129378e-09, 2.5587065799470565e-09, 2.478958149865207e-09, 1.1000078625755805e-09, 8.958720432161726e-10, 1.7353759540483793e-09, 1.263854576549761e-09, 6.789216411284826e-10, 2.2229299583754877e-21, 2.1434926824757863e-15, 3.379558577432107e-10, 9.995179128807763e-10], [2.2030235413694754e-09, 1.9114261797089485e-20, 2.059405201662022e-22, 1.0644800596537607e-09, 1.5373544659524896e-09, 2.057948256251052e-10, 2.8442219690560933e-09, 2.5801645264778017e-09, 7.23887727538397e-10, 3.718666067892458e-15, 4.985069431903688e-13, 5.881878180306137e-17, 1.1005503175454123e-09, 1.0349012228780263e-12, 7.516782751793016e-10, 1.1627103724265453e-09, 8.933145889677974e-10, 5.096514939158176e-18, 7.006492321624085e-43, 9.920077861371931e-14, 2.583371738751339e-09, 2.152354294793213e-09, 2.0921053778266696e-09, 9.113929611004323e-10, 7.598612294934526e-10, 1.447704844892428e-09, 8.745112412000822e-10, 5.352103205069625e-10, 1.5372730621901249e-21, 2.0753677283522542e-15, 4.475827486416506e-10, 8.563860731669592e-10], [8.038856247338799e-10, 3.256432227789571e-19, 3.93501212329479e-22, 4.956188792704097e-10, 8.53224935148944e-10, 9.134784595410395e-11, 1.0663571137214944e-09, 9.521109456400723e-10, 3.8372388599938745e-10, 7.109596453767388e-16, 5.21442004158823e-12, 2.652712108524804e-16, 3.636171086451867e-10, 1.5375362441560902e-11, 2.5097821043651436e-10, 4.963492949983106e-10, 3.423593908369327e-10, 3.959120917382449e-18, 1.1956329289215194e-22, 4.282832362411185e-14, 8.329450462696286e-10, 7.799790258111727e-10, 7.557019454651481e-10, 3.2872457533805743e-10, 2.824021294589585e-10, 5.369182320968946e-10, 5.764150268205981e-10, 2.4157009725911394e-10, 1.7994595289816535e-21, 1.1342453669002661e-12, 1.1485274536982004e-10, 2.942925902971183e-10], [1.592609155665059e-09, 2.5100210845379156e-20, 2.0887997998212398e-22, 1.5305451350755561e-09, 1.6022655424663412e-09, 1.3509995899774196e-10, 2.0741928175027624e-09, 1.7853518663457635e-09, 8.555688379985327e-10, 4.548682462049598e-14, 2.3854944170183245e-13, 5.397767087214782e-17, 7.911396537885196e-10, 1.5025342081642634e-11, 5.545123249461881e-10, 9.852788585007488e-10, 6.663385399008348e-10, 1.0548161431497057e-14, 7.006492321624085e-43, 2.3421596693357083e-13, 1.8396899559292024e-09, 1.5127739061426837e-09, 1.447526543074673e-09, 7.064914209209405e-10, 5.299122807223e-10, 1.0446729037383307e-09, 1.3756459305014346e-09, 4.2884790163455477e-10, 3.932078065598347e-22, 4.320807708172792e-16, 3.269546300366244e-10, 5.695163229901823e-10], [2.2081064754431168e-10, 6.805884459366561e-22, 2.2380707661000645e-24, 2.7146997757382385e-12, 1.9178254817564522e-10, 1.8379449004402026e-11, 2.9045366112256943e-10, 2.6216340209828104e-10, 1.1998284310532625e-10, 7.779641866692902e-15, 6.18466541001117e-13, 1.119730175364698e-16, 1.1131517235751787e-10, 2.166516965829146e-12, 6.847054173642064e-11, 1.6345239051140936e-10, 9.175228632418708e-11, 1.1869405774271678e-14, 7.006492321624085e-43, 2.616579641758626e-13, 2.626387718418499e-10, 2.1773297054217267e-10, 2.1179878684218778e-10, 9.19853221370559e-11, 7.466619683649256e-11, 1.4690641758630107e-10, 7.563939058430336e-11, 5.2808406952875586e-11, 2.0853451747855939e-26, 1.4818194226102723e-16, 1.0391490619376942e-11, 8.369700765786803e-11], [5.510550002418846e-11, 1.437696773284275e-19, 7.38997878304431e-22, 2.113097197220526e-11, 1.756381672046725e-11, 7.687433155323387e-12, 7.251509115402399e-11, 6.467734681159243e-11, 8.546374545559399e-12, 2.267711546498287e-16, 9.997186997505458e-14, 2.401157815136115e-20, 2.234480135643313e-11, 2.542908592029214e-12, 1.3593653112875526e-11, 1.5746279280470787e-11, 2.3006794386271068e-11, 9.374062342065364e-18, 7.802796131851452e-22, 3.3931394478013688e-15, 4.64116002574233e-11, 5.3711455422211785e-11, 5.300762259685676e-11, 2.2399922194882294e-11, 1.8921024469431558e-11, 3.6533574776509425e-11, 2.3442166610654347e-11, 2.376704215378833e-11, 2.708196797589107e-21, 3.6917200440161673e-16, 6.845348073103441e-12, 2.044657151922813e-11], [2.373675258085517e-13, 1.3193121315817578e-18, 8.432436684111119e-21, 9.556194540110557e-14, 2.188277499742125e-13, 1.3531320839201347e-14, 9.685272332402017e-13, 2.5545079831816586e-13, 1.7885271443116718e-13, 1.9892904191314356e-14, 2.4637829448869494e-15, 1.798093617268372e-17, 1.422104214986522e-13, 2.4782967019722213e-13, 3.8088001990625037e-14, 3.445020148058059e-13, 1.41584484479422e-13, 1.3379829843617862e-15, 7.006492321624085e-43, 2.977774480445415e-14, 4.0049398259550673e-13, 2.0611003138590323e-13, 2.494510403360656e-13, 7.993506843852888e-14, 7.089951049215129e-14, 1.9349973012783295e-13, 1.7046413380242958e-13, 1.7909979733001305e-14, 4.900289952832121e-24, 9.711910366628357e-16, 2.05480096371162e-14, 4.5860593155064994e-14], [1.3635683693280498e-09, 7.114017965752055e-19, 1.9193842388130768e-20, 1.296977192311033e-09, 4.139531384339534e-09, 1.3765813489108325e-10, 1.7843231336911458e-09, 1.5967331901123316e-09, 1.7154005993447186e-09, 1.648689323084651e-14, 5.243831844442548e-12, 3.559462996142901e-16, 6.870698454619628e-10, 2.4507878365609415e-11, 6.028385568512817e-10, 1.546641259508874e-09, 5.668920333157246e-10, 9.857893284592883e-20, 3.358603501022654e-21, 4.853108474985046e-13, 1.5925178953324348e-09, 1.3322336567256343e-09, 1.285295425645927e-09, 6.377942618485122e-10, 4.806131603807273e-10, 9.039803350319175e-10, 2.3932791304304146e-09, 4.00773220166073e-10, 1.838146757143081e-22, 2.1524405521833323e-13, 5.134023761677042e-10, 5.151348791976318e-10], [2.385690311967892e-09, 2.2021280623362697e-22, 1.9959282151915287e-23, 1.2921013148314842e-09, 2.2854889092371877e-09, 2.2825764889322642e-10, 2.961473066775966e-09, 2.7191493501277364e-09, 1.0404855865786544e-09, 2.035867405648234e-14, 3.6278049791657607e-13, 2.8456234455697375e-20, 1.1598630944575916e-09, 1.4687206312258283e-11, 8.847400034817099e-10, 1.3819692057381872e-09, 9.252130173109663e-10, 9.295221825589024e-15, 2.1107466205173037e-30, 4.78132683727657e-14, 2.720243807985412e-09, 2.267290577506742e-09, 2.204911586645153e-09, 1.0360796665054295e-09, 8.297489362263377e-10, 1.5150432020050175e-09, 1.310638597651348e-09, 6.290009624265736e-10, 8.224533635784908e-24, 1.6555997566815306e-14, 5.12427045240571e-10, 9.244535692509714e-10], [2.175920776892326e-09, 3.2664864788881824e-20, 3.285615717178003e-21, 7.329220008678305e-10, 1.863788900990926e-09, 2.0763220309749642e-10, 2.787619246547024e-09, 2.5654718349699124e-09, 7.38790140175638e-10, 7.283932774971268e-15, 2.0607944333211198e-13, 6.170726424205265e-18, 1.0752047030493372e-09, 5.403625680591717e-13, 7.288460390775242e-10, 1.1790416420964789e-09, 8.695193454144601e-10, 3.129881569326492e-25, 1.2994861607543695e-34, 2.3374323106944463e-14, 2.5605140230311463e-09, 2.128954790237003e-09, 2.081177452595284e-09, 8.983511712301606e-10, 7.442105265376142e-10, 1.4229117883957088e-09, 1.0972538433406953e-09, 5.133783398392211e-10, 3.504162607747008e-28, 2.7916281482645577e-14, 3.9477998647896584e-10, 8.578830978933638e-10], [6.542440478263245e-10, 7.409304383833352e-19, 2.6243813487731075e-21, 2.8650745664826616e-10, 4.821042454139501e-10, 5.430193447675258e-11, 8.798183848135466e-10, 7.434859949917438e-10, 2.269478771577127e-10, 1.0120065050724103e-14, 1.387549472021965e-13, 1.7229884300626398e-17, 3.236901857661678e-10, 1.1902336755076348e-12, 2.1658609627994707e-10, 3.7339839553673926e-10, 2.8445201749605076e-10, 1.0150523493926783e-30, 2.1668313204801586e-21, 9.317699200097132e-14, 7.496726017741651e-10, 6.291445697748088e-10, 6.039808098101673e-10, 2.6133084585211463e-10, 2.1861622234720102e-10, 4.402238851231033e-10, 3.104489443295222e-10, 1.709777180947114e-10, 3.174344817728885e-29, 3.5105086697816146e-13, 1.0720389159724064e-10, 2.304785945428378e-10], [2.0368728925745927e-09, 6.59957676521731e-19, 1.3792973373618912e-20, 2.51814924467908e-09, 4.100779271709598e-09, 1.73353539856258e-10, 2.3860324827040813e-09, 2.1292496654723436e-09, 1.711174313356878e-09, 1.0901025362334421e-13, 1.8116683554812024e-13, 2.5240125990300057e-16, 8.994290867647692e-10, 5.509800948821919e-11, 1.1336566130282222e-09, 1.1889083051386251e-09, 7.535571056038748e-10, 9.539258793956566e-15, 9.190709173255162e-23, 1.0029540267958784e-13, 2.0992378946260715e-09, 1.7828841736289291e-09, 1.72833958256291e-09, 8.608606605342572e-10, 6.497283822071154e-10, 1.2099976576251947e-09, 3.465822517867423e-09, 6.463304336179476e-10, 6.371711068133276e-22, 7.405225351919242e-15, 4.717415347244014e-10, 7.071406793457413e-10], [1.0662740690392525e-09, 2.2776624961800755e-18, 1.0865206369578684e-20, 3.870932185900955e-10, 6.863209445207019e-10, 9.797747335671403e-11, 1.1968885882396307e-09, 1.0908030034784133e-09, 4.066607606212358e-10, 1.450860509207355e-13, 2.841279356160121e-14, 5.816985530379107e-17, 4.662543129363428e-10, 2.5737505876533007e-11, 3.3465827331546905e-10, 5.149394799452978e-10, 3.7131239749577105e-10, 4.455540008664084e-14, 2.1337133430245084e-24, 5.6664423858394236e-14, 1.0643003145460739e-09, 9.094310859936172e-10, 8.885578939299421e-10, 3.918295687910245e-10, 3.3547553623947124e-10, 6.070088875986812e-10, 3.253447788953423e-10, 3.4554212269277684e-10, 1.5145154979253298e-21, 3.4242333496687163e-14, 2.326638465222075e-10, 3.7123162877072957e-10], [5.118537260706546e-10, 9.282012565514166e-21, 1.846628242497219e-23, 2.9525490385928777e-10, 2.8289154352378887e-10, 5.0311258631419165e-11, 6.238165539684815e-10, 5.749149489808758e-10, 1.150531753202344e-10, 6.111920052096625e-14, 4.925843261928409e-13, 7.634644616112318e-18, 2.439267121623345e-10, 2.173428451102133e-11, 1.9445202392720518e-10, 3.339128140655845e-10, 1.937706384236293e-10, 2.275251622036508e-14, 7.468819876940378e-24, 1.0593862077726626e-13, 5.60749502387381e-10, 4.783907159300327e-10, 4.672424114282592e-10, 2.2083548878448767e-10, 1.7658879913895476e-10, 3.1835092895171613e-10, 2.159706302684583e-10, 1.6330313490353632e-10, 2.409084572239524e-21, 6.822532752778169e-16, 1.9898954706221161e-10, 1.9637280690432135e-10], [1.9648893623269714e-09, 3.8246298283826056e-19, 1.0659990811006658e-24, 9.093804043125431e-10, 1.4223033861782142e-09, 1.9165408149390828e-10, 2.5737207920428773e-09, 2.254735731455071e-09, 8.013927299543866e-10, 3.4812291802499215e-14, 1.516193962915191e-12, 6.294632703291727e-17, 9.992688898563529e-10, 5.7837110101210953e-11, 8.175153332068419e-10, 1.1816081446625049e-09, 8.232852732881213e-10, 7.510222709027937e-15, 5.106981756723721e-31, 8.654115293306452e-14, 2.230850837392495e-09, 1.899626900225826e-09, 1.8381711708315152e-09, 8.003758766861324e-10, 6.799706908644509e-10, 1.299808483068432e-09, 1.208816713393901e-09, 8.392611605678724e-10, 7.661647837544026e-22, 3.0365250244801523e-13, 6.058478718706795e-10, 7.335636542649127e-10], [2.3712489749527776e-09, 1.0851013436607437e-19, 2.9943611825818556e-20, 1.7455004108768435e-09, 2.071786298074585e-09, 2.1309297382199333e-10, 2.8411506480807702e-09, 2.5965822825213536e-09, 8.597113576591653e-10, 9.720802179695454e-14, 2.3990102439308547e-12, 1.1674852311864054e-16, 1.0967591279609223e-09, 2.7051380233067412e-11, 9.980285486932416e-10, 1.0373908398975118e-09, 8.884229463212989e-10, 5.934811307353087e-15, 1.727931832009258e-20, 1.307847466392939e-13, 2.5927797686620124e-09, 2.161503420694544e-09, 2.1080939216489014e-09, 9.665470646069707e-10, 7.764910381347079e-10, 1.446085806655617e-09, 1.4876573306565888e-09, 6.518528494758868e-10, 4.749701470512441e-22, 5.143075093409777e-13, 5.660638069393542e-10, 8.703966436485189e-10], [1.7589672773876686e-11, 3.1606219653890852e-19, 1.4014605473149664e-21, 6.3085136073337544e-12, 1.5588778531916425e-11, 1.2187106792488356e-12, 2.4903140313781158e-11, 2.2246227429634224e-11, 5.815354274518736e-12, 1.1415497758497043e-14, 2.24595486997335e-15, 6.962913243662298e-17, 1.0535032915481857e-11, 1.3769641893715545e-12, 4.234267287923227e-13, 1.1752210316018363e-11, 7.877350681473327e-12, 4.922889420872108e-15, 7.006492321624085e-43, 3.790879692404034e-14, 1.313133889818685e-11, 1.8573654766984582e-11, 1.86884969305412e-11, 7.822146576297317e-12, 6.338755041690458e-12, 1.259272981030124e-11, 8.814639122778356e-12, 1.2562187401421454e-11, 3.109456135066185e-21, 9.023947559890454e-17, 1.3727564224241817e-11, 7.125735331653393e-12], [6.760941251293673e-10, 1.9876538005995966e-18, 5.0387404091080076e-21, 2.1710924169582313e-09, 2.7265532054343566e-09, 7.473184571171743e-11, 8.375954929640272e-10, 7.709158311719477e-10, 1.0604371825095882e-09, 2.8349433803080692e-14, 1.2761539871716798e-12, 1.6974223949109939e-16, 3.564606665396042e-10, 3.692295080792718e-11, 5.352285281645663e-10, 5.300316852085984e-10, 2.624441219900575e-10, 5.98541167919352e-16, 4.917129372145421e-23, 1.2597564593049004e-13, 7.783150235418645e-10, 6.434386912168577e-10, 6.280782560708076e-10, 3.1632060859543287e-10, 2.3798757409210225e-10, 4.285267141135307e-10, 2.67026800671033e-09, 3.286465821705775e-10, 3.516311664426676e-21, 7.886851165640058e-14, 3.7970271371534636e-10, 2.6407842579345697e-10], [1.2147390870964614e-09, 1.1549586850954076e-20, 5.205383940663128e-20, 1.0556393537086706e-09, 2.270933441295142e-09, 1.0702856656497062e-10, 1.5883461212951033e-09, 1.3867890169549923e-09, 8.113844041091056e-10, 6.410788512458548e-14, 3.4175117705377567e-13, 1.414129843421629e-16, 6.077950365224183e-10, 1.5609255207826855e-11, 5.332622121656527e-10, 8.248757232820481e-10, 5.051493112695482e-10, 2.343524595167573e-15, 3.397252586181592e-21, 2.755731027485192e-13, 1.4252028446293252e-09, 1.1672131039475175e-09, 1.127671400702468e-09, 5.128663604914152e-10, 4.0828287972694e-10, 8.023056108363846e-10, 1.7297365761947958e-09, 3.3436631241556825e-10, 9.266633091078158e-24, 4.802238047865205e-15, 3.4070885002179807e-10, 4.4763792672597447e-10], [4.882236108449955e-13, 1.0803440857862835e-20, 1.3432389269515065e-21, 2.4126401289119304e-13, 2.5686679346048624e-13, 5.1220997116050576e-14, 6.157807011693273e-13, 5.691728555481945e-13, 4.49160734918453e-15, 2.4497215626878175e-15, 1.5056078400080969e-15, 9.293083376349165e-21, 2.4057597819253373e-13, 7.484989597529232e-15, 1.7944871391790962e-13, 1.770428015345285e-13, 1.8589514964254678e-13, 1.6685394221555926e-24, 1.5554033104600233e-30, 1.1200030364407441e-14, 5.811661373499033e-13, 4.672987257564598e-13, 4.709657685543489e-13, 1.9745820646968615e-13, 1.8301147001933277e-13, 3.173164313773069e-13, 5.222223664651726e-15, 1.187882935462306e-13, 3.1730620403412533e-23, 1.7044634886339432e-16, 7.576887928921819e-14, 2.0388608878464665e-13], [2.78589817881425e-09, 2.465151667411651e-18, 1.2757953938639133e-20, 8.804629803016439e-10, 2.161407941514426e-09, 2.810724986090918e-10, 3.5404321696574925e-09, 3.2455165221989546e-09, 9.710886539338048e-10, 4.7401451118206026e-14, 7.756690255378285e-13, 3.338722636668184e-17, 1.4075622889464512e-09, 1.2808452215518074e-11, 9.108209741981454e-10, 1.4338540355041118e-09, 1.1086750406619217e-09, 8.36540834839956e-15, 1.284467975408087e-23, 4.43264728307996e-13, 3.2275233596834596e-09, 2.7026749727099286e-09, 2.630188955521362e-09, 1.1400951294149309e-09, 9.748403195786182e-10, 1.8070224205857244e-09, 8.425177222548541e-10, 8.164602327553894e-10, 1.2163858524757413e-21, 6.581750118875296e-13, 5.508777323193215e-10, 1.089654810826346e-09], [1.0592533516984304e-09, 5.514055239654784e-19, 1.869640472519236e-20, 3.3589047099269465e-09, 4.2600474259302246e-09, 1.1201038707664424e-10, 1.3622662997647694e-09, 1.2128054116544718e-09, 2.12646100727909e-09, 1.0227779181307822e-13, 7.264968574643982e-12, 2.0028303149086785e-16, 5.046557616239511e-10, 4.771820785731684e-11, 6.450804335145222e-10, 1.5143438725218061e-09, 4.374627049497093e-10, 7.160218530827094e-15, 8.843224779747445e-23, 1.090255273214491e-12, 1.1783534148435137e-09, 1.0037978226407063e-09, 9.551351931591512e-10, 5.496075816679991e-10, 3.6590117047374804e-10, 6.865521484655801e-10, 3.55381235550567e-09, 4.5952527893966533e-10, 5.1767523312957947e-23, 1.750943899418711e-12, 6.624236159602503e-10, 3.7333322544519376e-10], [5.191596041953517e-09, 1.8452941560228423e-18, 3.2892140336219654e-21, 1.3329373160786417e-09, 4.275045206725281e-09, 4.737147896172189e-10, 6.738715807586004e-09, 6.070181246542461e-09, 1.609547828351765e-09, 1.5519820468373226e-14, 9.00742913416408e-13, 9.0405851398591e-17, 2.612903671206368e-09, 1.0035833275523487e-11, 1.4996295316649366e-09, 2.5370312517480897e-09, 2.1293655727561145e-09, 6.623032776777258e-15, 8.044346819287284e-30, 4.771240368940666e-13, 6.066342095323307e-09, 5.080569298598903e-09, 4.911617335068286e-09, 2.1404258365720352e-09, 1.7712665778546466e-09, 3.4277816141070616e-09, 1.5098723382678259e-09, 1.4191698927135121e-09, 4.806052644871637e-21, 1.7902541428471697e-13, 8.28684176834571e-10, 1.990478226687742e-09], [1.9620498281636145e-10, 2.081067126229451e-19, 5.990155633289544e-21, 6.48360531929626e-11, 1.2264410320650398e-10, 1.7098130203341277e-11, 1.8436779880559584e-10, 1.657064346849424e-10, 1.0473568540225742e-10, 5.692617736788655e-14, 1.367958548628874e-14, 1.404054254165141e-16, 6.897058618671181e-11, 2.919005662183061e-11, 9.003542356111893e-11, 1.17030829471787e-10, 6.344461761509379e-11, 1.9256425000022635e-14, 4.3424703928739675e-23, 7.056023652732626e-14, 1.3421003197677805e-10, 1.381560144064764e-10, 1.357571138838054e-10, 6.207372116318055e-11, 5.1263521205768825e-11, 9.28256776999703e-11, 1.382463865606809e-10, 1.434874857819679e-10, 6.682346064818564e-23, 7.253779990235791e-16, 7.297387694116253e-11, 5.554143950314838e-11], [5.432692073981116e-10, 2.6902984428248563e-19, 1.2375285970105324e-20, 3.257681902013587e-10, 4.482597348864914e-10, 4.684625257156405e-11, 6.298720434116944e-10, 5.819745241275598e-10, 2.9212177121706873e-10, 2.6636521425495684e-14, 1.5550851350989298e-13, 4.591061510928157e-17, 2.5854393626012495e-10, 3.069118917342628e-11, 2.3186581821210694e-10, 3.6293112959384644e-10, 1.9936152728661227e-10, 5.957487226384032e-15, 2.0950877406769968e-21, 2.676434106892861e-13, 5.796053637041609e-10, 4.825939647901123e-10, 4.727939706405948e-10, 2.2787731424056545e-10, 1.774753954908448e-10, 3.214086496949875e-10, 3.165762374468528e-10, 2.1807390615524724e-10, 2.2871889773712064e-22, 1.6779656616537804e-14, 1.5226168936788298e-10, 1.9841904508322017e-10], [1.013941597349799e-09, 7.40167593681628e-21, 2.001831608444096e-21, 7.190070760998424e-10, 1.1477845340834847e-09, 9.360240360578587e-11, 1.308105956887573e-09, 1.1755958428949498e-09, 4.4901213303027987e-10, 4.64559861662172e-14, 2.795481470548207e-14, 1.552118657369847e-16, 5.047732232199564e-10, 3.8808045318972084e-12, 3.576900164947716e-10, 5.695608429334698e-10, 4.122969465836235e-10, 2.7337641990751037e-19, 7.006492321624085e-43, 5.246682672739936e-14, 1.1884639938841701e-09, 9.824873137276313e-10, 9.538222434102295e-10, 4.258327856998534e-10, 3.4660008196851777e-10, 6.646025951795309e-10, 8.839395326809552e-10, 2.5007387827180594e-10, 1.3463403872429245e-23, 2.968743542216732e-15, 1.7828939713471215e-10, 3.881353571877355e-10], [9.978224912998712e-10, 4.685117385287964e-19, 1.607892738608755e-20, 2.422827938275418e-09, 2.863904002836648e-09, 9.566748088163379e-11, 1.2979194385920323e-09, 1.1659728738067088e-09, 8.837050535781543e-10, 3.1952403640707686e-14, 2.147195317598119e-13, 5.673711230840022e-17, 5.052618878842452e-10, 3.435946405866419e-12, 5.94370719309012e-10, 5.698485572303014e-10, 4.0859643446466976e-10, 6.710680066859768e-17, 4.670269008616497e-21, 8.38576305834185e-14, 1.1854085490980992e-09, 9.782492593757297e-10, 9.475622508858805e-10, 4.527197783321668e-10, 3.5357031191729504e-10, 6.598676050018071e-10, 2.6396853591847957e-09, 2.9771307641368594e-10, 7.725059884984801e-23, 5.040499945598367e-15, 3.408575643959466e-10, 3.8976680216684656e-10], [4.0025055492165507e-10, 1.0350020512622185e-19, 9.700499716393508e-21, 1.6660442470062264e-10, 2.874544768882714e-10, 3.5003552140144834e-11, 5.20491427735692e-10, 4.800605468702202e-10, 2.2140730915332085e-10, 1.8412946203015014e-14, 2.1248189839562226e-12, 4.349677635039873e-17, 1.9951085228342436e-10, 1.3926931439686707e-12, 1.3378255447893395e-10, 2.8610303015597083e-10, 1.6400755753487317e-10, 4.4151682168975567e-29, 7.85349527559692e-22, 4.97444425061333e-13, 4.728187841251952e-10, 3.9026779030670866e-10, 3.795146696905505e-10, 1.64643743083559e-10, 1.3940788801125592e-10, 2.639814755678316e-10, 2.8360241932645636e-10, 9.860014887896895e-11, 7.231181310113869e-27, 7.949117167456443e-13, 1.0014569035154963e-10, 1.5209272730132284e-10], [3.5982636314990657e-10, 4.11283221999921e-19, 1.845818397891919e-21, 1.334931609697776e-10, 2.8334704027521695e-10, 2.8596779458323063e-11, 4.918787044339012e-10, 4.1792103111504275e-10, 1.5521886553848674e-10, 5.547381401894286e-15, 5.611651768266945e-12, 1.6812663002333021e-16, 1.875535560191821e-10, 1.0775561215883855e-12, 1.2799838966515154e-10, 2.1701118679828824e-10, 1.6343500164328617e-10, 5.691976952246087e-24, 2.7385202195107936e-23, 9.950453140486828e-14, 4.140844334088456e-10, 3.399992232200333e-10, 3.2040708974889753e-10, 1.3904406792608626e-10, 1.23638654869751e-10, 2.435783796883584e-10, 1.8741817819911688e-10, 1.1034463620607227e-10, 1.0783922634153916e-23, 1.8397468878189605e-12, 2.101398395570886e-11, 1.1549097789220752e-10], [5.201705177704241e-10, 3.485820578588795e-18, 5.275664889044298e-20, 4.757762184226522e-09, 5.344657605377279e-09, 6.806571278827889e-11, 6.206538061270805e-10, 5.872360930858633e-10, 2.3921715719410486e-09, 1.357376261086965e-13, 5.12114699605104e-12, 4.206778279928846e-16, 2.5852814333759966e-10, 5.525375643133934e-11, 6.62116528271639e-10, 1.1767077312541119e-09, 1.9340884449547957e-10, 1.0793803527299646e-14, 1.2994232951125755e-21, 6.928989717061573e-13, 5.696134119936858e-10, 4.75376848996234e-10, 4.6302139899978556e-10, 3.7592962076615777e-10, 1.8498889919893458e-10, 3.1680916223741917e-10, 5.171350014876452e-09, 3.4044544960920575e-10, 5.557475549438955e-21, 9.85740243771016e-13, 6.810654817890338e-10, 1.9427741360100725e-10], [1.3534372511614379e-09, 1.2347300188160668e-18, 1.5241217992182945e-20, 4.4004799804042705e-10, 9.721821125907582e-10, 1.1337970839964129e-10, 1.5541339326574644e-09, 1.4047646379466983e-09, 4.176499424080049e-10, 3.070492739730944e-14, 4.000879488819109e-14, 2.47937290391852e-16, 6.016252496188201e-10, 1.463512991350946e-11, 4.152451438255156e-10, 6.742185143515655e-10, 4.88451112889976e-10, 1.4917764272541446e-15, 3.954237105317133e-22, 4.7790147761437446e-14, 1.4184152741236744e-09, 1.1738370275793386e-09, 1.138547367496301e-09, 4.954798238365754e-10, 4.205450709893199e-10, 7.922501543689009e-10, 5.63760094163257e-10, 3.277690618919138e-10, 2.162918267467675e-22, 1.7521040626588733e-15, 2.2677874855769886e-10, 4.687016330606752e-10], [3.190796585283984e-11, 2.3972013656230575e-25, 1.2425496423986338e-23, 2.617357936288145e-12, 2.5890742674783418e-11, 2.346180541512588e-12, 4.2149169571237266e-11, 3.6767762445766294e-11, 9.125855453262499e-12, 1.1445822808558168e-15, 7.799677584027255e-15, 1.619080813927811e-17, 1.5946435144575943e-11, 1.419098535513849e-13, 1.0297729682862133e-11, 1.4606949330642216e-11, 1.3352420731582715e-11, 4.502832129870546e-33, 7.006492321624085e-43, 9.123053061697167e-15, 3.78539213863327e-11, 3.1129848698796536e-11, 2.982917732263779e-11, 1.3135089370341912e-11, 1.0414945815495624e-11, 2.121703507329542e-11, 3.713500860980101e-12, 7.746535184149916e-12, 7.006492321624085e-43, 1.1160700500466611e-17, 9.11244278818668e-13, 1.1777200742413285e-11], [1.6282269976741759e-09, 5.484411671440298e-20, 8.51661281275476e-21, 1.431239793348027e-09, 2.1160515562002047e-09, 1.2784653891095843e-10, 1.913925906649183e-09, 1.7512620242854382e-09, 1.0966902941333956e-09, 2.7726342814553273e-14, 2.770451186170919e-12, 8.546047600582637e-17, 7.362687126644119e-10, 2.770728438350467e-11, 7.17648829251516e-10, 1.1048851833450613e-09, 6.005013708509921e-10, 5.715143053361578e-18, 7.346856641982603e-21, 3.83633500401076e-13, 1.7487754577771852e-09, 1.4529695224752004e-09, 1.4072147891397435e-09, 7.357410791719587e-10, 5.302975281118449e-10, 9.744481888063206e-10, 1.2355386713736038e-09, 5.013754411642424e-10, 1.5854506278292722e-22, 5.933020459474025e-13, 5.367231104003167e-10, 5.807291869608378e-10]], [[2.9759843478416315e-09], [2.2166283129383603e-17], [8.297353598748977e-19], [9.453345661825097e-09], [8.191282319103266e-09], [5.995657303969892e-09], [3.3396021503762086e-09], [2.680022204160082e-09], [4.880703396992203e-09], [1.5741708880422783e-13], [5.4232278390298205e-12], [9.79810338054977e-16], [2.2882178374317164e-09], [3.470987733344977e-11], [5.125933899563506e-09], [1.3768358009258463e-08], [4.441725653947515e-09], [1.0993248538803214e-17], [1.178994198977951e-21], [3.0714894603406373e-13], [7.336552698689047e-09], [2.2932520327145767e-09], [6.331633439771167e-09], [6.0461413653456475e-09], [4.7452251017432445e-09], [4.758827998330162e-09], [9.028861214233075e-09], [1.2903093704608182e-08], [7.970657149675835e-22], [2.6809660719738504e-13], [6.283670916928941e-09], [3.3071945182427953e-09]]], "m_b": [[-3.570970363853121e-07, 2.809594661812298e-05, 5.458836085381336e-07, -6.873376605653903e-07, -3.426770126679912e-05, -6.350799139909213e-06, 5.479961146193091e-06, -2.4860939902282553e-06, 4.273417289368808e-05, 2.560229586379137e-05, -2.8317772375885397e-05, 1.2566367786348565e-06, -4.1932707972591743e-07, 1.568034349475056e-06, -8.126513080242148e-07, -1.6232417010542122e-07, 1.4731467672390863e-05, -9.637285529606743e-07, 5.518465986400767e-22, 4.010550583188888e-06, -3.542647391441278e-06, 1.6332382074324414e-05, 6.928137736395001e-06, -2.4050068532233126e-06, -5.892848093935754e-06, 1.8960081433760934e-06, 7.1552149165654555e-06, -1.487339673644783e-08, 1.287482405132323e-06, 2.4103542273223866e-06, -4.165789135868181e-08, -4.284740862203762e-05, -2.113049413310364e-05, 8.477250958094373e-06, -8.413003342866432e-07, 1.7640564919929602e-07, 3.278239901760571e-08, -1.791396198047579e-10, -2.4591114197392017e-05, -2.0025803678436205e-05, -4.584606358548626e-06, 2.2813803298049606e-05, 2.56744647231244e-06, -7.331380038522184e-05, 4.565461608763144e-08, -4.0964050640468486e-06, 9.007172252495366e-08, 1.929932302857651e-08, 3.934193500754191e-06, -1.840254810758779e-07, -2.7359625676126598e-08, 2.751695501501672e-05, -1.6510992963958415e-06, 4.23545679950621e-05, 1.551650484543643e-06, 5.360221621231176e-06, 2.0143950223427964e-06, -1.2374159723549383e-06, 7.304283826670144e-07, 1.5615519259881694e-06, 1.3663606068803347e-06, -4.06857107009273e-05, 3.998652786663115e-08, -2.91655595674456e-07], [-3.3622885291934024e-12, -2.2316378693604874e-40, 5.605193857299268e-45, 1.9040078313992126e-07, 4.071445800946094e-06, -1.6266267846565263e-11, 1.5847249727751755e-12, 1.0341074784675497e-12, -7.831556558812736e-08, -5.605193857299268e-45, 1.64177249573072e-09, -5.605193857299268e-45, 4.1668002381811675e-09, 2.919883501650844e-10, 7.155690013860294e-07, 9.901961561809003e-08, -1.5487955969811784e-12, 1.4172950434192011e-30, -5.605193857299268e-45, -7.683957319201912e-16, -8.548342155662025e-13, 9.437398779121864e-13, 3.4628367881484046e-12, 2.20912870219081e-08, -2.9725010647352335e-11, -2.9121136925491786e-12, 5.9759090618172195e-06, 2.0801681444027054e-07, 5.605193857299268e-45, 5.605193857299268e-45, 1.182680307465489e-06, -3.1162039615395543e-09], [1.8143388267471972e-12]], "v_b": [[3.257526540179079e-11, 5.0521276051540553e-08, 6.453187428867579e-10, 1.2277266980831314e-09, 1.3412747534857772e-07, 4.161790911894059e-09, 4.474174986057733e-08, 9.643904425038485e-11, 8.874440737827172e-08, 1.063987475902195e-08, 1.0810767392399612e-08, 3.2961543217080447e-11, 2.848813546174611e-11, 1.1761248641661837e-09, 1.1803921555475494e-11, 3.155788477759991e-11, 2.0612084483673243e-08, 1.5521017804331905e-10, 4.601600676022721e-14, 6.848696276762212e-09, 9.361750130665314e-08, 1.8968790982398787e-08, 8.700969944541725e-10, 7.630155535176542e-11, 3.1385214427359642e-09, 3.684768809519845e-11, 4.2865852534212934e-10, 1.6511104549560285e-12, 4.9385634470766604e-11, 7.714072047804166e-09, 2.2244162067863726e-08, 1.470307182671604e-07, 1.4718212426600985e-08, 5.640846900689667e-09, 6.5323935150019e-10, 1.4850204399508016e-11, 3.541387452385414e-12, 5.713084085673392e-13, 4.161141653469258e-09, 7.857902772911984e-09, 5.5814119548358576e-08, 5.549159354245603e-09, 4.563461761253329e-11, 2.4689830979696126e-07, 1.899660116710944e-11, 3.442396945274595e-08, 1.010769246079235e-10, 4.482943183337085e-11, 1.2992308617842951e-10, 1.405108807084332e-09, 1.0402829856218099e-12, 1.1358579854459094e-07, 4.4748905969616004e-11, 3.32355909904436e-07, 1.0546749029671787e-09, 2.9578497984239505e-10, 7.336249940870232e-10, 6.32347160745006e-11, 1.3650537367126958e-09, 5.709542838516768e-10, 1.3810634927335919e-11, 1.428853408924624e-07, 6.400845825593748e-11, 3.3619496075942834e-10], [1.6360082776348261e-12, 8.696282128667988e-19, 1.3438156511686278e-20, 3.973269213641828e-10, 2.8156202369622463e-10, 2.1526552242134844e-13, 2.8231531899020577e-14, 3.906706026930197e-14, 1.067747626426474e-10, 2.6861124069921423e-14, 3.158038338214181e-14, 8.074923243108365e-17, 4.304774852553761e-13, 1.3084530204113265e-12, 3.195917488985067e-11, 1.1444910991142976e-11, 3.709557075577685e-14, 1.8604722667905064e-16, 7.517121199078336e-23, 3.429082443885158e-14, 2.3535113677255852e-14, 2.3344897182356848e-14, 3.3401948064002915e-14, 1.0421710369690196e-11, 6.519950730568894e-14, 1.0324258012769276e-15, 3.055509734117834e-10, 9.445652593420562e-12, 1.0190503280378858e-22, 7.577669401518956e-15, 1.466959366480669e-11, 2.6960282828924695e-14], [5.59105633581048e-22]], "t": 170409} \ No newline at end of file diff --git a/backend/simulate.py b/backend/ai/simulate.py similarity index 98% rename from backend/simulate.py rename to backend/ai/simulate.py index 0a7eb85..73b4b2b 100644 --- a/backend/simulate.py +++ b/backend/ai/simulate.py @@ -1,21 +1,21 @@ +import asyncio import json import math import os import random import uuid -import asyncio from concurrent.futures import ProcessPoolExecutor +from datetime import datetime + from dotenv import load_dotenv load_dotenv() -from datetime import datetime - -from card import Card, CardType, CardRarity, generate_cards, compute_deck_type -from game import ( +from game.card import Card, CardType, CardRarity, generate_cards, compute_deck_type +from game.rules import ( CardInstance, PlayerState, GameState, action_play_card, action_sacrifice, action_end_turn, ) -from ai import AIPersonality, choose_cards, choose_plan +from ai.engine import AIPersonality, choose_cards, choose_plan SIMULATION_CARDS_PATH = os.path.join(os.path.dirname(__file__), "simulation_cards.json") SIMULATION_CARD_COUNT = 1000 @@ -24,7 +24,7 @@ SIMULATION_CARD_COUNT = 1000 def _card_to_dict(card: Card) -> dict: return { "name": card.name, - "created_at": card.created_at.isoformat(), + "generated_at": card.generated_at.isoformat(), "image_link": card.image_link, "card_rarity": card.card_rarity.name, "card_type": card.card_type.name, @@ -39,7 +39,7 @@ def _card_to_dict(card: Card) -> dict: def _dict_to_card(d: dict) -> Card: return Card( name=d["name"], - created_at=datetime.fromisoformat(d["created_at"]), + generated_at=datetime.fromisoformat(d["generated_at"]), image_link=d["image_link"], card_rarity=CardRarity[d["card_rarity"]], card_type=CardType[d["card_type"]], @@ -609,7 +609,7 @@ def draw_grid( if __name__ == "__main__": - difficulties = list(range(7, 11)) + difficulties = list(range(8, 11)) card_pool = get_simulation_cards() players = _all_players(difficulties) diff --git a/backend/train_nn.py b/backend/ai/train_nn.py similarity index 57% rename from backend/train_nn.py rename to backend/ai/train_nn.py index 2071a76..212e5ec 100644 --- a/backend/train_nn.py +++ b/backend/ai/train_nn.py @@ -1,27 +1,39 @@ import os import random import uuid -import numpy as np from collections import deque + +import numpy as np from dotenv import load_dotenv load_dotenv() -from card import compute_deck_type -from ai import AIPersonality, choose_cards, choose_plan -from game import PlayerState, GameState, action_play_card, action_sacrifice, action_end_turn -from simulate import get_simulation_cards, _make_instances, MAX_TURNS -from nn import NeuralNet, NeuralPlayer +from game.card import compute_deck_type +from ai.engine import AIPersonality, choose_cards, choose_plan +from game.rules import PlayerState, GameState, action_play_card, action_sacrifice, action_end_turn +from ai.simulate import get_simulation_cards, _make_instances, MAX_TURNS +from ai.nn import NeuralNet, NeuralPlayer +from ai.card_pick_nn import CardPickPlayer, N_CARD_FEATURES, CARD_PICK_WEIGHTS_PATH NN_WEIGHTS_PATH = os.path.join(os.path.dirname(__file__), "nn_weights.json") P1 = "p1" P2 = "p2" -FIXED_PERSONALITIES = [p for p in AIPersonality if p != AIPersonality.ARBITRARY] +FIXED_PERSONALITIES = [ + p for p in AIPersonality + if p not in ( + AIPersonality.ARBITRARY, + AIPersonality.JEBRASKA + ) +] -def _build_player(pid: str, name: str, cards: list, difficulty: int, personality: AIPersonality) -> PlayerState: - deck = choose_cards(cards, difficulty, personality) +def _build_player(pid: str, name: str, cards: list, difficulty: int, personality: AIPersonality, + deck_pool: dict | None = None) -> PlayerState: + if deck_pool and personality in deck_pool: + deck = random.choice(deck_pool[personality]) + else: + deck = choose_cards(cards, difficulty, personality) instances = _make_instances(deck) random.shuffle(instances) p = PlayerState( @@ -32,6 +44,21 @@ def _build_player(pid: str, name: str, cards: list, difficulty: int, personality return p +def _build_nn_player(pid: str, name: str, cards: list, difficulty: int, + card_pick_player: CardPickPlayer) -> PlayerState: + """Build a PlayerState using the card-pick NN for deck selection.""" + max_card_cost = difficulty + 1 if difficulty >= 6 else 6 + allowed = [c for c in cards if c.cost <= max_card_cost] or list(cards) + deck = card_pick_player.choose_cards(allowed, difficulty) + instances = _make_instances(deck) + random.shuffle(instances) + return PlayerState( + user_id=pid, username=name, + deck_type=compute_deck_type(deck) or "Balanced", + deck=instances, + ) + + def run_episode( p1_state: PlayerState, p2_state: PlayerState, @@ -81,25 +108,40 @@ def run_episode( def train( - n_episodes: int = 20_000, - self_play_start: int = 5_000, - self_play_max_frac: float = 0.4, + n_episodes: int = 50_000, + self_play_start: int = 0, + self_play_max_frac: float = 0.9, lr: float = 1e-3, opp_difficulty: int = 10, temperature: float = 1.0, - batch_size: int = 50, + batch_size: int = 500, save_every: int = 5_000, save_path: str = NN_WEIGHTS_PATH, ) -> NeuralNet: cards = get_simulation_cards() + # Pre-build a pool of opponent decks per personality to avoid rebuilding from scratch each episode. + DECK_POOL_SIZE = 100 + opp_deck_pool: dict[AIPersonality, list] = { + p: [choose_cards(cards, opp_difficulty, p) for _ in range(DECK_POOL_SIZE)] + for p in FIXED_PERSONALITIES + } + if os.path.exists(save_path): - print(f"Resuming from {save_path}") + print(f"Resuming plan net from {save_path}") net = NeuralNet.load(save_path) else: - print("Initializing new network") + print("Initializing new plan network") net = NeuralNet(seed=42) + cp_path = CARD_PICK_WEIGHTS_PATH + if os.path.exists(cp_path): + print(f"Resuming card-pick net from {cp_path}") + card_pick_net = NeuralNet.load(cp_path) + else: + print("Initializing new card-pick network") + card_pick_net = NeuralNet(n_features=N_CARD_FEATURES, hidden=(32, 16), seed=43) + recent_outcomes: deque[int] = deque(maxlen=1000) # rolling window for win rate display baseline = 0.0 # EMA of recent outcomes; subtracted before each update baseline_alpha = 0.99 # decay — roughly a 100-episode window @@ -108,6 +150,10 @@ def train( batch_gb = [np.zeros_like(b) for b in net.biases] batch_count = 0 + cp_batch_gw = [np.zeros_like(w) for w in card_pick_net.weights] + cp_batch_gb = [np.zeros_like(b) for b in card_pick_net.biases] + cp_batch_count = 0 + for episode in range(1, n_episodes + 1): # Ramp self-play fraction linearly from 0 to self_play_max_frac if episode >= self_play_start: @@ -122,9 +168,11 @@ def train( if random.random() < self_play_prob: nn1 = NeuralPlayer(net, training=True, temperature=temperature) nn2 = NeuralPlayer(net, training=True, temperature=temperature) + cp1 = CardPickPlayer(card_pick_net, training=True, temperature=temperature) + cp2 = CardPickPlayer(card_pick_net, training=True, temperature=temperature) - p1_state = _build_player(P1, "NN1", cards, 10, AIPersonality.BALANCED) - p2_state = _build_player(P2, "NN2", cards, 10, AIPersonality.BALANCED) + p1_state = _build_nn_player(P1, "NN1", cards, 10, cp1) + p2_state = _build_nn_player(P2, "NN2", cards, 10, cp2) if not nn_goes_first: p1_state, p2_state = p2_state, p1_state @@ -142,20 +190,30 @@ def train( batch_gb[i] += gb[i] batch_count += 1 + for cp_grads in [cp1.compute_grads(p1_outcome - baseline), + cp2.compute_grads(-p1_outcome - baseline)]: + if cp_grads is not None: + gw, gb = cp_grads + for i in range(len(cp_batch_gw)): + cp_batch_gw[i] += gw[i] + cp_batch_gb[i] += gb[i] + cp_batch_count += 1 + else: opp_personality = random.choice(FIXED_PERSONALITIES) nn_player = NeuralPlayer(net, training=True, temperature=temperature) + cp_player = CardPickPlayer(card_pick_net, training=True, temperature=temperature) opp_ctrl = lambda p, o, pers=opp_personality, diff=opp_difficulty: choose_plan(p, o, pers, diff) if nn_goes_first: nn_id = P1 - p1_state = _build_player(P1, "NN", cards, 10, AIPersonality.BALANCED) - p2_state = _build_player(P2, "OPP", cards, opp_difficulty, opp_personality) + p1_state = _build_nn_player(P1, "NN", cards, 10, cp_player) + p2_state = _build_player(P2, "OPP", cards, opp_difficulty, opp_personality, opp_deck_pool) winner = run_episode(p1_state, p2_state, nn_player.choose_plan, opp_ctrl) else: nn_id = P2 - p1_state = _build_player(P1, "OPP", cards, opp_difficulty, opp_personality) - p2_state = _build_player(P2, "NN", cards, 10, AIPersonality.BALANCED) + p1_state = _build_player(P1, "OPP", cards, opp_difficulty, opp_personality, opp_deck_pool) + p2_state = _build_nn_player(P2, "NN", cards, 10, cp_player) winner = run_episode(p1_state, p2_state, opp_ctrl, nn_player.choose_plan) nn_outcome = 1.0 if winner == nn_id else -1.0 @@ -169,6 +227,14 @@ def train( batch_gb[i] += gb[i] batch_count += 1 + cp_grads = cp_player.compute_grads(nn_outcome - baseline) + if cp_grads is not None: + gw, gb = cp_grads + for i in range(len(cp_batch_gw)): + cp_batch_gw[i] += gw[i] + cp_batch_gb[i] += gb[i] + cp_batch_count += 1 + recent_outcomes.append(1 if winner == nn_id else 0) if batch_count >= batch_size: @@ -180,16 +246,29 @@ def train( batch_gb = [np.zeros_like(b) for b in net.biases] batch_count = 0 + if cp_batch_count >= batch_size: + for i in range(len(cp_batch_gw)): + cp_batch_gw[i] /= cp_batch_count + cp_batch_gb[i] /= cp_batch_count + card_pick_net.adam_update(cp_batch_gw, cp_batch_gb, lr=lr) + cp_batch_gw = [np.zeros_like(w) for w in card_pick_net.weights] + cp_batch_gb = [np.zeros_like(b) for b in card_pick_net.biases] + cp_batch_count = 0 + if episode % 1000 == 0 or episode == n_episodes: wr = sum(recent_outcomes) / len(recent_outcomes) if recent_outcomes else 0.0 - print(f"[{episode:>6}/{n_episodes}] win rate (last {len(recent_outcomes)}): {wr:.1%} " + print(f"\r[{episode:>6}/{n_episodes}] win rate (last {len(recent_outcomes)}): {wr:.1%} " f"self-play frac: {self_play_prob:.0%}", flush=True) + else: + print(f" {episode % 1000}/1000", end="\r", flush=True) if episode % save_every == 0: net.save(save_path) - print(f" → saved to {save_path}") + card_pick_net.save(cp_path) + print(f" → saved to {save_path} and {cp_path}") net.save(save_path) + card_pick_net.save(cp_path) wr = sum(recent_outcomes) / len(recent_outcomes) if recent_outcomes else 0.0 print(f"Done. Final win rate (last {len(recent_outcomes)}): {wr:.1%}") return net diff --git a/backend/alembic/env.py b/backend/alembic/env.py index 2b78f47..1e2c638 100644 --- a/backend/alembic/env.py +++ b/backend/alembic/env.py @@ -7,7 +7,7 @@ from sqlalchemy import engine_from_config from sqlalchemy import pool, create_engine from alembic import context -from models import Base +from core.models import Base import os from dotenv import load_dotenv diff --git a/backend/alembic/versions/0fc168f5970d_add_trade_wishlist_to_users.py b/backend/alembic/versions/0fc168f5970d_add_trade_wishlist_to_users.py new file mode 100644 index 0000000..428c22f --- /dev/null +++ b/backend/alembic/versions/0fc168f5970d_add_trade_wishlist_to_users.py @@ -0,0 +1,32 @@ +"""add trade_wishlist to users + +Revision ID: 0fc168f5970d +Revises: e70b992e5d95 +Create Date: 2026-03-27 23:01:32.739184 + +""" +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision: str = '0fc168f5970d' +down_revision: Union[str, Sequence[str], None] = 'e70b992e5d95' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + """Upgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + op.add_column('users', sa.Column('trade_wishlist', sa.Text(), nullable=True)) + # ### end Alembic commands ### + + +def downgrade() -> None: + """Downgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + op.drop_column('users', 'trade_wishlist') + # ### end Alembic commands ### diff --git a/backend/alembic/versions/29da7c818b01_add_game_challenges_table.py b/backend/alembic/versions/29da7c818b01_add_game_challenges_table.py new file mode 100644 index 0000000..6422bee --- /dev/null +++ b/backend/alembic/versions/29da7c818b01_add_game_challenges_table.py @@ -0,0 +1,48 @@ +"""add_game_challenges_table + +Revision ID: 29da7c818b01 +Revises: a1b2c3d4e5f6 +Create Date: 2026-03-28 23:20:21.949520 + +""" +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision: str = '29da7c818b01' +down_revision: Union[str, Sequence[str], None] = 'a1b2c3d4e5f6' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + """Upgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + op.create_table('game_challenges', + sa.Column('id', sa.UUID(), nullable=False), + sa.Column('challenger_id', sa.UUID(), nullable=False), + sa.Column('challenged_id', sa.UUID(), nullable=False), + sa.Column('challenger_deck_id', sa.UUID(), nullable=False), + sa.Column('status', sa.String(), nullable=False), + sa.Column('created_at', sa.DateTime(), nullable=False), + sa.Column('expires_at', sa.DateTime(), nullable=False), + sa.ForeignKeyConstraint(['challenged_id'], ['users.id'], ), + sa.ForeignKeyConstraint(['challenger_deck_id'], ['decks.id'], ), + sa.ForeignKeyConstraint(['challenger_id'], ['users.id'], ), + sa.PrimaryKeyConstraint('id') + ) + op.drop_index(op.f('ix_trade_proposals_proposer_status'), table_name='trade_proposals') + op.drop_index(op.f('ix_trade_proposals_recipient_status'), table_name='trade_proposals') + # ### end Alembic commands ### + + +def downgrade() -> None: + """Downgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + op.create_index(op.f('ix_trade_proposals_recipient_status'), 'trade_proposals', ['recipient_id', 'status'], unique=False) + op.create_index(op.f('ix_trade_proposals_proposer_status'), 'trade_proposals', ['proposer_id', 'status'], unique=False) + op.drop_table('game_challenges') + # ### end Alembic commands ### diff --git a/backend/alembic/versions/4603709eb82d_add_processed_webhook_events.py b/backend/alembic/versions/4603709eb82d_add_processed_webhook_events.py new file mode 100644 index 0000000..ba80e05 --- /dev/null +++ b/backend/alembic/versions/4603709eb82d_add_processed_webhook_events.py @@ -0,0 +1,36 @@ +"""add_processed_webhook_events + +Revision ID: 4603709eb82d +Revises: d1e2f3a4b5c6 +Create Date: 2026-03-30 00:30:05.493030 + +""" +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision: str = '4603709eb82d' +down_revision: Union[str, Sequence[str], None] = 'd1e2f3a4b5c6' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + """Upgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + op.create_table('processed_webhook_events', + sa.Column('stripe_event_id', sa.String(), nullable=False), + sa.Column('processed_at', sa.DateTime(), nullable=False), + sa.PrimaryKeyConstraint('stripe_event_id') + ) + # ### end Alembic commands ### + + +def downgrade() -> None: + """Downgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + op.drop_table('processed_webhook_events') + # ### end Alembic commands ### diff --git a/backend/alembic/versions/58fc464be769_trade_proposals_multi_requested_cards.py b/backend/alembic/versions/58fc464be769_trade_proposals_multi_requested_cards.py new file mode 100644 index 0000000..527d27c --- /dev/null +++ b/backend/alembic/versions/58fc464be769_trade_proposals_multi_requested_cards.py @@ -0,0 +1,55 @@ +"""trade_proposals_multi_requested_cards + +Revision ID: 58fc464be769 +Revises: cfac344e21b4 +Create Date: 2026-03-28 22:09:44.129838 + +Replace single requested_card_id FK with requested_card_ids JSONB array so proposals +can request zero or more cards, mirroring the real-time trade system's flexibility. +""" +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa +from sqlalchemy.dialects import postgresql + + +# revision identifiers, used by Alembic. +revision: str = '58fc464be769' +down_revision: Union[str, Sequence[str], None] = 'cfac344e21b4' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + # Add the new column, migrate existing data, then drop the old column + op.add_column('trade_proposals', + sa.Column('requested_card_ids', postgresql.JSONB(astext_type=sa.Text()), nullable=True) + ) + # Migrate any existing rows: wrap the single FK UUID into a JSON array + op.execute(""" + UPDATE trade_proposals + SET requested_card_ids = json_build_array(requested_card_id::text)::jsonb + WHERE requested_card_id IS NOT NULL + """) + op.execute(""" + UPDATE trade_proposals + SET requested_card_ids = '[]'::jsonb + WHERE requested_card_ids IS NULL + """) + op.alter_column('trade_proposals', 'requested_card_ids', nullable=False) + op.drop_constraint('trade_proposals_requested_card_id_fkey', 'trade_proposals', type_='foreignkey') + op.drop_column('trade_proposals', 'requested_card_id') + + +def downgrade() -> None: + op.add_column('trade_proposals', + sa.Column('requested_card_id', sa.UUID(), nullable=True) + ) + # Best-effort reverse: take first element of the array if present + op.execute(""" + UPDATE trade_proposals + SET requested_card_id = (requested_card_ids->0)::text::uuid + WHERE jsonb_array_length(requested_card_ids) > 0 + """) + op.drop_column('trade_proposals', 'requested_card_ids') diff --git a/backend/alembic/versions/8283acd4cbcc_add_fk_cascade_constraints.py b/backend/alembic/versions/8283acd4cbcc_add_fk_cascade_constraints.py new file mode 100644 index 0000000..eb51ae0 --- /dev/null +++ b/backend/alembic/versions/8283acd4cbcc_add_fk_cascade_constraints.py @@ -0,0 +1,42 @@ +"""add_fk_cascade_constraints + +Revision ID: 8283acd4cbcc +Revises: a2b3c4d5e6f7 +Create Date: 2026-03-29 13:55:46.488121 + +""" +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision: str = '8283acd4cbcc' +down_revision: Union[str, Sequence[str], None] = 'a2b3c4d5e6f7' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + """Upgrade schema.""" + op.drop_constraint(op.f('cards_user_id_fkey'), 'cards', type_='foreignkey') + op.create_foreign_key(op.f('cards_user_id_fkey'), 'cards', 'users', ['user_id'], ['id'], ondelete='CASCADE') + op.drop_constraint(op.f('deck_cards_card_id_fkey'), 'deck_cards', type_='foreignkey') + op.drop_constraint(op.f('deck_cards_deck_id_fkey'), 'deck_cards', type_='foreignkey') + op.create_foreign_key(op.f('deck_cards_deck_id_fkey'), 'deck_cards', 'decks', ['deck_id'], ['id'], ondelete='CASCADE') + op.create_foreign_key(op.f('deck_cards_card_id_fkey'), 'deck_cards', 'cards', ['card_id'], ['id'], ondelete='CASCADE') + op.drop_constraint(op.f('decks_user_id_fkey'), 'decks', type_='foreignkey') + op.create_foreign_key(op.f('decks_user_id_fkey'), 'decks', 'users', ['user_id'], ['id'], ondelete='CASCADE') + + +def downgrade() -> None: + """Downgrade schema.""" + op.drop_constraint(op.f('decks_user_id_fkey'), 'decks', type_='foreignkey') + op.create_foreign_key(op.f('decks_user_id_fkey'), 'decks', 'users', ['user_id'], ['id']) + op.drop_constraint(op.f('deck_cards_deck_id_fkey'), 'deck_cards', type_='foreignkey') + op.drop_constraint(op.f('deck_cards_card_id_fkey'), 'deck_cards', type_='foreignkey') + op.create_foreign_key(op.f('deck_cards_deck_id_fkey'), 'deck_cards', 'decks', ['deck_id'], ['id']) + op.create_foreign_key(op.f('deck_cards_card_id_fkey'), 'deck_cards', 'cards', ['card_id'], ['id']) + op.drop_constraint(op.f('cards_user_id_fkey'), 'cards', type_='foreignkey') + op.create_foreign_key(op.f('cards_user_id_fkey'), 'cards', 'users', ['user_id'], ['id']) diff --git a/backend/alembic/versions/98e23cab7057_add_received_at_rename_generated_at_on_.py b/backend/alembic/versions/98e23cab7057_add_received_at_rename_generated_at_on_.py new file mode 100644 index 0000000..fda34c9 --- /dev/null +++ b/backend/alembic/versions/98e23cab7057_add_received_at_rename_generated_at_on_.py @@ -0,0 +1,31 @@ +"""add_received_at_rename_generated_at_on_cards + +Revision ID: 98e23cab7057 +Revises: 0fc168f5970d +Create Date: 2026-03-28 18:07:12.712311 + +""" +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision: str = '98e23cab7057' +down_revision: Union[str, Sequence[str], None] = '0fc168f5970d' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + """Upgrade schema.""" + op.alter_column('cards', 'created_at', new_column_name='generated_at') + op.add_column('cards', sa.Column('received_at', sa.DateTime(), nullable=True)) + op.execute("UPDATE cards SET received_at = generated_at") + + +def downgrade() -> None: + """Downgrade schema.""" + op.drop_column('cards', 'received_at') + op.alter_column('cards', 'generated_at', new_column_name='created_at') diff --git a/backend/alembic/versions/a1b2c3d4e5f6_add_last_active_at_to_users.py b/backend/alembic/versions/a1b2c3d4e5f6_add_last_active_at_to_users.py new file mode 100644 index 0000000..6bd00d8 --- /dev/null +++ b/backend/alembic/versions/a1b2c3d4e5f6_add_last_active_at_to_users.py @@ -0,0 +1,26 @@ +"""add last_active_at to users + +Revision ID: a1b2c3d4e5f6 +Revises: 58fc464be769 +Create Date: 2026-03-28 + +""" +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision: str = 'a1b2c3d4e5f6' +down_revision: Union[str, Sequence[str], None] = '58fc464be769' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + op.add_column('users', sa.Column('last_active_at', sa.DateTime(), nullable=True)) + + +def downgrade() -> None: + op.drop_column('users', 'last_active_at') diff --git a/backend/alembic/versions/a2b3c4d5e6f7_add_unique_constraint_friendship.py b/backend/alembic/versions/a2b3c4d5e6f7_add_unique_constraint_friendship.py new file mode 100644 index 0000000..d0215f8 --- /dev/null +++ b/backend/alembic/versions/a2b3c4d5e6f7_add_unique_constraint_friendship.py @@ -0,0 +1,48 @@ +"""add_unique_constraint_friendship + +Revision ID: a2b3c4d5e6f7 +Revises: f4e8a1b2c3d9 +Create Date: 2026-03-29 00:00:00.000000 + +""" +from typing import Sequence, Union + +from alembic import op +from sqlalchemy import text + + +# revision identifiers, used by Alembic. +revision: str = 'a2b3c4d5e6f7' +down_revision: Union[str, Sequence[str], None] = 'f4e8a1b2c3d9' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + # Remove duplicate (requester_id, addressee_id) pairs that already exist, + # keeping the earliest row per pair before adding the unique constraint. + conn = op.get_bind() + conn.execute(text(""" + DELETE FROM friendships + WHERE id IN ( + SELECT id FROM ( + SELECT id, + ROW_NUMBER() OVER ( + PARTITION BY requester_id, addressee_id + ORDER BY created_at + ) AS rn + FROM friendships + ) sub + WHERE rn > 1 + ) + """)) + + op.create_unique_constraint( + "uq_friendship_requester_addressee", + "friendships", + ["requester_id", "addressee_id"], + ) + + +def downgrade() -> None: + op.drop_constraint("uq_friendship_requester_addressee", "friendships", type_="unique") diff --git a/backend/alembic/versions/b989aae3e37d_add_friendships_table.py b/backend/alembic/versions/b989aae3e37d_add_friendships_table.py new file mode 100644 index 0000000..bcdfad2 --- /dev/null +++ b/backend/alembic/versions/b989aae3e37d_add_friendships_table.py @@ -0,0 +1,41 @@ +"""add_friendships_table + +Revision ID: b989aae3e37d +Revises: de721927ff59 +Create Date: 2026-03-28 19:14:54.623287 + +""" +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision: str = 'b989aae3e37d' +down_revision: Union[str, Sequence[str], None] = 'de721927ff59' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + """Upgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + op.create_table('friendships', + sa.Column('id', sa.UUID(), nullable=False), + sa.Column('requester_id', sa.UUID(), nullable=False), + sa.Column('addressee_id', sa.UUID(), nullable=False), + sa.Column('status', sa.String(), nullable=False), + sa.Column('created_at', sa.DateTime(), nullable=False), + sa.ForeignKeyConstraint(['addressee_id'], ['users.id'], ), + sa.ForeignKeyConstraint(['requester_id'], ['users.id'], ), + sa.PrimaryKeyConstraint('id') + ) + # ### end Alembic commands ### + + +def downgrade() -> None: + """Downgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + op.drop_table('friendships') + # ### end Alembic commands ### diff --git a/backend/alembic/versions/c1d2e3f4a5b6_add_check_constraints_on_status_fields.py b/backend/alembic/versions/c1d2e3f4a5b6_add_check_constraints_on_status_fields.py new file mode 100644 index 0000000..8faeba5 --- /dev/null +++ b/backend/alembic/versions/c1d2e3f4a5b6_add_check_constraints_on_status_fields.py @@ -0,0 +1,31 @@ +"""add_check_constraints_on_status_fields + +Revision ID: c1d2e3f4a5b6 +Revises: 8283acd4cbcc +Create Date: 2026-03-29 14:00:00.000000 + +""" +from typing import Sequence, Union + +from alembic import op + + +# revision identifiers, used by Alembic. +revision: str = 'c1d2e3f4a5b6' +down_revision: Union[str, Sequence[str], None] = '8283acd4cbcc' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + op.create_check_constraint("ck_friendships_status", "friendships", "status IN ('pending', 'accepted', 'declined')") + op.create_check_constraint("ck_trade_proposals_status", "trade_proposals", "status IN ('pending', 'accepted', 'declined', 'expired', 'withdrawn')") + op.create_check_constraint("ck_game_challenges_status", "game_challenges", "status IN ('pending', 'accepted', 'declined', 'expired', 'withdrawn')") + op.create_check_constraint("ck_notifications_type", "notifications", "type IN ('friend_request', 'trade_offer', 'game_challenge')") + + +def downgrade() -> None: + op.drop_constraint("ck_notifications_type", "notifications", type_="check") + op.drop_constraint("ck_game_challenges_status", "game_challenges", type_="check") + op.drop_constraint("ck_trade_proposals_status", "trade_proposals", type_="check") + op.drop_constraint("ck_friendships_status", "friendships", type_="check") diff --git a/backend/alembic/versions/cfac344e21b4_add_trade_proposals_table.py b/backend/alembic/versions/cfac344e21b4_add_trade_proposals_table.py new file mode 100644 index 0000000..fc2cf81 --- /dev/null +++ b/backend/alembic/versions/cfac344e21b4_add_trade_proposals_table.py @@ -0,0 +1,49 @@ +"""add_trade_proposals_table + +Revision ID: cfac344e21b4 +Revises: b989aae3e37d +Create Date: 2026-03-28 22:01:28.188084 + +""" +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa +from sqlalchemy.dialects import postgresql + +# revision identifiers, used by Alembic. +revision: str = 'cfac344e21b4' +down_revision: Union[str, Sequence[str], None] = 'b989aae3e37d' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + """Upgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + op.create_table('trade_proposals', + sa.Column('id', sa.UUID(), nullable=False), + sa.Column('proposer_id', sa.UUID(), nullable=False), + sa.Column('recipient_id', sa.UUID(), nullable=False), + sa.Column('offered_card_ids', postgresql.JSONB(astext_type=sa.Text()), nullable=False), + sa.Column('requested_card_id', sa.UUID(), nullable=False), + sa.Column('status', sa.String(), nullable=False), + sa.Column('created_at', sa.DateTime(), nullable=False), + sa.Column('expires_at', sa.DateTime(), nullable=False), + sa.ForeignKeyConstraint(['proposer_id'], ['users.id'], ), + sa.ForeignKeyConstraint(['recipient_id'], ['users.id'], ), + sa.ForeignKeyConstraint(['requested_card_id'], ['cards.id'], ), + sa.PrimaryKeyConstraint('id') + ) + op.create_index('ix_trade_proposals_proposer_status', 'trade_proposals', ['proposer_id', 'status']) + op.create_index('ix_trade_proposals_recipient_status', 'trade_proposals', ['recipient_id', 'status']) + # ### end Alembic commands ### + + +def downgrade() -> None: + """Downgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + op.drop_index('ix_trade_proposals_proposer_status', 'trade_proposals') + op.drop_index('ix_trade_proposals_recipient_status', 'trade_proposals') + op.drop_table('trade_proposals') + # ### end Alembic commands ### diff --git a/backend/alembic/versions/d1e2f3a4b5c6_add_fk_cascades_friendship_trade_challenge_notification.py b/backend/alembic/versions/d1e2f3a4b5c6_add_fk_cascades_friendship_trade_challenge_notification.py new file mode 100644 index 0000000..bb2b7f1 --- /dev/null +++ b/backend/alembic/versions/d1e2f3a4b5c6_add_fk_cascades_friendship_trade_challenge_notification.py @@ -0,0 +1,69 @@ +"""add_fk_cascades_friendship_trade_challenge_notification + +Revision ID: d1e2f3a4b5c6 +Revises: c1d2e3f4a5b6 +Create Date: 2026-03-29 15:00:00.000000 + +""" +from typing import Sequence, Union + +from alembic import op + + +# revision identifiers, used by Alembic. +revision: str = 'd1e2f3a4b5c6' +down_revision: Union[str, Sequence[str], None] = 'c1d2e3f4a5b6' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + # notifications + op.drop_constraint(op.f('notifications_user_id_fkey'), 'notifications', type_='foreignkey') + op.create_foreign_key(None, 'notifications', 'users', ['user_id'], ['id'], ondelete='CASCADE') + + # friendships + op.drop_constraint(op.f('friendships_requester_id_fkey'), 'friendships', type_='foreignkey') + op.create_foreign_key(None, 'friendships', 'users', ['requester_id'], ['id'], ondelete='CASCADE') + op.drop_constraint(op.f('friendships_addressee_id_fkey'), 'friendships', type_='foreignkey') + op.create_foreign_key(None, 'friendships', 'users', ['addressee_id'], ['id'], ondelete='CASCADE') + + # trade_proposals + op.drop_constraint(op.f('trade_proposals_proposer_id_fkey'), 'trade_proposals', type_='foreignkey') + op.create_foreign_key(None, 'trade_proposals', 'users', ['proposer_id'], ['id'], ondelete='CASCADE') + op.drop_constraint(op.f('trade_proposals_recipient_id_fkey'), 'trade_proposals', type_='foreignkey') + op.create_foreign_key(None, 'trade_proposals', 'users', ['recipient_id'], ['id'], ondelete='CASCADE') + + # game_challenges + op.drop_constraint(op.f('game_challenges_challenger_id_fkey'), 'game_challenges', type_='foreignkey') + op.create_foreign_key(None, 'game_challenges', 'users', ['challenger_id'], ['id'], ondelete='CASCADE') + op.drop_constraint(op.f('game_challenges_challenged_id_fkey'), 'game_challenges', type_='foreignkey') + op.create_foreign_key(None, 'game_challenges', 'users', ['challenged_id'], ['id'], ondelete='CASCADE') + op.drop_constraint(op.f('game_challenges_challenger_deck_id_fkey'), 'game_challenges', type_='foreignkey') + op.create_foreign_key(None, 'game_challenges', 'decks', ['challenger_deck_id'], ['id'], ondelete='CASCADE') + + +def downgrade() -> None: + # game_challenges + op.drop_constraint(None, 'game_challenges', type_='foreignkey') + op.create_foreign_key(op.f('game_challenges_challenger_deck_id_fkey'), 'game_challenges', 'decks', ['challenger_deck_id'], ['id']) + op.drop_constraint(None, 'game_challenges', type_='foreignkey') + op.create_foreign_key(op.f('game_challenges_challenged_id_fkey'), 'game_challenges', 'users', ['challenged_id'], ['id']) + op.drop_constraint(None, 'game_challenges', type_='foreignkey') + op.create_foreign_key(op.f('game_challenges_challenger_id_fkey'), 'game_challenges', 'users', ['challenger_id'], ['id']) + + # trade_proposals + op.drop_constraint(None, 'trade_proposals', type_='foreignkey') + op.create_foreign_key(op.f('trade_proposals_recipient_id_fkey'), 'trade_proposals', 'users', ['recipient_id'], ['id']) + op.drop_constraint(None, 'trade_proposals', type_='foreignkey') + op.create_foreign_key(op.f('trade_proposals_proposer_id_fkey'), 'trade_proposals', 'users', ['proposer_id'], ['id']) + + # friendships + op.drop_constraint(None, 'friendships', type_='foreignkey') + op.create_foreign_key(op.f('friendships_addressee_id_fkey'), 'friendships', 'users', ['addressee_id'], ['id']) + op.drop_constraint(None, 'friendships', type_='foreignkey') + op.create_foreign_key(op.f('friendships_requester_id_fkey'), 'friendships', 'users', ['requester_id'], ['id']) + + # notifications + op.drop_constraint(None, 'notifications', type_='foreignkey') + op.create_foreign_key(op.f('notifications_user_id_fkey'), 'notifications', 'users', ['user_id'], ['id']) diff --git a/backend/alembic/versions/de721927ff59_add_notifications_table.py b/backend/alembic/versions/de721927ff59_add_notifications_table.py new file mode 100644 index 0000000..33e3a3b --- /dev/null +++ b/backend/alembic/versions/de721927ff59_add_notifications_table.py @@ -0,0 +1,42 @@ +"""add_notifications_table + +Revision ID: de721927ff59 +Revises: 98e23cab7057 +Create Date: 2026-03-28 18:51:11.848830 + +""" +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa +from sqlalchemy.dialects import postgresql + +# revision identifiers, used by Alembic. +revision: str = 'de721927ff59' +down_revision: Union[str, Sequence[str], None] = '98e23cab7057' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + """Upgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + op.create_table('notifications', + sa.Column('id', sa.UUID(), nullable=False), + sa.Column('user_id', sa.UUID(), nullable=False), + sa.Column('type', sa.String(), nullable=False), + sa.Column('payload', postgresql.JSONB(astext_type=sa.Text()), nullable=False), + sa.Column('read', sa.Boolean(), nullable=False), + sa.Column('created_at', sa.DateTime(), nullable=False), + sa.Column('expires_at', sa.DateTime(), nullable=True), + sa.ForeignKeyConstraint(['user_id'], ['users.id'], ), + sa.PrimaryKeyConstraint('id') + ) + # ### end Alembic commands ### + + +def downgrade() -> None: + """Downgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + op.drop_table('notifications') + # ### end Alembic commands ### diff --git a/backend/alembic/versions/e70b992e5d95_add_is_favorite_and_willing_to_trade_to_.py b/backend/alembic/versions/e70b992e5d95_add_is_favorite_and_willing_to_trade_to_.py new file mode 100644 index 0000000..3baf1e9 --- /dev/null +++ b/backend/alembic/versions/e70b992e5d95_add_is_favorite_and_willing_to_trade_to_.py @@ -0,0 +1,34 @@ +"""add is_favorite and willing_to_trade to cards + +Revision ID: e70b992e5d95 +Revises: a9f2d4e7c301 +Create Date: 2026-03-27 17:41:30.462441 + +""" +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision: str = 'e70b992e5d95' +down_revision: Union[str, Sequence[str], None] = 'a9f2d4e7c301' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + """Upgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + op.add_column('cards', sa.Column('is_favorite', sa.Boolean(), nullable=False, server_default=sa.false())) + op.add_column('cards', sa.Column('willing_to_trade', sa.Boolean(), nullable=False, server_default=sa.false())) + # ### end Alembic commands ### + + +def downgrade() -> None: + """Downgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + op.drop_column('cards', 'willing_to_trade') + op.drop_column('cards', 'is_favorite') + # ### end Alembic commands ### diff --git a/backend/alembic/versions/f4e8a1b2c3d9_add_fk_indices.py b/backend/alembic/versions/f4e8a1b2c3d9_add_fk_indices.py new file mode 100644 index 0000000..d16a96c --- /dev/null +++ b/backend/alembic/versions/f4e8a1b2c3d9_add_fk_indices.py @@ -0,0 +1,40 @@ +"""add fk indices + +Revision ID: f4e8a1b2c3d9 +Revises: 29da7c818b01 +Create Date: 2026-03-29 00:00:00.000000 + +""" +from typing import Sequence, Union + +from alembic import op + + +# revision identifiers, used by Alembic. +revision: str = 'f4e8a1b2c3d9' +down_revision: Union[str, None] = '29da7c818b01' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + """Add indices on FK columns that are missing them.""" + op.create_index('ix_cards_user_id', 'cards', ['user_id']) + op.create_index('ix_decks_user_id', 'decks', ['user_id']) + op.create_index('ix_notifications_user_id', 'notifications', ['user_id']) + op.create_index('ix_friendships_requester_id', 'friendships', ['requester_id']) + op.create_index('ix_friendships_addressee_id', 'friendships', ['addressee_id']) + # Composite indices mirror the trade_proposals pattern: filter by owner + status together + op.create_index('ix_game_challenges_challenger_status', 'game_challenges', ['challenger_id', 'status']) + op.create_index('ix_game_challenges_challenged_status', 'game_challenges', ['challenged_id', 'status']) + + +def downgrade() -> None: + """Drop FK indices.""" + op.drop_index('ix_game_challenges_challenged_status', table_name='game_challenges') + op.drop_index('ix_game_challenges_challenger_status', table_name='game_challenges') + op.drop_index('ix_friendships_addressee_id', table_name='friendships') + op.drop_index('ix_friendships_requester_id', table_name='friendships') + op.drop_index('ix_notifications_user_id', table_name='notifications') + op.drop_index('ix_decks_user_id', table_name='decks') + op.drop_index('ix_cards_user_id', table_name='cards') diff --git a/backend/alembic/versions/f657d45be3ae_add_trade_response_to_notification_type_.py b/backend/alembic/versions/f657d45be3ae_add_trade_response_to_notification_type_.py new file mode 100644 index 0000000..457bc95 --- /dev/null +++ b/backend/alembic/versions/f657d45be3ae_add_trade_response_to_notification_type_.py @@ -0,0 +1,28 @@ +"""add trade_response to notification type check constraint + +Revision ID: f657d45be3ae +Revises: 4603709eb82d +Create Date: 2026-03-30 12:10:21.112505 + +""" +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision: str = 'f657d45be3ae' +down_revision: Union[str, Sequence[str], None] = '4603709eb82d' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + op.drop_constraint("ck_notifications_type", "notifications", type_="check") + op.create_check_constraint("ck_notifications_type", "notifications", "type IN ('friend_request', 'trade_offer', 'trade_response', 'game_challenge')") + + +def downgrade() -> None: + op.drop_constraint("ck_notifications_type", "notifications", type_="check") + op.create_check_constraint("ck_notifications_type", "notifications", "type IN ('friend_request', 'trade_offer', 'game_challenge')") diff --git a/backend/core/__init__.py b/backend/core/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/backend/auth.py b/backend/core/auth.py similarity index 93% rename from backend/auth.py rename to backend/core/auth.py index 3062cc9..24cbdf9 100644 --- a/backend/auth.py +++ b/backend/core/auth.py @@ -1,9 +1,10 @@ import logging from datetime import datetime, timedelta + from jose import JWTError, jwt from passlib.context import CryptContext -from config import JWT_SECRET_KEY +from core.config import JWT_SECRET_KEY logger = logging.getLogger("app") @@ -40,6 +41,8 @@ def decode_refresh_token(token: str) -> str | None: def decode_access_token(token: str) -> str | None: try: payload = jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM]) + if payload.get("type") != "access": + return None return payload.get("sub") except JWTError: return None \ No newline at end of file diff --git a/backend/config.py b/backend/core/config.py similarity index 100% rename from backend/config.py rename to backend/core/config.py diff --git a/backend/database.py b/backend/core/database.py similarity index 65% rename from backend/database.py rename to backend/core/database.py index 8186c0e..58c0dd3 100644 --- a/backend/database.py +++ b/backend/core/database.py @@ -1,9 +1,14 @@ from sqlalchemy import create_engine from sqlalchemy.orm import DeclarativeBase, sessionmaker -from config import DATABASE_URL +from core.config import DATABASE_URL -engine = create_engine(DATABASE_URL) +engine = create_engine( + DATABASE_URL, + pool_size=10, + max_overflow=20, + pool_timeout=30, +) SessionLocal = sessionmaker(bind=engine) class Base(DeclarativeBase): diff --git a/backend/core/dependencies.py b/backend/core/dependencies.py new file mode 100644 index 0000000..488c550 --- /dev/null +++ b/backend/core/dependencies.py @@ -0,0 +1,43 @@ +import uuid +from datetime import datetime + +from fastapi import Depends, HTTPException, Request, status +from fastapi.security import OAuth2PasswordBearer +from slowapi import Limiter +from slowapi.util import get_remote_address +from sqlalchemy.orm import Session + +from core.auth import decode_access_token +from core.database import get_db +from core.models import User as UserModel + +oauth2_scheme = OAuth2PasswordBearer(tokenUrl="login") + +# Shared rate limiter — registered on app.state in main.py +limiter = Limiter(key_func=get_remote_address) + + +def get_current_user(token: str = Depends(oauth2_scheme), db: Session = Depends(get_db)) -> UserModel: + user_id = decode_access_token(token) + if not user_id: + raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="Invalid token") + user = db.query(UserModel).filter(UserModel.id == uuid.UUID(user_id)).first() + if not user: + raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="User not found") + # Throttle to one write per 5 minutes so every authenticated request doesn't hammer the DB + now = datetime.now() + if not user.last_active_at or (now - user.last_active_at).total_seconds() > 300: + user.last_active_at = now + db.commit() + return user + + +# Per-user key for rate limiting authenticated endpoints — prevents shared IPs (NAT/VPN) +# from having their limits pooled. Falls back to remote IP for unauthenticated requests. +def get_user_id_from_request(request: Request) -> str: + auth = request.headers.get("Authorization", "") + if auth.startswith("Bearer "): + user_id = decode_access_token(auth[7:]) + if user_id: + return f"user:{user_id}" + return get_remote_address(request) diff --git a/backend/core/models.py b/backend/core/models.py new file mode 100644 index 0000000..cded94f --- /dev/null +++ b/backend/core/models.py @@ -0,0 +1,189 @@ +import uuid +from datetime import datetime + +from sqlalchemy import String, Integer, ForeignKey, DateTime, Text, Boolean, UniqueConstraint, CheckConstraint +from sqlalchemy.orm import Mapped, mapped_column, relationship +from sqlalchemy.dialects.postgresql import UUID, JSONB + +from core.database import Base + +class User(Base): + __tablename__ = "users" + + id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) + username: Mapped[str] = mapped_column(String, unique=True, nullable=False) + email: Mapped[str] = mapped_column(String, unique=True, nullable=False) + password_hash: Mapped[str] = mapped_column(String, nullable=False) + created_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.now) + boosters: Mapped[int] = mapped_column(Integer, default=5, nullable=False) + boosters_countdown: Mapped[datetime | None] = mapped_column(DateTime, nullable=True) + wins: Mapped[int] = mapped_column(Integer, default=0, nullable=False) + losses: Mapped[int] = mapped_column(Integer, default=0, nullable=False) + shards: Mapped[int] = mapped_column(Integer, default=0, nullable=False) + last_refresh_at: Mapped[datetime | None] = mapped_column(DateTime, nullable=True) + reset_token: Mapped[str | None] = mapped_column(String, nullable=True) + reset_token_expires_at: Mapped[datetime | None] = mapped_column(DateTime, nullable=True) + email_verified: Mapped[bool] = mapped_column(Boolean, default=False, nullable=False) + email_verification_token: Mapped[str | None] = mapped_column(String, nullable=True) + email_verification_token_expires_at: Mapped[datetime | None] = mapped_column(DateTime, nullable=True) + trade_wishlist: Mapped[str | None] = mapped_column(Text, nullable=True, default="") + last_active_at: Mapped[datetime | None] = mapped_column(DateTime, nullable=True) + + cards: Mapped[list["Card"]] = relationship(back_populates="user", cascade="all, delete-orphan") + decks: Mapped[list["Deck"]] = relationship(back_populates="user", cascade="all, delete-orphan") + notifications: Mapped[list["Notification"]] = relationship(back_populates="user", cascade="all, delete-orphan") + friendships_sent: Mapped[list["Friendship"]] = relationship( + foreign_keys="Friendship.requester_id", back_populates="requester", cascade="all, delete-orphan" + ) + friendships_received: Mapped[list["Friendship"]] = relationship( + foreign_keys="Friendship.addressee_id", back_populates="addressee", cascade="all, delete-orphan" + ) + proposals_sent: Mapped[list["TradeProposal"]] = relationship( + foreign_keys="TradeProposal.proposer_id", back_populates="proposer", cascade="all, delete-orphan" + ) + proposals_received: Mapped[list["TradeProposal"]] = relationship( + foreign_keys="TradeProposal.recipient_id", back_populates="recipient", cascade="all, delete-orphan" + ) + challenges_sent: Mapped[list["GameChallenge"]] = relationship( + foreign_keys="GameChallenge.challenger_id", back_populates="challenger", cascade="all, delete-orphan" + ) + challenges_received: Mapped[list["GameChallenge"]] = relationship( + foreign_keys="GameChallenge.challenged_id", back_populates="challenged", cascade="all, delete-orphan" + ) + + +class Card(Base): + __tablename__ = "cards" + + id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) + user_id: Mapped[uuid.UUID | None] = mapped_column(UUID(as_uuid=True), ForeignKey("users.id", ondelete="CASCADE"), nullable=True) + name: Mapped[str] = mapped_column(String, nullable=False) + image_link: Mapped[str] = mapped_column(String, nullable=True) + card_rarity: Mapped[str] = mapped_column(String, nullable=False) + card_type: Mapped[str] = mapped_column(String, nullable=False) + text: Mapped[str] = mapped_column(Text, nullable=True) + attack: Mapped[int] = mapped_column(Integer, nullable=False) + defense: Mapped[int] = mapped_column(Integer, nullable=False) + cost: Mapped[int] = mapped_column(Integer, nullable=False) + generated_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.now) + received_at: Mapped[datetime | None] = mapped_column(DateTime, nullable=True, default=None) + times_played: Mapped[int] = mapped_column(Integer, default=0, nullable=False) + reported: Mapped[bool] = mapped_column(Boolean, default=False, nullable=False) + ai_used: Mapped[bool] = mapped_column(Boolean, default=False, nullable=False) + is_favorite: Mapped[bool] = mapped_column(Boolean, default=False, nullable=False) + willing_to_trade: Mapped[bool] = mapped_column(Boolean, default=False, nullable=False) + + user: Mapped["User | None"] = relationship(back_populates="cards") + deck_cards: Mapped[list["DeckCard"]] = relationship(back_populates="card", cascade="all, delete-orphan") + + +class Deck(Base): + __tablename__ = "decks" + + id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) + user_id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), ForeignKey("users.id", ondelete="CASCADE"), nullable=False) + name: Mapped[str] = mapped_column(String, nullable=False) + created_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.now) + times_played: Mapped[int] = mapped_column(Integer, default=0, nullable=False) + wins: Mapped[int] = mapped_column(Integer, default=0, nullable=False) + losses: Mapped[int] = mapped_column(Integer, default=0, nullable=False) + deleted: Mapped[bool] = mapped_column(Boolean, default=False, nullable=False) + + user: Mapped["User"] = relationship(back_populates="decks") + deck_cards: Mapped[list["DeckCard"]] = relationship(back_populates="deck", cascade="all, delete-orphan") + + +class Notification(Base): + __tablename__ = "notifications" + __table_args__ = ( + CheckConstraint("type IN ('friend_request', 'trade_offer', 'trade_response', 'game_challenge')", name="ck_notifications_type"), + ) + + id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) + user_id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), ForeignKey("users.id", ondelete="CASCADE"), nullable=False) + # type is one of: friend_request, trade_offer, trade_response, game_challenge + type: Mapped[str] = mapped_column(String, nullable=False) + payload: Mapped[dict] = mapped_column(JSONB, nullable=False, default=dict) + read: Mapped[bool] = mapped_column(Boolean, default=False, nullable=False) + created_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.now) + expires_at: Mapped[datetime | None] = mapped_column(DateTime, nullable=True) + + user: Mapped["User"] = relationship(back_populates="notifications") + + +class Friendship(Base): + __tablename__ = "friendships" + __table_args__ = ( + UniqueConstraint("requester_id", "addressee_id", name="uq_friendship_requester_addressee"), + CheckConstraint("status IN ('pending', 'accepted', 'declined')", name="ck_friendships_status"), + ) + + id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) + requester_id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), ForeignKey("users.id", ondelete="CASCADE"), nullable=False) + addressee_id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), ForeignKey("users.id", ondelete="CASCADE"), nullable=False) + # status: pending / accepted / declined + status: Mapped[str] = mapped_column(String, nullable=False, default="pending") + created_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.now) + + requester: Mapped["User"] = relationship(foreign_keys=[requester_id], back_populates="friendships_sent") + addressee: Mapped["User"] = relationship(foreign_keys=[addressee_id], back_populates="friendships_received") + + +class TradeProposal(Base): + __tablename__ = "trade_proposals" + __table_args__ = ( + CheckConstraint("status IN ('pending', 'accepted', 'declined', 'expired')", name="ck_trade_proposals_status"), + ) + + id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) + proposer_id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), ForeignKey("users.id", ondelete="CASCADE"), nullable=False) + recipient_id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), ForeignKey("users.id", ondelete="CASCADE"), nullable=False) + # Both sides stored as JSONB lists of UUID strings so either party can offer 0 or more cards, + # mirroring the flexibility of the real-time trade system + offered_card_ids: Mapped[list] = mapped_column(JSONB, nullable=False, default=list) + requested_card_ids: Mapped[list] = mapped_column(JSONB, nullable=False, default=list) + # status: pending / accepted / declined / expired + status: Mapped[str] = mapped_column(String, nullable=False, default="pending") + created_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.now) + expires_at: Mapped[datetime] = mapped_column(DateTime, nullable=False) + + proposer: Mapped["User"] = relationship(foreign_keys=[proposer_id]) + recipient: Mapped["User"] = relationship(foreign_keys=[recipient_id]) + + +class GameChallenge(Base): + __tablename__ = "game_challenges" + __table_args__ = ( + CheckConstraint("status IN ('pending', 'accepted', 'declined', 'expired')", name="ck_game_challenges_status"), + ) + + id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) + challenger_id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), ForeignKey("users.id", ondelete="CASCADE"), nullable=False) + challenged_id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), ForeignKey("users.id", ondelete="CASCADE"), nullable=False) + challenger_deck_id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), ForeignKey("decks.id", ondelete="CASCADE"), nullable=False) + # status: pending / accepted / declined / expired + status: Mapped[str] = mapped_column(String, nullable=False, default="pending") + created_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.now) + expires_at: Mapped[datetime] = mapped_column(DateTime, nullable=False) + + challenger: Mapped["User"] = relationship(foreign_keys=[challenger_id], back_populates="challenges_sent") + challenged: Mapped["User"] = relationship(foreign_keys=[challenged_id], back_populates="challenges_received") + challenger_deck: Mapped["Deck"] = relationship(foreign_keys=[challenger_deck_id]) + + +class DeckCard(Base): + __tablename__ = "deck_cards" + + deck_id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), ForeignKey("decks.id", ondelete="CASCADE"), primary_key=True) + card_id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), ForeignKey("cards.id", ondelete="CASCADE"), primary_key=True) + + deck: Mapped["Deck"] = relationship(back_populates="deck_cards") + card: Mapped["Card"] = relationship(back_populates="deck_cards") + + +class ProcessedWebhookEvent(Base): + __tablename__ = "processed_webhook_events" + + # stripe_event_id is the primary key — acts as unique constraint to prevent duplicate processing + stripe_event_id: Mapped[str] = mapped_column(String, primary_key=True) + processed_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.now, nullable=False) \ No newline at end of file diff --git a/backend/database_functions.py b/backend/database_functions.py deleted file mode 100644 index 7831881..0000000 --- a/backend/database_functions.py +++ /dev/null @@ -1,89 +0,0 @@ -import logging -import asyncio -from datetime import datetime, timedelta - -from sqlalchemy.orm import Session - -from card import _get_cards_async -from models import Card as CardModel -from models import User as UserModel -from database import SessionLocal - -logger = logging.getLogger("app") - -POOL_MINIMUM = 1000 -POOL_TARGET = 2000 -POOL_BATCH_SIZE = 10 -POOL_SLEEP = 4.0 - -pool_filling = False - -async def fill_card_pool(): - global pool_filling - if pool_filling: - logger.info("Pool fill already in progress, skipping") - return - - db: Session = SessionLocal() - while True: - try: - unassigned = db.query(CardModel).filter(CardModel.user_id == None, CardModel.ai_used == False).count() - logger.info(f"Card pool has {unassigned} unassigned cards") - if unassigned >= POOL_MINIMUM: - logger.info("Pool sufficiently stocked, skipping fill") - return - - pool_filling = True - needed = POOL_TARGET - unassigned - logger.info(f"Filling pool with {needed} cards") - - fetched = 0 - while fetched < needed: - batch_size = min(POOL_BATCH_SIZE, needed - fetched) - cards = await _get_cards_async(batch_size) - - for card in cards: - db.add(CardModel( - name=card.name, - image_link=card.image_link, - card_rarity=card.card_rarity.name, - card_type=card.card_type.name, - text=card.text, - attack=card.attack, - defense=card.defense, - cost=card.cost, - user_id=None, - )) - db.commit() - fetched += batch_size - logger.info(f"Pool fill progress: {fetched}/{needed}") - await asyncio.sleep(POOL_SLEEP) - - finally: - pool_filling = False - db.close() - -BOOSTER_MAX = 5 -BOOSTER_COOLDOWN_HOURS = 5 - -def check_boosters(user: UserModel, db: Session) -> tuple[int, datetime|None]: - if user.boosters_countdown is None: - if user.boosters < BOOSTER_MAX: - user.boosters = BOOSTER_MAX - db.commit() - return (user.boosters, user.boosters_countdown) - - now = datetime.now() - countdown = user.boosters_countdown - - while user.boosters < BOOSTER_MAX: - next_tick = countdown + timedelta(hours=BOOSTER_COOLDOWN_HOURS) - if now >= next_tick: - user.boosters += 1 - countdown = next_tick - else: - break - - user.boosters_countdown = countdown if user.boosters < BOOSTER_MAX else None - db.commit() - return (user.boosters, user.boosters_countdown) diff --git a/backend/game/__init__.py b/backend/game/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/backend/card.py b/backend/game/card.py similarity index 98% rename from backend/card.py rename to backend/game/card.py index 93af87d..2cd145d 100644 --- a/backend/card.py +++ b/backend/game/card.py @@ -6,7 +6,7 @@ from urllib.parse import quote from datetime import datetime, timedelta from time import sleep -from config import WIKIRANK_USER_AGENT +from core.config import WIKIRANK_USER_AGENT HEADERS = {"User-Agent": WIKIRANK_USER_AGENT} logger = logging.getLogger("app") @@ -33,7 +33,7 @@ class CardRarity(Enum): class Card(NamedTuple): name: str - created_at: datetime + generated_at: datetime image_link: str card_rarity: CardRarity card_type: CardType @@ -81,7 +81,7 @@ class Card(NamedTuple): return_string += "┃"+f"{l:{' '}<50}"+"┃\n" return_string += "┠"+"─"*50+"┨\n" - date_text = str(self.created_at.date()) + date_text = str(self.generated_at.date()) stats = f"{self.attack}/{self.defense}" spaces = 50 - (len(date_text) + len(stats)) return_string += "┃"+date_text + " "*spaces + stats + "┃\n" @@ -123,6 +123,7 @@ WIKIDATA_INSTANCE_TYPE_MAP = { "Q1446621": CardType.artwork, # recital "Q1868552": CardType.artwork, # local newspaper "Q3244175": CardType.artwork, # tabletop game + "Q2031291": CardType.artwork, # musical release "Q63952888": CardType.artwork, # anime television series "Q47461344": CardType.artwork, # written work "Q71631512": CardType.artwork, # tabletop role-playing game supplement @@ -167,6 +168,7 @@ WIKIDATA_INSTANCE_TYPE_MAP = { "Q198": CardType.event, # war "Q8465": CardType.event, # civil war + "Q844482": CardType.event, # killing "Q141022": CardType.event, # eclipse "Q103495": CardType.event, # world war "Q350604": CardType.event, # armed conflict @@ -180,7 +182,7 @@ WIKIDATA_INSTANCE_TYPE_MAP = { "Q1361229": CardType.event, # conquest "Q2223653": CardType.event, # terrorist attack "Q2672648": CardType.event, # social conflict - "Q2627975": CardType.event, # ceremony + "Q2627975": CardType.event, # ceremony" "Q16510064": CardType.event, # sporting event "Q10688145": CardType.event, # season "Q13418847": CardType.event, # historical event @@ -275,6 +277,7 @@ WIKIDATA_INSTANCE_TYPE_MAP = { "Q1428357": CardType.vehicle, # submarine class "Q1499623": CardType.vehicle, # destroyer escort "Q4818021": CardType.vehicle, # attack submarine + "Q45296117": CardType.vehicle, # aircraft type "Q15141321": CardType.vehicle, # train service "Q19832486": CardType.vehicle, # locomotive class "Q23866334": CardType.vehicle, # motorcycle model @@ -544,7 +547,7 @@ async def _get_card_async(client: httpx.AsyncClient, page_title: str|None = None return Card( name=summary["title"], - created_at=datetime.now(), + generated_at=datetime.now(), image_link=summary.get("thumbnail", {}).get("source", ""), card_rarity=rarity, card_type=card_type, diff --git a/backend/game_manager.py b/backend/game/manager.py similarity index 86% rename from backend/game_manager.py rename to backend/game/manager.py index 3cae411..dd491a3 100644 --- a/backend/game_manager.py +++ b/backend/game/manager.py @@ -1,20 +1,21 @@ import asyncio -import uuid -from datetime import datetime import logging import random - +import uuid from dataclasses import dataclass +from datetime import datetime + from fastapi import WebSocket +from sqlalchemy.exc import SQLAlchemyError from sqlalchemy.orm import Session -from game import ( +from game.rules import ( GameState, CardInstance, PlayerState, action_play_card, action_sacrifice, action_end_turn, create_game, CombatEvent, GameResult, BOARD_SIZE ) -from models import Card as CardModel, Deck as DeckModel, DeckCard as DeckCardModel, User as UserModel -from card import compute_deck_type -from ai import AI_USER_ID, run_ai_turn, get_random_personality, choose_cards +from core.models import Card as CardModel, Deck as DeckModel, DeckCard as DeckCardModel, User as UserModel +from game.card import compute_deck_type +from ai.engine import AI_USER_ID, run_ai_turn, get_random_personality, choose_cards logger = logging.getLogger("app") @@ -90,7 +91,9 @@ def serialize_card(card: CardInstance|None) -> dict | None: "card_type": card.card_type, "card_rarity": card.card_rarity, "image_link": card.image_link, - "text": card.text + "text": card.text, + "is_favorite": card.is_favorite, + "willing_to_trade": card.willing_to_trade, } def serialize_player(player: PlayerState, hide_hand=False) -> dict: @@ -150,8 +153,8 @@ async def broadcast_state(game_id: str): "type": "state", "state": serialize_state(state, user_id), }) - except Exception: - pass + except Exception as e: + logger.debug(f"WebSocket send failed (stale connection): {e}") if state.active_player_id == AI_USER_ID and not state.result: asyncio.create_task(run_ai_turn(game_id)) @@ -221,6 +224,33 @@ async def try_match(db: Session): await broadcast_state(state.game_id) +## Direct challenge game creation (no WebSocket needed at creation time) + +def create_challenge_game( + challenger_id: str, challenger_deck_id: str, + challenged_id: str, challenged_deck_id: str, + db: Session +) -> str: + challenger = db.query(UserModel).filter(UserModel.id == uuid.UUID(challenger_id)).first() + challenged = db.query(UserModel).filter(UserModel.id == uuid.UUID(challenged_id)).first() + p1_cards = load_deck_cards(challenger_deck_id, challenger_id, db) + p2_cards = load_deck_cards(challenged_deck_id, challenged_id, db) + if not p1_cards or not p2_cards or not challenger or not challenged: + raise ValueError("Could not load decks or players") + p1_deck_type = compute_deck_type(p1_cards) + p2_deck_type = compute_deck_type(p2_cards) + state = create_game( + challenger_id, challenger.username, p1_deck_type or "", p1_cards, + challenged_id, challenged.username, p2_deck_type or "", p2_cards, + ) + active_games[state.game_id] = state + # Initialize with no websockets; players connect via /ws/game/{game_id} after redirect + connections[state.game_id] = {challenger_id: None, challenged_id: None} + active_deck_ids[challenger_id] = challenger_deck_id + active_deck_ids[challenged_id] = challenged_deck_id + return state.game_id + + ## Action handler async def handle_action(game_id: str, user_id: str, message: dict, db: Session): @@ -255,7 +285,7 @@ async def handle_action(game_id: str, user_id: str, message: dict, db: Session): if card: card.times_played += 1 db.commit() - except Exception as e: + except (SQLAlchemyError, ValueError) as e: logger.warning(f"Failed to increment times_played for card {card_instance.card_id}: {e}") db.rollback() elif action == "sacrifice": @@ -275,8 +305,8 @@ async def handle_action(game_id: str, user_id: str, message: dict, db: Session): "type": "sacrifice_animation", "instance_id": card.instance_id, }) - except Exception: - pass + except Exception as e: + logger.debug(f"WebSocket send failed (stale connection): {e}") await asyncio.sleep(0.65) err = action_sacrifice(state, slot) elif action == "end_turn": @@ -325,7 +355,7 @@ async def handle_disconnect(game_id: str, user_id: str): ) state.phase = "end" - from database import SessionLocal + from core.database import SessionLocal db = SessionLocal() try: record_game_result(state, db) @@ -340,8 +370,8 @@ async def handle_disconnect(game_id: str, user_id: str): "type": "state", "state": serialize_state(state, winner_id), }) - except Exception: - pass + except Exception as e: + logger.debug(f"WebSocket send failed (stale connection): {e}") active_deck_ids.pop(user_id, None) active_deck_ids.pop(winner_id, None) diff --git a/backend/game.py b/backend/game/rules.py similarity index 97% rename from backend/game.py rename to backend/game/rules.py index 9205924..a1f1ca4 100644 --- a/backend/game.py +++ b/backend/game/rules.py @@ -1,10 +1,10 @@ -from dataclasses import dataclass, field -from typing import Optional import random import uuid +from dataclasses import dataclass, field from datetime import datetime +from typing import Optional -from models import Card as CardModel +from core.models import Card as CardModel STARTING_LIFE = 1000 MAX_ENERGY_CAP = 6 @@ -24,6 +24,8 @@ class CardInstance: card_rarity: str image_link: str text: str + is_favorite: bool = False + willing_to_trade: bool = False @classmethod def from_db_card(cls, card: CardModel) -> "CardInstance": @@ -38,7 +40,9 @@ class CardInstance: card_type=card.card_type, card_rarity=card.card_rarity, image_link=card.image_link or "", - text=card.text + text=card.text, + is_favorite=card.is_favorite, + willing_to_trade=card.willing_to_trade, ) @dataclass diff --git a/backend/give_card.py b/backend/give_card.py index 5eaca50..30a3649 100644 --- a/backend/give_card.py +++ b/backend/give_card.py @@ -8,15 +8,17 @@ Example: python give_card.py nikolaj "Marie Curie" """ -import sys import asyncio +import sys +import uuid +from datetime import datetime + from dotenv import load_dotenv load_dotenv() -from database import SessionLocal -from models import User as UserModel, Card as CardModel -from card import _get_specific_card_async -import uuid +from game.card import _get_specific_card_async +from core.database import SessionLocal +from core.models import User as UserModel, Card as CardModel async def main(username: str, page_title: str) -> None: @@ -44,6 +46,7 @@ async def main(username: str, page_title: str) -> None: attack=card.attack, defense=card.defense, cost=card.cost, + received_at=datetime.now(), ) db.add(db_card) db.commit() diff --git a/backend/main.py b/backend/main.py index 36f8a1a..dc473d3 100644 --- a/backend/main.py +++ b/backend/main.py @@ -1,846 +1,54 @@ import asyncio import logging -import uuid -import re from contextlib import asynccontextmanager -from datetime import datetime, timedelta -from typing import cast, Callable -import secrets +from typing import Callable, cast + from dotenv import load_dotenv load_dotenv() -from sqlalchemy.orm import Session -from sqlalchemy import func -from fastapi import FastAPI, Depends, HTTPException, status, WebSocket, WebSocketDisconnect, Request -from fastapi.security import OAuth2PasswordBearer, OAuth2PasswordRequestForm -from fastapi.middleware.cors import CORSMiddleware -from pydantic import BaseModel -from slowapi import Limiter, _rate_limit_exceeded_handler -from slowapi.util import get_remote_address -from slowapi.errors import RateLimitExceeded - -from database import get_db -from database_functions import fill_card_pool, check_boosters, BOOSTER_MAX -from models import Card as CardModel -from models import User as UserModel -from models import Deck as DeckModel -from models import DeckCard as DeckCardModel -from auth import ( - hash_password, verify_password, create_access_token, create_refresh_token, - decode_access_token, decode_refresh_token -) -from game_manager import ( - queue, queue_lock, QueueEntry, try_match, handle_action, connections, active_games, - serialize_state, handle_disconnect, handle_timeout_claim, load_deck_cards, create_solo_game -) -from trade_manager import ( - trade_queue, trade_queue_lock, TradeQueueEntry, try_trade_match, - handle_trade_action, active_trades, handle_trade_disconnect, - serialize_trade, -) -from card import compute_deck_type, _get_specific_card_async -from email_utils import send_password_reset_email, send_verification_email -from config import CORS_ORIGINS, STRIPE_SECRET_KEY, STRIPE_PUBLISHABLE_KEY, STRIPE_WEBHOOK_SECRET, FRONTEND_URL import stripe +from fastapi import FastAPI +from fastapi.middleware.cors import CORSMiddleware +from slowapi.errors import RateLimitExceeded +from slowapi import _rate_limit_exceeded_handler + +from core.config import CORS_ORIGINS, STRIPE_SECRET_KEY +from core.dependencies import limiter +from services.database_functions import fill_card_pool, run_cleanup_loop + +from routers import auth, cards, decks, games, health, notifications, profile, friends, store, trades + stripe.api_key = STRIPE_SECRET_KEY logger = logging.getLogger("app") -# Auth -oauth2_scheme = OAuth2PasswordBearer(tokenUrl="login") - -class RegisterRequest(BaseModel): - username: str - email: str - password: str - -def get_current_user(token: str = Depends(oauth2_scheme), db: Session = Depends(get_db)) -> UserModel: - user_id = decode_access_token(token) - if not user_id: - raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="Invalid token") - user = db.query(UserModel).filter(UserModel.id == uuid.UUID(user_id)).first() - if not user: - raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="User not found") - return user - -class ForgotPasswordRequest(BaseModel): - email: str - -class ResetPasswordWithTokenRequest(BaseModel): - token: str - new_password: str @asynccontextmanager async def lifespan(app: FastAPI): asyncio.create_task(fill_card_pool()) + asyncio.create_task(run_cleanup_loop()) yield + app = FastAPI(lifespan=lifespan) -# Rate limiting -limiter = Limiter(key_func=get_remote_address) app.state.limiter = limiter app.add_exception_handler(RateLimitExceeded, cast(Callable, _rate_limit_exceeded_handler)) app.add_middleware( CORSMiddleware, - allow_origins=CORS_ORIGINS, # SvelteKit's default dev port + allow_origins=CORS_ORIGINS, allow_methods=["*"], allow_headers=["*"], ) -try: - from disposable_email_domains import blocklist as _disposable_blocklist -except ImportError: - _disposable_blocklist: set[str] = set() - -def validate_register(username: str, email: str, password: str) -> str | None: - if not username.strip(): - return "Username is required" - if len(username) > 16: - return "Username must be 16 characters or fewer" - if not re.match(r"^[^\s@]+@[^\s@]+\.[^\s@]+$", email): - return "Please enter a valid email" - domain = email.split("@")[-1].lower() - if domain in _disposable_blocklist: - return "Disposable email addresses are not allowed" - if len(password) < 8: - return "Password must be at least 8 characters" - if len(password) > 256: - return "Password must be 256 characters or fewer" - return None - -@app.post("/register") -def register(req: RegisterRequest, db: Session = Depends(get_db)): - err = validate_register(req.username, req.email, req.password) - if err: - raise HTTPException(status_code=400, detail=err) - if db.query(UserModel).filter(UserModel.username == req.username).first(): - raise HTTPException(status_code=400, detail="Username already taken") - if db.query(UserModel).filter(UserModel.email == req.email).first(): - raise HTTPException(status_code=400, detail="Email already registered") - verification_token = secrets.token_urlsafe(32) - user = UserModel( - id=uuid.uuid4(), - username=req.username, - email=req.email, - password_hash=hash_password(req.password), - email_verified=False, - email_verification_token=verification_token, - email_verification_token_expires_at=datetime.now() + timedelta(hours=24), - ) - db.add(user) - db.commit() - try: - send_verification_email(req.email, req.username, verification_token) - except Exception as e: - logger.error(f"Failed to send verification email: {e}") - return {"message": "Account created. Please check your email to verify your account."} - -@app.post("/login") -def login(form: OAuth2PasswordRequestForm = Depends(), db: Session = Depends(get_db)): - user = db.query(UserModel).filter(UserModel.username == form.username).first() - if not user or not verify_password(form.password, user.password_hash): - raise HTTPException(status_code=400, detail="Invalid username or password") - return { - "access_token": create_access_token(str(user.id)), - "refresh_token": create_refresh_token(str(user.id)), - "token_type": "bearer", - } - -@app.get("/boosters") -def get_boosters(user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - count, countdown = check_boosters(user, db) - return {"count": count, "countdown": countdown, "email_verified": user.email_verified} - -@app.get("/cards") -def get_cards(user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - cards = db.query(CardModel).filter(CardModel.user_id == user.id).all() - return [ - {**{c.name: getattr(card, c.name) for c in card.__table__.columns}, - "card_rarity": card.card_rarity, - "card_type": card.card_type} - for card in cards - ] - -@app.get("/cards/in-decks") -def get_cards_in_decks(user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - deck_ids = [d.id for d in db.query(DeckModel).filter(DeckModel.user_id == user.id, DeckModel.deleted == False).all()] - if not deck_ids: - return [] - card_ids = db.query(DeckCardModel.card_id).filter(DeckCardModel.deck_id.in_(deck_ids)).distinct().all() - return [str(row.card_id) for row in card_ids] - -@app.post("/open_pack") -@limiter.limit("10/minute") -async def open_pack(request: Request, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - if not user.email_verified: - raise HTTPException(status_code=403, detail="You must verify your email before opening packs") - - check_boosters(user, db) - - if user.boosters == 0: - raise HTTPException(status_code=400, detail="No booster packs available") - - cards = ( - db.query(CardModel) - .filter(CardModel.user_id == None, CardModel.ai_used == False) - .limit(5) - .all() - ) - - if len(cards) < 5: - asyncio.create_task(fill_card_pool()) - raise HTTPException(status_code=503, detail="Card pool is low, please try again shortly") - - for card in cards: - card.user_id = user.id - - was_full = user.boosters == BOOSTER_MAX - user.boosters -= 1 - if was_full: - user.boosters_countdown = datetime.now() - - db.commit() - - asyncio.create_task(fill_card_pool()) - - return [ - {**{c.name: getattr(card, c.name) for c in card.__table__.columns}, - "card_rarity": card.card_rarity, - "card_type": card.card_type} - for card in cards - ] - -@app.get("/decks") -def get_decks(user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - decks = db.query(DeckModel).filter( - DeckModel.user_id == user.id, - DeckModel.deleted == False - ).order_by(DeckModel.created_at).all() - result = [] - for deck in decks: - card_ids = [dc.card_id for dc in db.query(DeckCardModel).filter(DeckCardModel.deck_id == deck.id).all()] - cards = db.query(CardModel).filter(CardModel.id.in_(card_ids)).all() - result.append({ - "id": str(deck.id), - "name": deck.name, - "card_count": len(cards), - "total_cost": sum(card.cost for card in cards), - "times_played": deck.times_played, - "wins": deck.wins, - "losses": deck.losses, - "deck_type": compute_deck_type(cards), - }) - return result - -@app.post("/decks") -def create_deck(user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - count = db.query(DeckModel).filter(DeckModel.user_id == user.id).count() - deck = DeckModel(id=uuid.uuid4(), user_id=user.id, name=f"Deck #{count + 1}") - db.add(deck) - db.commit() - return {"id": str(deck.id), "name": deck.name, "card_count": 0} - -@app.patch("/decks/{deck_id}") -def update_deck(deck_id: str, body: dict, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - deck = db.query(DeckModel).filter(DeckModel.id == uuid.UUID(deck_id), DeckModel.user_id == user.id).first() - if not deck: - raise HTTPException(status_code=404, detail="Deck not found") - if "name" in body: - deck.name = body["name"] - if "card_ids" in body: - db.query(DeckCardModel).filter(DeckCardModel.deck_id == deck.id).delete() - for card_id in body["card_ids"]: - db.add(DeckCardModel(deck_id=deck.id, card_id=uuid.UUID(card_id))) - if deck.times_played > 0: - deck.wins = 0 - deck.losses = 0 - deck.times_played = 0 - db.commit() - return {"id": str(deck.id), "name": deck.name} - -@app.delete("/decks/{deck_id}") -def delete_deck(deck_id: str, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - deck = db.query(DeckModel).filter(DeckModel.id == uuid.UUID(deck_id), DeckModel.user_id == user.id).first() - if not deck: - raise HTTPException(status_code=404, detail="Deck not found") - if deck.times_played > 0: - deck.deleted = True - else: - db.query(DeckCardModel).filter(DeckCardModel.deck_id == deck.id).delete() - db.delete(deck) - db.commit() - return {"message": "Deleted"} - -@app.get("/decks/{deck_id}/cards") -def get_deck_cards(deck_id: str, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - deck = db.query(DeckModel).filter(DeckModel.id == uuid.UUID(deck_id), DeckModel.user_id == user.id).first() - if not deck: - raise HTTPException(status_code=404, detail="Deck not found") - deck_cards = db.query(DeckCardModel).filter(DeckCardModel.deck_id == deck.id).all() - return [str(dc.card_id) for dc in deck_cards] - -@app.websocket("/ws/queue") -async def queue_endpoint(websocket: WebSocket, deck_id: str, db: Session = Depends(get_db)): - await websocket.accept() - - token = await websocket.receive_text() - user_id = decode_access_token(token) - if not user_id: - await websocket.close(code=1008) - return - - deck = db.query(DeckModel).filter( - DeckModel.id == uuid.UUID(deck_id), - DeckModel.user_id == uuid.UUID(user_id) - ).first() - - if not deck: - await websocket.send_json({"type": "error", "message": "Deck not found"}) - await websocket.close(code=1008) - return - - card_ids = [dc.card_id for dc in db.query(DeckCardModel).filter(DeckCardModel.deck_id == deck.id).all()] - total_cost = db.query(func.sum(CardModel.cost)).filter(CardModel.id.in_(card_ids)).scalar() or 0 - if total_cost == 0 or total_cost > 50: - await websocket.send_json({"type": "error", "message": "Deck total cost must be between 1 and 50"}) - await websocket.close(code=1008) - return - - entry = QueueEntry(user_id=user_id, deck_id=deck_id, websocket=websocket) - - async with queue_lock: - queue.append(entry) - - await websocket.send_json({"type": "queued"}) - await try_match(db) - - try: - while True: - # Keeping socket alive - await websocket.receive_text() - except WebSocketDisconnect: - async with queue_lock: - queue[:] = [e for e in queue if e.user_id != user_id] - - -@app.websocket("/ws/game/{game_id}") -async def game_endpoint(websocket: WebSocket, game_id: str, db: Session = Depends(get_db)): - await websocket.accept() - - token = await websocket.receive_text() - user_id = decode_access_token(token) - if not user_id: - await websocket.close(code=1008) - return - - if game_id not in active_games: - await websocket.close(code=1008) - return - - # Register this connection (handles reconnects) - connections[game_id][user_id] = websocket - - # Send current state immediately on connect - await websocket.send_json({ - "type": "state", - "state": serialize_state(active_games[game_id], user_id), - }) - - try: - while True: - data = await websocket.receive_json() - await handle_action(game_id, user_id, data, db) - except WebSocketDisconnect: - if game_id in connections: - connections[game_id].pop(user_id, None) - asyncio.create_task(handle_disconnect(game_id, user_id)) - -@app.websocket("/ws/trade/queue") -async def trade_queue_endpoint(websocket: WebSocket, db: Session = Depends(get_db)): - await websocket.accept() - - token = await websocket.receive_text() - user_id = decode_access_token(token) - if not user_id: - await websocket.close(code=1008) - return - - user = db.query(UserModel).filter(UserModel.id == uuid.UUID(user_id)).first() - if not user: - await websocket.close(code=1008) - return - if not user.email_verified: - await websocket.send_json({"type": "error", "message": "You must verify your email before trading."}) - await websocket.close(code=1008) - return - - entry = TradeQueueEntry(user_id=user_id, username=user.username, websocket=websocket) - - async with trade_queue_lock: - trade_queue.append(entry) - - await websocket.send_json({"type": "queued"}) - await try_trade_match() - - try: - while True: - await websocket.receive_text() - except WebSocketDisconnect: - async with trade_queue_lock: - trade_queue[:] = [e for e in trade_queue if e.user_id != user_id] - - -@app.websocket("/ws/trade/{trade_id}") -async def trade_endpoint(websocket: WebSocket, trade_id: str, db: Session = Depends(get_db)): - await websocket.accept() - - token = await websocket.receive_text() - user_id = decode_access_token(token) - if not user_id: - await websocket.close(code=1008) - return - - session = active_trades.get(trade_id) - if not session or user_id not in session.offers: - await websocket.close(code=1008) - return - - session.connections[user_id] = websocket - - await websocket.send_json({ - "type": "state", - "state": serialize_trade(session, user_id), - }) - - try: - while True: - data = await websocket.receive_json() - await handle_trade_action(trade_id, user_id, data, db) - except WebSocketDisconnect: - session.connections.pop(user_id, None) - asyncio.create_task(handle_trade_disconnect(trade_id, user_id)) - - -@app.get("/profile") -def get_profile(user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - total_games = user.wins + user.losses - - most_played_deck = ( - db.query(DeckModel) - .filter(DeckModel.user_id == user.id, DeckModel.times_played > 0) - .order_by(DeckModel.times_played.desc()) - .first() - ) - - most_played_card = ( - db.query(CardModel) - .filter(CardModel.user_id == user.id, CardModel.times_played > 0) - .order_by(CardModel.times_played.desc()) - .first() - ) - - return { - "username": user.username, - "email": user.email, - "email_verified": user.email_verified, - "created_at": user.created_at, - "wins": user.wins, - "losses": user.losses, - "shards": user.shards, - "win_rate": round((user.wins / total_games) * 100) if total_games > 0 else None, - "most_played_deck": { - "name": most_played_deck.name, - "times_played": most_played_deck.times_played, - } if most_played_deck else None, - "most_played_card": { - "name": most_played_card.name, - "times_played": most_played_card.times_played, - "card_type": most_played_card.card_type, - "card_rarity": most_played_card.card_rarity, - "image_link": most_played_card.image_link, - } if most_played_card else None, - } - -class ShatterRequest(BaseModel): - card_ids: list[str] - -@app.post("/shards/shatter") -def shatter_cards(req: ShatterRequest, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - if not req.card_ids: - raise HTTPException(status_code=400, detail="No cards selected") - try: - parsed_ids = [uuid.UUID(cid) for cid in req.card_ids] - except ValueError: - raise HTTPException(status_code=400, detail="Invalid card IDs") - - cards = db.query(CardModel).filter( - CardModel.id.in_(parsed_ids), - CardModel.user_id == user.id, - ).all() - - if len(cards) != len(parsed_ids): - raise HTTPException(status_code=400, detail="Some cards are not in your collection") - - total = sum(c.cost for c in cards) - - for card in cards: - db.query(DeckCardModel).filter(DeckCardModel.card_id == card.id).delete() - db.delete(card) - - user.shards += total - db.commit() - return {"shards": user.shards, "gained": total} - -# Shard packages sold for real money. -# price_oere is in Danish øre (1 DKK = 100 øre). Stripe minimum is 250 øre. -SHARD_PACKAGES = { - "s1": {"base": 100, "bonus": 0, "shards": 100, "price_oere": 1000, "price_label": "10 DKK"}, - "s2": {"base": 250, "bonus": 50, "shards": 300, "price_oere": 2500, "price_label": "25 DKK"}, - "s3": {"base": 500, "bonus": 200, "shards": 700, "price_oere": 5000, "price_label": "50 DKK"}, - "s4": {"base": 1000, "bonus": 600, "shards": 1600, "price_oere": 10000, "price_label": "100 DKK"}, - "s5": {"base": 2500, "bonus": 2000, "shards": 4500, "price_oere": 25000, "price_label": "250 DKK"}, - "s6": {"base": 5000, "bonus": 5000, "shards": 10000, "price_oere": 50000, "price_label": "500 DKK"}, -} - -class StripeCheckoutRequest(BaseModel): - package_id: str - -@app.post("/store/stripe/checkout") -def create_stripe_checkout(req: StripeCheckoutRequest, user: UserModel = Depends(get_current_user)): - package = SHARD_PACKAGES.get(req.package_id) - if not package: - raise HTTPException(status_code=400, detail="Invalid package") - session = stripe.checkout.Session.create( - payment_method_types=["card"], - line_items=[{ - "price_data": { - "currency": "dkk", - "product_data": {"name": f"WikiTCG Shards — {package['price_label']}"}, - "unit_amount": package["price_oere"], - }, - "quantity": 1, - }], - mode="payment", - success_url=f"{FRONTEND_URL}/store?payment=success", - cancel_url=f"{FRONTEND_URL}/store", - metadata={"user_id": str(user.id), "shards": str(package["shards"])}, - ) - return {"url": session.url} - -@app.post("/stripe/webhook") -async def stripe_webhook(request: Request, db: Session = Depends(get_db)): - payload = await request.body() - sig = request.headers.get("stripe-signature", "") - try: - event = stripe.Webhook.construct_event(payload, sig, STRIPE_WEBHOOK_SECRET) - except stripe.error.SignatureVerificationError: # type: ignore - raise HTTPException(status_code=400, detail="Invalid signature") - - if event["type"] == "checkout.session.completed": - data = event["data"]["object"] - user_id = data.get("metadata", {}).get("user_id") - shards = data.get("metadata", {}).get("shards") - if user_id and shards: - user = db.query(UserModel).filter(UserModel.id == uuid.UUID(user_id)).first() - if user: - user.shards += int(shards) - db.commit() - - return {"ok": True} - -@app.get("/store/config") -def store_config(): - return { - "publishable_key": STRIPE_PUBLISHABLE_KEY, - "shard_packages": SHARD_PACKAGES, - } - -STORE_PACKAGES = { - 1: 15, - 5: 65, - 10: 120, - 25: 260, -} - -class StoreBuyRequest(BaseModel): - quantity: int - -class BuySpecificCardRequest(BaseModel): - wiki_title: str - -SPECIFIC_CARD_COST = 1000 - -@app.post("/store/buy-specific-card") -@limiter.limit("10/hour") -async def buy_specific_card(request: Request, req: BuySpecificCardRequest, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - if user.shards < SPECIFIC_CARD_COST: - raise HTTPException(status_code=400, detail="Not enough shards") - - card = await _get_specific_card_async(req.wiki_title) - if card is None: - raise HTTPException(status_code=404, detail="Could not generate a card for that Wikipedia page") - - db_card = CardModel( - name=card.name, - image_link=card.image_link, - card_rarity=card.card_rarity.name, - card_type=card.card_type.name, - text=card.text, - attack=card.attack, - defense=card.defense, - cost=card.cost, - user_id=user.id, - ) - db.add(db_card) - user.shards -= SPECIFIC_CARD_COST - db.commit() - db.refresh(db_card) - - return { - **{c.name: getattr(db_card, c.name) for c in db_card.__table__.columns}, - "card_rarity": db_card.card_rarity, - "card_type": db_card.card_type, - "shards": user.shards, - } - -@app.post("/store/buy") -def store_buy(req: StoreBuyRequest, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - cost = STORE_PACKAGES.get(req.quantity) - if cost is None: - raise HTTPException(status_code=400, detail="Invalid package") - if user.shards < cost: - raise HTTPException(status_code=400, detail="Not enough shards") - user.shards -= cost - user.boosters += req.quantity - db.commit() - return {"shards": user.shards, "boosters": user.boosters} - -@app.post("/cards/{card_id}/report") -def report_card(card_id: str, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - card = db.query(CardModel).filter( - CardModel.id == uuid.UUID(card_id), - CardModel.user_id == user.id - ).first() - if not card: - raise HTTPException(status_code=404, detail="Card not found") - card.reported = True - db.commit() - return {"message": "Card reported"} - -@app.post("/cards/{card_id}/refresh") -@limiter.limit("5/hour") -async def refresh_card(request: Request, card_id: str, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - card = db.query(CardModel).filter( - CardModel.id == uuid.UUID(card_id), - CardModel.user_id == user.id - ).first() - if not card: - raise HTTPException(status_code=404, detail="Card not found") - - if user.last_refresh_at and datetime.now() - user.last_refresh_at < timedelta(hours=2): - remaining = (user.last_refresh_at + timedelta(hours=2)) - datetime.now() - hours = int(remaining.total_seconds() // 3600) - minutes = int((remaining.total_seconds() % 3600) // 60) - raise HTTPException( - status_code=429, - detail=f"You can refresh again in {hours}h {minutes}m" - ) - - new_card = await _get_specific_card_async(card.name) - if not new_card: - raise HTTPException(status_code=502, detail="Failed to regenerate card from Wikipedia") - - card.image_link = new_card.image_link - card.card_rarity = new_card.card_rarity.name - card.card_type = new_card.card_type.name - card.text = new_card.text - card.attack = new_card.attack - card.defense = new_card.defense - card.cost = new_card.cost - card.reported = False - - user.last_refresh_at = datetime.now() - db.commit() - - return { - **{c.name: getattr(card, c.name) for c in card.__table__.columns}, - "card_rarity": card.card_rarity, - "card_type": card.card_type, - } - -@app.get("/profile/refresh-status") -def refresh_status(user: UserModel = Depends(get_current_user)): - if not user.last_refresh_at: - return {"can_refresh": True, "next_refresh_at": None} - next_refresh = user.last_refresh_at + timedelta(hours=2) - can_refresh = datetime.now() >= next_refresh - return { - "can_refresh": can_refresh, - "next_refresh_at": next_refresh.isoformat() if not can_refresh else None, - } - -@app.post("/game/{game_id}/claim-timeout-win") -async def claim_timeout_win(game_id: str, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - err = await handle_timeout_claim(game_id, str(user.id), db) - if err: - raise HTTPException(status_code=400, detail=err) - return {"message": "Win claimed"} - -@app.post("/game/solo") -async def start_solo_game(deck_id: str, difficulty: int = 5, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - if difficulty < 1 or difficulty > 10: - raise HTTPException(status_code=400, detail="Difficulty must be between 1 and 10") - - deck = db.query(DeckModel).filter( - DeckModel.id == uuid.UUID(deck_id), - DeckModel.user_id == user.id - ).first() - if not deck: - raise HTTPException(status_code=404, detail="Deck not found") - - card_ids = [dc.card_id for dc in db.query(DeckCardModel).filter(DeckCardModel.deck_id == deck.id).all()] - total_cost = db.query(func.sum(CardModel.cost)).filter(CardModel.id.in_(card_ids)).scalar() or 0 - if total_cost == 0 or total_cost > 50: - raise HTTPException(status_code=400, detail="Deck total cost must be between 1 and 50") - - player_cards = load_deck_cards(deck_id, str(user.id), db) - if player_cards is None: - raise HTTPException(status_code=503, detail="Couldn't load deck") - - ai_cards = db.query(CardModel).filter( - CardModel.user_id == None, - ).order_by(func.random()).limit(500).all() - - if len(ai_cards) == 0: - raise HTTPException(status_code=503, detail="Not enough cards in pool for AI deck") - - for card in ai_cards: - card.ai_used = True - db.commit() - - game_id = create_solo_game(str(user.id), user.username, player_cards, ai_cards, deck_id, difficulty) - asyncio.create_task(fill_card_pool()) - - return {"game_id": game_id} - -class ResetPasswordRequest(BaseModel): - current_password: str - new_password: str - -@app.post("/auth/reset-password") -def reset_password(req: ResetPasswordRequest, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): - if not verify_password(req.current_password, user.password_hash): - raise HTTPException(status_code=400, detail="Current password is incorrect") - if len(req.new_password) < 8: - raise HTTPException(status_code=400, detail="Password must be at least 8 characters") - if len(req.new_password) > 256: - raise HTTPException(status_code=400, detail="Password must be 256 characters or fewer") - if req.current_password == req.new_password: - raise HTTPException(status_code=400, detail="New password must be different from current password") - user.password_hash = hash_password(req.new_password) - db.commit() - return {"message": "Password updated"} - -@app.post("/auth/forgot-password") -def forgot_password(req: ForgotPasswordRequest, db: Session = Depends(get_db)): - user = db.query(UserModel).filter(UserModel.email == req.email).first() - # Always return success even if email not found. Prevents user enumeration - if user: - token = secrets.token_urlsafe(32) - user.reset_token = token - user.reset_token_expires_at = datetime.now() + timedelta(hours=1) - db.commit() - try: - send_password_reset_email(user.email, user.username, token) - except Exception as e: - logger.error(f"Failed to send reset email: {e}") - return {"message": "If that email is registered you will receive a reset link shortly"} - -@app.post("/auth/reset-password-with-token") -def reset_password_with_token(req: ResetPasswordWithTokenRequest, db: Session = Depends(get_db)): - user = db.query(UserModel).filter(UserModel.reset_token == req.token).first() - if not user or not user.reset_token_expires_at or user.reset_token_expires_at < datetime.now(): - raise HTTPException(status_code=400, detail="Invalid or expired reset link") - if len(req.new_password) < 8: - raise HTTPException(status_code=400, detail="Password must be at least 8 characters") - if len(req.new_password) > 256: - raise HTTPException(status_code=400, detail="Password must be 256 characters or fewer") - user.password_hash = hash_password(req.new_password) - user.reset_token = None - user.reset_token_expires_at = None - db.commit() - return {"message": "Password updated"} - -@app.get("/auth/verify-email") -def verify_email(token: str, db: Session = Depends(get_db)): - user = db.query(UserModel).filter(UserModel.email_verification_token == token).first() - if not user or not user.email_verification_token_expires_at or user.email_verification_token_expires_at < datetime.now(): - raise HTTPException(status_code=400, detail="Invalid or expired verification link") - user.email_verified = True - user.email_verification_token = None - user.email_verification_token_expires_at = None - db.commit() - return {"message": "Email verified"} - -class ResendVerificationRequest(BaseModel): - email: str - -@app.post("/auth/resend-verification") -def resend_verification(req: ResendVerificationRequest, db: Session = Depends(get_db)): - user = db.query(UserModel).filter(UserModel.email == req.email).first() - # Always return success to prevent user enumeration - if user and not user.email_verified: - token = secrets.token_urlsafe(32) - user.email_verification_token = token - user.email_verification_token_expires_at = datetime.now() + timedelta(hours=24) - db.commit() - try: - send_verification_email(user.email, user.username, token) - except Exception as e: - logger.error(f"Failed to resend verification email: {e}") - return {"message": "If that email is registered and unverified, you will receive a new verification link shortly"} - -class RefreshRequest(BaseModel): - refresh_token: str - -@app.post("/auth/refresh") -def refresh(req: RefreshRequest, db: Session = Depends(get_db)): - user_id = decode_refresh_token(req.refresh_token) - if not user_id: - raise HTTPException(status_code=401, detail="Invalid or expired refresh token") - user = db.query(UserModel).filter(UserModel.id == uuid.UUID(user_id)).first() - if not user: - raise HTTPException(status_code=401, detail="User not found") - return { - "access_token": create_access_token(str(user.id)), - "refresh_token": create_refresh_token(str(user.id)), - "token_type": "bearer", - } - -if __name__ == "__main__": - from ai import AIPersonality, choose_cards - from card import generate_cards, Card - from time import sleep - - all_cards = generate_cards(500) - - all_cards.sort(key=lambda x: x.cost, reverse=True) - - print(len(all_cards)) - def write_cards(cards: list[Card], file: str): - with open(file, "w") as fp: - fp.write('\n'.join([ - f"{c.name} - {c.attack}/{c.defense} - {c.cost}" - for c in cards - ])) - - write_cards(all_cards, "output/all.txt") - - for personality in AIPersonality: - print(personality.value) - for difficulty in range(1,11): - chosen_cards = choose_cards(all_cards, difficulty, personality) - chosen_cards.sort(key=lambda x: x.cost, reverse=True) - write_cards(chosen_cards, f"output/{personality.value}-{difficulty}.txt") +app.include_router(health.router) +app.include_router(auth.router) +app.include_router(cards.router) +app.include_router(decks.router) +app.include_router(games.router) +app.include_router(notifications.router) +app.include_router(profile.router) +app.include_router(friends.router) +app.include_router(store.router) +app.include_router(trades.router) diff --git a/backend/models.py b/backend/models.py deleted file mode 100644 index 2e8cd2e..0000000 --- a/backend/models.py +++ /dev/null @@ -1,77 +0,0 @@ -import uuid -from datetime import datetime -from sqlalchemy import String, Integer, ForeignKey, DateTime, Text, Boolean -from sqlalchemy.orm import Mapped, mapped_column, relationship -from sqlalchemy.dialects.postgresql import UUID -from database import Base - -class User(Base): - __tablename__ = "users" - - id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) - username: Mapped[str] = mapped_column(String, unique=True, nullable=False) - email: Mapped[str] = mapped_column(String, unique=True, nullable=False) - password_hash: Mapped[str] = mapped_column(String, nullable=False) - created_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.now) - boosters: Mapped[int] = mapped_column(Integer, default=5, nullable=False) - boosters_countdown: Mapped[datetime | None] = mapped_column(DateTime, nullable=True) - wins: Mapped[int] = mapped_column(Integer, default=0, nullable=False) - losses: Mapped[int] = mapped_column(Integer, default=0, nullable=False) - shards: Mapped[int] = mapped_column(Integer, default=0, nullable=False) - last_refresh_at: Mapped[datetime | None] = mapped_column(DateTime, nullable=True) - reset_token: Mapped[str | None] = mapped_column(String, nullable=True) - reset_token_expires_at: Mapped[datetime | None] = mapped_column(DateTime, nullable=True) - email_verified: Mapped[bool] = mapped_column(Boolean, default=False, nullable=False) - email_verification_token: Mapped[str | None] = mapped_column(String, nullable=True) - email_verification_token_expires_at: Mapped[datetime | None] = mapped_column(DateTime, nullable=True) - - cards: Mapped[list["Card"]] = relationship(back_populates="user") - decks: Mapped[list["Deck"]] = relationship(back_populates="user") - - -class Card(Base): - __tablename__ = "cards" - - id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) - user_id: Mapped[uuid.UUID | None] = mapped_column(UUID(as_uuid=True), ForeignKey("users.id"), nullable=True) - name: Mapped[str] = mapped_column(String, nullable=False) - image_link: Mapped[str] = mapped_column(String, nullable=True) - card_rarity: Mapped[str] = mapped_column(String, nullable=False) - card_type: Mapped[str] = mapped_column(String, nullable=False) - text: Mapped[str] = mapped_column(Text, nullable=True) - attack: Mapped[int] = mapped_column(Integer, nullable=False) - defense: Mapped[int] = mapped_column(Integer, nullable=False) - cost: Mapped[int] = mapped_column(Integer, nullable=False) - created_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.now) - times_played: Mapped[int] = mapped_column(Integer, default=0, nullable=False) - reported: Mapped[bool] = mapped_column(Boolean, default=False, nullable=False) - ai_used: Mapped[bool] = mapped_column(Boolean, default=False, nullable=False) - - user: Mapped["User | None"] = relationship(back_populates="cards") - deck_cards: Mapped[list["DeckCard"]] = relationship(back_populates="card") - - -class Deck(Base): - __tablename__ = "decks" - - id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) - user_id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), ForeignKey("users.id"), nullable=False) - name: Mapped[str] = mapped_column(String, nullable=False) - created_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.now) - times_played: Mapped[int] = mapped_column(Integer, default=0, nullable=False) - wins: Mapped[int] = mapped_column(Integer, default=0, nullable=False) - losses: Mapped[int] = mapped_column(Integer, default=0, nullable=False) - deleted: Mapped[bool] = mapped_column(Boolean, default=False, nullable=False) - - user: Mapped["User"] = relationship(back_populates="decks") - deck_cards: Mapped[list["DeckCard"]] = relationship(back_populates="deck") - - -class DeckCard(Base): - __tablename__ = "deck_cards" - - deck_id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), ForeignKey("decks.id"), primary_key=True) - card_id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), ForeignKey("cards.id"), primary_key=True) - - deck: Mapped["Deck"] = relationship(back_populates="deck_cards") - card: Mapped["Card"] = relationship(back_populates="deck_cards") \ No newline at end of file diff --git a/backend/nn_weights.json b/backend/nn_weights.json deleted file mode 100644 index bff454e..0000000 --- a/backend/nn_weights.json +++ /dev/null @@ -1 +0,0 @@ -{"weights": [[[0.1382819414138794, -0.12735465168952942, 0.30544814467430115, 0.11696126312017441, -0.0727081373333931, 0.03625354543328285, 0.15646593272686005, 0.21366779506206512, -0.18071255087852478, 0.1654590368270874, -0.17012932896614075, 0.017178768292069435, 0.018158772960305214, -0.26755937933921814, -0.157888263463974, 0.07931747287511826, -0.033913590013980865, 0.2294197380542755, -0.48908671736717224, -0.2872749865055084, 0.3188610076904297, -0.054890938103199005, 0.24803954362869263, -0.3596765100955963, -0.1921629160642624, 0.31697362661361694, 0.05289352312684059, 0.012655911035835743, 0.028559699654579163, -0.04368690028786659, -0.07068587839603424, 0.40877029299736023, 0.1044706329703331, -0.19287008047103882, 0.20029786229133606, -0.25998905301094055, -0.15516112744808197, -0.4385707378387451, -0.20304740965366364, 0.08934178203344345, -0.023607224225997925, 0.07818850874900818, 0.17142535746097565, -0.010691285133361816, -0.43889135122299194, -0.1449858397245407, 0.023432839661836624, 0.03068586438894272, 0.28229662775993347, -0.3668602406978607, -0.145060196518898, -0.011174729093909264, -0.05448067560791969, 0.1661604344844818, 0.1287466287612915, 0.17468927800655365, -0.005213937722146511, 0.2191573679447174, 0.12306366115808487, 0.0961766391992569, 0.18208178877830505, -0.012357791885733604, -0.1961783915758133, -0.2057373970746994], [0.16505420207977295, 0.13748115301132202, 0.1864800602197647, 0.0352180041372776, 0.029527554288506508, -0.02992432564496994, -0.023436490446329117, 0.3476200997829437, -0.08675247430801392, 0.3520648777484894, -0.5446330308914185, 0.23020359873771667, 0.02993849478662014, 0.027161814272403717, 0.15680697560310364, -0.20545051991939545, 0.1074170246720314, 0.24589774012565613, -0.0757255107164383, -0.13325761258602142, -0.09178458154201508, -0.10067475587129593, 0.3866777718067169, -0.05792006105184555, -0.189872145652771, 0.37202057242393494, 0.249437153339386, 0.11800889670848846, -0.026138894259929657, -0.042429108172655106, -0.03490166738629341, -0.17869199812412262, 0.14487655460834503, 0.03930693119764328, 0.06550754606723785, -0.06943825632333755, -0.4380711019039154, -0.16658915579319, -0.02727595344185829, -0.07510250806808472, -0.18362154066562653, 0.10504357516765594, 0.5153781771659851, 0.07365363836288452, -0.11495909094810486, 0.012643194757401943, -0.2357867807149887, -0.15632423758506775, 0.2375461757183075, 0.3612000346183777, -0.2327631115913391, 0.12029338628053665, 0.022620463743805885, -0.15222470462322235, 0.1495230495929718, 0.1525956094264984, 0.2538156509399414, 0.07837618142366409, 0.29142507910728455, -0.3151540160179138, 0.3118337392807007, 0.37520185112953186, -0.17976155877113342, -0.08482727408409119], [0.028971105813980103, 0.03618859127163887, -0.2356540411710739, -0.12998265027999878, -0.1003996729850769, 0.20851203799247742, -0.08154379576444626, 0.39490896463394165, 0.005343740340322256, -0.10378716886043549, 0.07982582598924637, -0.09925029426813126, 0.058453287929296494, 0.266886442899704, -0.03485395386815071, 0.26611950993537903, 0.21910081803798676, 0.2883974611759186, -0.5453585982322693, -0.2806209623813629, 0.14974522590637207, -0.19975559413433075, 0.23679077625274658, 0.04101935029029846, -0.15430746972560883, 0.2911647856235504, 0.4244522452354431, -0.24298346042633057, 0.36820584535598755, 0.10593833774328232, -0.1952974498271942, 0.13774414360523224, -0.06491708755493164, 0.11662910133600235, 0.2340586632490158, -0.18811611831188202, -0.013592279516160488, -0.061117421835660934, 0.23146069049835205, 0.40129974484443665, -0.10480492562055588, -0.14731912314891815, 0.020879007875919342, -0.07871990650892258, -0.07727711647748947, 0.23741593956947327, 0.11353959888219833, -0.039694614708423615, 0.30406245589256287, 0.14563794434070587, -0.29024237394332886, 0.6195235848426819, 0.27060478925704956, -0.10114365816116333, -0.19655126333236694, 0.12727195024490356, -0.002881496213376522, 0.22615128755569458, 0.09614074975252151, -0.1157257929444313, 0.10627885162830353, -0.2555009126663208, -0.13660310208797455, 0.2740527391433716], [0.04920128732919693, -0.09502671658992767, 0.06908591091632843, -0.07398737221956253, -0.06885368376970291, 0.151967853307724, 0.09127970784902573, -0.08112376928329468, 0.20705300569534302, 0.052281372249126434, 0.127473384141922, 0.30462679266929626, -0.2252945750951767, -0.1299673467874527, 0.34035903215408325, 0.3243061602115631, 0.26420658826828003, 0.8312660455703735, -0.22577643394470215, 0.15354599058628082, 0.22612649202346802, -0.13710491359233856, 0.1367768794298172, 0.11394280195236206, -0.17071233689785004, 0.2082437127828598, 0.28684306144714355, -0.10222987830638885, 0.44755810499191284, -0.3079127371311188, 0.13661304116249084, -0.2634119391441345, 0.023956697434186935, 0.16999182105064392, 0.04061083495616913, -0.23355861008167267, -0.3103433847427368, -0.013950454071164131, -0.042972270399332047, 0.1042674109339714, -0.05336950346827507, -0.12926378846168518, 0.5571179389953613, 0.17755404114723206, -0.4216465353965759, 0.21006903052330017, -0.05235946178436279, -0.03523092716932297, 0.16166512668132782, -0.1315981149673462, -0.15418601036071777, 0.2917144000530243, -0.052180562168359756, -0.008751866407692432, -0.09120021015405655, -0.07351161539554596, 0.34871023893356323, 0.17152363061904907, -0.21040989458560944, 0.05940401554107666, 0.631117582321167, 0.19480451941490173, -0.32625919580459595, 0.037061918526887894], [0.22305218875408173, -0.24948959052562714, 0.30161526799201965, -0.007781116291880608, -0.21992261707782745, 0.08166692405939102, -0.6679046750068665, -0.10728876292705536, -0.11362911015748978, -0.16214081645011902, 0.1794278472661972, -0.14732547104358673, -0.05103455111384392, 0.08998361229896545, 0.38538411259651184, -0.1501249074935913, 0.3589710295200348, 0.19043076038360596, -0.39136171340942383, 0.07063481211662292, 0.08476505428552628, 0.016825955361127853, 0.24242974817752838, -0.17986227571964264, -0.0816856101155281, 0.4067053198814392, 0.511335551738739, -0.2789994180202484, 0.47084683179855347, -0.33393576741218567, -0.013805733993649483, 0.18814077973365784, 0.1515129804611206, -0.11228422075510025, 0.03422492370009422, -0.10064428299665451, -0.28167644143104553, 0.07366831600666046, 0.0810249075293541, -0.07718043029308319, 0.004501648712903261, 0.09653238952159882, 0.34300073981285095, 0.15852612257003784, -0.2845127582550049, -0.017291860654950142, 0.22806334495544434, -0.027110470458865166, 0.22431263327598572, -0.053008876740932465, 0.04068191349506378, -0.042778804898262024, 0.05027838051319122, 0.011144210584461689, -0.10565488785505295, 0.20583730936050415, 0.2706410586833954, 0.4074617326259613, 0.2845280170440674, -0.056413259357213974, 0.27266013622283936, -0.04825251176953316, 0.06923496723175049, -0.01652848906815052], [-0.057436440140008926, 0.07192102819681168, -0.0772014930844307, 0.27632492780685425, -0.05606607347726822, -0.11881265044212341, 0.01615484058856964, 0.16180336475372314, -0.058296866714954376, 0.061328694224357605, -0.16060858964920044, -0.07871847599744797, -0.045212529599666595, -0.08262217044830322, 0.24101023375988007, 0.01331247016787529, -0.17333941161632538, 0.056852489709854126, -0.169596329331398, -0.1696227639913559, -0.019367964938282967, -0.11479289084672928, 0.30835625529289246, -0.1291506290435791, -0.23687352240085602, 0.40372955799102783, 0.12318102270364761, -0.30650249123573303, -0.025119083002209663, -0.21903102099895477, 0.14755205810070038, 0.3190443515777588, 0.23000304400920868, 0.018387483432888985, 0.13522373139858246, -0.1495307981967926, -0.19349578022956848, -0.11015690863132477, 0.066335529088974, -0.13096894323825836, -0.01602659933269024, 0.3238617181777954, 0.1869330257177353, 0.1481797993183136, 0.0110119404271245, -0.10691554099321365, 0.09069876372814178, -0.057986464351415634, 0.3569970726966858, -0.2899290919303894, -0.20378489792346954, 0.1919243037700653, 0.12380372732877731, 0.24162380397319794, 0.36752912402153015, -0.08397895097732544, 0.20844189822673798, 0.25981467962265015, 0.4614005386829376, -0.24287594854831696, -0.04423544555902481, -0.04209698736667633, -0.3122705817222595, -0.017931504175066948], [-0.14632828533649445, -0.13741520047187805, 0.31032320857048035, 0.203694149851799, 0.09488531202077866, -0.06162085011601448, -0.3066611886024475, 0.10013128072023392, -0.40391919016838074, 0.3901444971561432, 0.05504317581653595, -0.007435499224811792, -0.3078749477863312, 0.33712613582611084, 0.050159525126218796, 0.23063410818576813, -0.17031706869602203, 0.08201564103364944, -0.18787641823291779, -0.01367065217345953, -0.02787403017282486, 0.344329833984375, 0.04313074052333832, -0.19528883695602417, -0.11153768748044968, 0.39285188913345337, 0.32056376338005066, -0.2253332883119583, -0.23943611979484558, 0.20143882930278778, 0.07369213551282883, -0.060371264815330505, 0.38192376494407654, 0.02171272411942482, 0.2668016254901886, -0.039390526711940765, 0.1857319325208664, 0.2533884048461914, -0.0324404314160347, 0.22274145483970642, -0.05743376538157463, 0.31336304545402527, 0.017324471846222878, 0.16694359481334686, -0.005559750832617283, -0.4269047677516937, -0.11245091259479523, -0.46023035049438477, 0.16598622500896454, 0.0890679582953453, 0.10079266875982285, 0.05382899194955826, 0.17134825885295868, -0.18691302835941315, -0.382192999124527, -0.020367007702589035, 0.23642686009407043, 0.27765658497810364, -0.2678477466106415, -0.03564136475324631, -0.15319600701332092, 0.11847847700119019, 0.0904107466340065, -0.18809737265110016], [-0.07607276737689972, -0.3453438878059387, 0.28929898142814636, -0.02515266463160515, -0.3105924725532532, 0.1518968641757965, -0.21782800555229187, -0.10929787904024124, -0.16005714237689972, -0.08140208572149277, -0.2209720015525818, -0.09909656643867493, 0.4189523458480835, 0.10280346125364304, -0.048994652926921844, 0.09169360995292664, 0.12158764153718948, 0.13563154637813568, -0.17434602975845337, 0.12857568264007568, -0.028351247310638428, 0.10761698335409164, 0.14052416384220123, -0.5724468231201172, -0.3083682656288147, 0.562515139579773, 0.46025851368904114, -0.0878528282046318, 0.17782825231552124, 0.09610848873853683, 0.5852668881416321, 0.3383348286151886, 0.07550852745771408, -0.16861769556999207, -0.16726720333099365, 0.027980947867035866, -0.3606119155883789, -0.243794247508049, -0.04942234605550766, -0.10041631013154984, 0.15722213685512543, 0.21406254172325134, 0.19847148656845093, 0.2954573631286621, -0.22427797317504883, -0.14620162546634674, 0.4055401682853699, -0.02289310283958912, 0.030486011877655983, -0.03544846922159195, -0.3047247529029846, -0.2353525310754776, 0.07822397351264954, 0.3232293725013733, -0.3110589385032654, 0.1208709254860878, 0.06627332419157028, 0.2422853261232376, 0.04016593471169472, -0.1899898499250412, 0.08568581938743591, -0.17227807641029358, 0.06975880265235901, -0.02922477386891842], [-0.048116110265254974, -0.15474659204483032, -0.03384050354361534, 0.16418887674808502, 0.1365397721529007, -0.18636126816272736, -0.06355360150337219, 0.20908166468143463, -0.39649176597595215, 0.16395977139472961, -0.0767742395401001, 0.057991549372673035, -0.11839547753334045, -0.21516385674476624, -0.14704950153827667, -0.04210217297077179, 0.12970329821109772, -0.19458343088626862, -0.06588850170373917, -0.314641535282135, 0.005725290160626173, -0.2452481985092163, -0.27451828122138977, -0.10677745938301086, -0.33659735321998596, -0.12219778448343277, 0.22275900840759277, -0.13196852803230286, 0.01963377185165882, -0.29925277829170227, 0.08392142504453659, 0.36099040508270264, -0.06764351576566696, -0.11698730289936066, -0.05923230201005936, -0.024933308362960815, 0.02239184081554413, -0.0966985821723938, 0.06952269375324249, -0.00767043512314558, 0.266767293214798, 0.037077128887176514, 0.05571829900145531, -0.05480422452092171, -0.018628178164362907, -0.04025751352310181, 0.014160859398543835, -0.11494442075490952, 0.08983591943979263, 0.3228518068790436, 0.03632878139615059, -0.11272374540567398, 0.197407066822052, -0.04182449355721474, -0.4294693171977997, -0.22827453911304474, -0.34802645444869995, -0.058315351605415344, 0.046172577887773514, 0.2613440752029419, 0.16936057806015015, -0.020541392266750336, 0.005553731694817543, -0.2738676071166992], [0.10430746525526047, 0.12082557380199432, -0.21637019515037537, 0.20448406040668488, 0.1482420116662979, -0.03307543694972992, 0.06147479638457298, 0.5356982946395874, -0.12078838050365448, 0.012746384367346764, -0.06015975400805473, -0.2088625729084015, 0.18988412618637085, -0.02386622689664364, 0.16078738868236542, -0.12246190756559372, 0.15617947280406952, -0.0053069107234478, -0.13402159512043, -0.16233068704605103, -0.04007837921380997, -0.3108150362968445, -0.16649913787841797, -0.005521760322153568, -0.04141293466091156, -0.17515742778778076, 0.19470179080963135, 0.2080843448638916, -0.07883646339178085, 0.1925649791955948, -0.20766420662403107, -0.1032804325222969, 0.11504605412483215, 0.3307231664657593, -0.07512757927179337, -0.012278235517442226, 0.015583223663270473, -0.2084752917289734, 0.5987236499786377, 0.05654532089829445, 0.13572265207767487, 0.0952339917421341, 0.0596577450633049, 0.037246085703372955, -0.15552915632724762, 0.013226221315562725, 0.28489455580711365, 0.16928209364414215, 0.28341031074523926, -0.1447220742702484, -0.231253981590271, -0.05848349630832672, 0.08646512031555176, 0.3036760687828064, -0.40499404072761536, 0.2433038204908371, -0.020604383200407028, -0.12745682895183563, -0.10381034016609192, -0.30861419439315796, 0.3874238133430481, 0.054377127438783646, -0.3499322533607483, -0.12565705180168152], [-0.014027347788214684, 0.269208699464798, 0.03724275529384613, -0.4664914309978485, 0.04137133061885834, 0.044688399881124496, -0.4612374007701874, 0.0676407590508461, -0.29638904333114624, 0.10866687446832657, 0.30055660009384155, 0.19204570353031158, -0.005414028186351061, -0.1310684084892273, 0.6185592412948608, -0.07546571642160416, 0.14051631093025208, -0.0409076027572155, -0.26394808292388916, -0.1627441942691803, 0.01910441555082798, -0.3598305881023407, -0.0014214996481314301, -0.17351262271404266, -0.18864434957504272, 0.2674824595451355, 0.14190325140953064, 0.18628229200839996, -0.5318354368209839, -0.005236963741481304, 0.20759178698062897, -0.16442827880382538, 0.25724121928215027, 0.06788404285907745, -0.3673487603664398, -0.1613759845495224, -0.16644339263439178, 0.30163443088531494, 0.23953676223754883, 0.1974642276763916, 0.2348305583000183, -0.3716695308685303, 0.08758140355348587, -0.04420561343431473, -0.27246469259262085, -0.22468233108520508, -0.053226225078105927, -0.11127160489559174, 0.23576262593269348, 0.014461519196629524, -0.18997853994369507, 0.11288716644048691, -0.07973434776067734, 0.13488946855068207, 0.009932080283761024, -0.2133360505104065, 0.10999664664268494, -0.23927298188209534, 0.2316327691078186, -0.20940235257148743, 0.3307496905326843, 0.35076263546943665, -0.2549043297767639, -0.19924139976501465], [-0.20206040143966675, 0.12109729647636414, -0.21086230874061584, 0.3962526023387909, -0.26932665705680847, 0.15841810405254364, -0.06201633810997009, 0.06868799775838852, -0.21491089463233948, 0.12241096794605255, 0.0934891402721405, 0.13257621228694916, -0.0099971704185009, 0.18144303560256958, 0.010924937203526497, 0.05469854176044464, -0.07799309492111206, -0.24939650297164917, -0.2523694932460785, 0.11246877163648605, -0.10964713990688324, -0.14077773690223694, -0.09075673669576645, 0.07874187082052231, -0.23582205176353455, -0.10417391359806061, 0.26417210698127747, -0.24619969725608826, 0.0517282597720623, -0.3216889500617981, 0.16704964637756348, 0.18234661221504211, 0.3172968626022339, 0.07445616275072098, 0.21356087923049927, 0.26362696290016174, -0.4134689271450043, -0.32457926869392395, -0.08656725287437439, -0.01842557266354561, 0.1295085847377777, 0.03819046914577484, -0.14026130735874176, -0.07670509070158005, -0.08635053038597107, -0.09430950880050659, -0.1677446812391281, -0.3358774185180664, -0.1435588151216507, 0.08201688528060913, -0.2353822886943817, 0.5325597524642944, 0.3135683834552765, 0.11760357022285461, -0.3880730867385864, 0.1255156248807907, -0.004570188466459513, -0.2018774300813675, 0.48057782649993896, 0.029068628326058388, 0.22842657566070557, -0.12716807425022125, -0.13507749140262604, 0.2608480453491211], [-0.03292977809906006, 0.3373432457447052, 0.12520380318164825, 0.06664397567510605, 0.19689738750457764, 0.08644013851881027, 0.011994958855211735, -0.1627354919910431, -0.1866856962442398, -0.06845208257436752, 0.0006939928280189633, 0.0917743593454361, 0.009527154266834259, -0.0722709447145462, 0.14505764842033386, 0.11414341628551483, -0.04878716543316841, 0.23645012080669403, 0.18214449286460876, 0.07211799919605255, -0.09937600046396255, -0.4373236894607544, -0.030981695279479027, 0.025373654440045357, -0.09228400886058807, -0.19278064370155334, 0.028288859874010086, 0.1301306039094925, 0.03107456862926483, 0.04971854388713837, -0.010667853057384491, 0.04909854382276535, 0.44476088881492615, -0.2090299278497696, 0.015090633183717728, -0.019464697688817978, -0.19807831943035126, -0.26845893263816833, 0.048124831169843674, -0.0420735664665699, 0.3144640624523163, 0.03105972334742546, -0.1967317909002304, -0.10003673285245895, 0.3755449652671814, 0.20313473045825958, 0.10453475266695023, -0.29806408286094666, 0.09074361622333527, 0.10791870951652527, -0.0028102360665798187, 0.24066026508808136, 0.12206819653511047, 0.30598366260528564, 0.14728021621704102, -0.08600509911775589, -0.02894132398068905, 0.06951097398996353, 0.3024529814720154, -0.07561147958040237, -0.1175733134150505, -0.009823002852499485, -0.31137263774871826, -0.1961517035961151], [-0.0938003808259964, -0.11530067771673203, -0.002640690188854933, 0.1658392697572708, 0.3436490595340729, -0.32873106002807617, -0.0010253291111439466, 0.008863938972353935, -0.3210216462612152, 0.0651967003941536, -0.15811114013195038, 0.022090794518589973, 0.05540186166763306, 0.31396156549453735, 0.13850803673267365, 0.5665526390075684, -0.20010080933570862, -0.014329817146062851, -0.04169073700904846, -0.14732109010219574, -0.17304514348506927, 0.15609388053417206, 0.13844871520996094, -0.06863522529602051, -0.18562257289886475, 0.09260053187608719, 0.11669497936964035, 0.11285904794931412, -0.01794072613120079, -0.2472497522830963, 0.2035740315914154, 0.28448668122291565, 0.2057173103094101, 0.002555772429332137, 0.06146939843893051, 0.07312443107366562, 0.04072423651814461, 0.1989852786064148, -0.04354102164506912, -0.21940112113952637, -0.11866187304258347, 0.12834161520004272, -0.12618441879749298, 0.16839510202407837, -0.026852713897824287, 0.14642737805843353, -0.04244581237435341, 0.15676651895046234, 0.352602481842041, -0.14289112389087677, -0.17493988573551178, 0.3810245990753174, 0.3439306616783142, 0.42496049404144287, -0.08077099919319153, -0.09567828476428986, 0.09304747730493546, 0.025437403470277786, 0.2924021780490875, 0.030523011460900307, 0.21701082587242126, 0.17762614786624908, 0.2355574667453766, 0.004100031219422817], [0.06587865948677063, -0.06056203693151474, 0.08795846998691559, -0.34380924701690674, 0.10102487355470657, -0.012343143112957478, -0.03872029855847359, 0.36635956168174744, 0.18600910902023315, -0.07459833472967148, -0.02552758902311325, 0.08560117334127426, 0.06807788461446762, 0.12417808175086975, -0.016864407807588577, 0.13901498913764954, -0.005600898526608944, 0.2918075919151306, -0.053794976323843, -0.13027384877204895, 0.10234833508729935, -0.16166752576828003, -0.17342568933963776, 0.058306071907281876, 0.2773907780647278, -0.09324946999549866, 0.09591665863990784, -0.08589788526296616, 0.08482589572668076, -0.2592996656894684, -0.15618757903575897, 0.13653993606567383, 0.2642611265182495, 0.06366035342216492, -0.15658524632453918, 0.2243790626525879, -0.33175545930862427, -0.21476659178733826, 0.19879838824272156, -0.1963793933391571, -0.2454749196767807, 0.05165228992700577, -0.04259335622191429, 0.027725528925657272, 0.022115791216492653, 0.31078028678894043, 0.15706850588321686, -0.008752523921430111, 0.22941364347934723, -0.3405422568321228, -0.20315420627593994, 0.0013367445208132267, 0.026246920228004456, 0.13713917136192322, 0.013048254884779453, 0.04603751003742218, -0.3378302752971649, 0.2572304904460907, -0.11021914333105087, 0.2316160947084427, -0.04712055251002312, -0.06362989544868469, 0.011858330108225346, 0.013953708112239838], [0.25043216347694397, 0.12524095177650452, -0.10120932757854462, -0.08425410091876984, -0.0638703852891922, 0.27611762285232544, -0.2260449230670929, 0.45486441254615784, -0.2401762455701828, -0.48505064845085144, 0.2504981458187103, -0.1963474452495575, 0.05140303447842598, -0.2933713495731354, -0.047578003257513046, -0.14423228800296783, -0.04991428926587105, -0.3813258111476898, -0.3546903133392334, 0.04340781643986702, 0.22140896320343018, -0.038216330111026764, -0.3111741542816162, 0.029749233275651932, -0.06859177350997925, -0.1564428061246872, 0.6056125164031982, 0.19402575492858887, -0.27593737840652466, -0.020575614646077156, -0.06719088554382324, -0.18664442002773285, 0.146896094083786, -0.1257573664188385, -0.2978062033653259, -0.18404479324817657, 0.10212156176567078, 0.13058266043663025, -0.025417866185307503, -0.04975205659866333, 0.1611989587545395, 0.07183186709880829, -0.07911772280931473, 0.0638497918844223, 0.3178321421146393, 0.13476254045963287, 0.1962348371744156, 0.10211186856031418, 0.11172638088464737, -0.2945638597011566, 0.2388487011194229, 0.19104811549186707, 0.42536693811416626, -0.019810331985354424, 0.23713916540145874, 0.0066160219721496105, -0.17271633446216583, -0.027103841304779053, -0.1374407559633255, 0.11125881969928741, 0.148337259888649, -0.08113370835781097, -0.10628090053796768, 0.30388063192367554], [0.43270358443260193, -0.04293016344308853, -0.07115359604358673, -0.18273432552814484, 0.04474858194589615, -0.33767348527908325, -0.12826141715049744, -0.3247726559638977, -0.24650484323501587, 0.05709392949938774, 0.08480755984783173, 0.1402439922094345, -0.3433692455291748, -0.33423179388046265, 0.025012817233800888, 0.4143844246864319, 0.20725949108600616, -0.09243174642324448, 0.026200417429208755, -0.001557973911985755, 0.16439113020896912, -0.03900023549795151, -0.02514052949845791, -0.6089072823524475, 0.19622744619846344, 0.28889814019203186, 0.17999278008937836, -0.012756791897118092, -0.21098467707633972, 0.043296217918395996, -0.3245132565498352, -0.05795011296868324, 0.35800158977508545, 0.06579659134149551, -0.03851589187979698, -0.23905301094055176, 0.21470236778259277, -0.4940927028656006, 0.22370178997516632, -0.4262034595012665, -0.2102493941783905, -0.230152890086174, -0.20588110387325287, 0.3564838469028473, -0.14459751546382904, 0.17996463179588318, 0.060108065605163574, 0.06339942663908005, -0.07434766739606857, -0.5665993690490723, 0.11141334474086761, -0.008990954607725143, -0.15725940465927124, -0.0817781314253807, 0.13666872680187225, 0.1648728847503662, -0.22048655152320862, 0.2228395789861679, -0.16676589846611023, 0.2716541886329651, 0.0797787606716156, -0.03406944498419762, 0.12924182415008545, 0.020408881828188896], [-0.009013928472995758, -0.002161211334168911, -0.24057690799236298, -0.2420032024383545, 0.20233365893363953, 0.0454617440700531, 0.1620008945465088, 0.10124029219150543, 0.20547261834144592, -0.3293447196483612, 0.23645682632923126, 0.08293329179286957, 0.18388399481773376, -0.4282771646976471, 0.25968870520591736, 0.016356853768229485, 0.27130886912345886, -0.2996784448623657, 0.009140853770077229, -0.3485437035560608, 0.016882138326764107, 0.35520413517951965, -0.06395567208528519, 0.06391546875238419, 0.0996440201997757, -0.07930698990821838, -0.07355032116174698, 0.1664494425058365, 0.3346388638019562, 0.11097131669521332, 0.10225896537303925, 0.08931698650121689, 0.22198273241519928, 0.35082313418388367, -0.0272581335157156, -0.2974506914615631, 0.31457144021987915, -0.02769565023481846, 0.07806923985481262, -0.2375267595052719, -0.11261675506830215, -0.008350181393325329, 0.1603325754404068, 0.1908475011587143, 0.29551243782043457, 0.2598162293434143, -0.03729303181171417, 0.28678983449935913, 0.2380361258983612, -0.13008804619312286, 0.10308331251144409, 0.30768781900405884, 0.07329817861318588, 0.17028969526290894, 0.09856902062892914, 0.13376392424106598, -0.013698895461857319, -0.03812988102436066, -0.19890032708644867, -0.35998937487602234, 0.1269558221101761, -0.2469893842935562, -0.17182119190692902, -0.3714737594127655], [-0.023029878735542297, -0.28409120440483093, -0.024570027366280556, -0.100400909781456, -0.10796895623207092, 0.3994983434677124, 0.08048248291015625, 0.11682919412851334, -0.3246963620185852, 0.3421686887741089, -0.10146040469408035, -0.31160393357276917, 0.19268779456615448, 0.5250087380409241, 0.21520158648490906, 0.10930286347866058, 0.22912855446338654, 0.028025688603520393, 0.05564264953136444, -0.1206783652305603, 0.19490818679332733, -0.04237528517842293, -0.09863819926977158, -0.1202675998210907, -0.2587352991104126, 0.04814703017473221, -0.2582317292690277, -0.10841257870197296, 0.028735660016536713, 0.34329670667648315, 0.29568225145339966, -0.416554719209671, -0.01214657910168171, 0.2850435972213745, -0.2718490660190582, -0.16237547993659973, 0.05557667836546898, -0.05882571265101433, 0.059430237859487534, -0.42665666341781616, -0.20475243031978607, 0.0750741958618164, -0.06968936324119568, 0.18798142671585083, -0.026662755757570267, 0.24555015563964844, 0.045930106192827225, 0.3581853210926056, -0.005842019338160753, 0.05073399469256401, 0.004040746949613094, 0.3651333153247833, 0.15319162607192993, 0.016409525647759438, -0.014282717369496822, -0.05927072465419769, -0.24387206137180328, 0.28719180822372437, -0.18069210648536682, -0.15815068781375885, -0.27425116300582886, 0.009071005508303642, -0.054100971668958664, 0.2336847484111786], [-0.0645330548286438, 0.08393046259880066, -0.3331984281539917, 0.2653367817401886, -0.15035024285316467, 0.07709907740354538, -0.003277374431490898, 0.23186764121055603, -0.06273915618658066, -0.22936378419399261, 0.13852739334106445, -0.06851940602064133, 0.22271808981895447, 0.5812430381774902, -0.009925125166773796, -0.3140735328197479, 0.10199109464883804, 0.37628692388534546, -0.19530858099460602, 0.17870637774467468, 0.4989914298057556, -0.1310591697692871, 0.3899380564689636, -0.017396042123436928, -0.14308728277683258, 0.06965018808841705, 0.024793637916445732, -0.20224037766456604, -0.20293544232845306, -0.24576404690742493, 0.2814946174621582, 0.007060563657432795, 0.2393290400505066, -0.32882729172706604, 0.11193040013313293, 0.05955217778682709, -0.592586874961853, 0.17230980098247528, 0.15212208032608032, -0.25982898473739624, 0.25323888659477234, 0.13053356111049652, 0.07896877080202103, 0.18572787940502167, -0.0550851970911026, -0.017413750290870667, 0.026889445260167122, -0.1636865735054016, -0.019492173567414284, -0.19902898371219635, -0.21163110435009003, -0.004606608301401138, -0.026470014825463295, 0.3183402419090271, 0.034743934869766235, 0.03888233006000519, -0.15042823553085327, 0.04561800882220268, 0.24232117831707, 0.09456834942102432, 0.3211790919303894, -0.05911296233534813, 0.012187634594738483, -0.0854349136352539], [0.20646238327026367, 0.41086632013320923, -0.17804086208343506, 0.1296122521162033, -0.3521973490715027, -0.09631720185279846, -0.12308535724878311, 0.17365498840808868, -0.4756945073604584, -0.22048382461071014, 0.09414160251617432, 0.6418262124061584, 0.07113072276115417, 0.05841523036360741, 0.15924417972564697, 0.19613581895828247, -0.12062401324510574, 0.10674497485160828, 0.04545367881655693, 0.2989419996738434, -0.06876111775636673, -0.08022881299257278, -0.09068486839532852, -0.09325086325407028, 0.2817958891391754, -0.232722207903862, 0.4598791003227234, 0.16313768923282623, 0.02189769595861435, 0.02468755654990673, 0.10418439656496048, -0.08157487958669662, 0.2349317967891693, 0.3647220730781555, -0.04942956194281578, -0.3151381313800812, -0.40133222937583923, -0.03866008669137955, -0.1494731903076172, -0.17488393187522888, -0.26214227080345154, 0.2413521558046341, 0.004168489947915077, 0.1623256951570511, 0.2877565026283264, 0.025173908099532127, -0.13595440983772278, -0.2124461978673935, -0.15084804594516754, -0.015309584327042103, 0.48016083240509033, 0.09040584415197372, -0.03889491409063339, 0.4369443356990814, 0.3275085985660553, -0.17375679314136505, -0.06685461103916168, -0.2655844986438751, -0.061756692826747894, -0.026568008586764336, 0.032180171459913254, -0.29888755083084106, 0.027134373784065247, 0.33465346693992615], [0.3391663730144501, -0.10116491466760635, -0.7739924192428589, 0.12811534106731415, -0.5283862352371216, 0.09244176745414734, -0.0868317261338234, -0.3003251254558563, -0.2015744000673294, 0.2597980499267578, 0.0032962344121187925, -0.36481454968452454, 0.027450313791632652, -0.05689145252108574, -0.21543939411640167, 0.32200929522514343, -0.32317984104156494, 0.13744376599788666, -0.07415923476219177, -0.03282307833433151, 0.31719833612442017, -0.13173164427280426, 0.0011825422989204526, -0.21613800525665283, 0.07072492688894272, -0.14419804513454437, 0.26162493228912354, 0.39589521288871765, -0.28491854667663574, -0.4339129626750946, 0.33334752917289734, -0.21554353833198547, -0.19076871871948242, 0.2393282949924469, -0.10378037393093109, 0.2393355518579483, -0.035788293927907944, 0.014777588658034801, 0.3521820604801178, -0.245829775929451, -0.002262701280415058, 0.1571895182132721, 0.2695654630661011, 0.35700342059135437, 0.07045065611600876, 0.18978793919086456, 0.2018386423587799, -0.29523879289627075, 0.4815223515033722, -0.0950489491224289, 0.2317710667848587, 0.056093379855155945, -0.14805369079113007, -0.04468394070863724, 0.4305785000324249, -0.10800804942846298, -0.13277961313724518, -0.07605406641960144, 0.26744434237480164, 0.22493010759353638, 0.3231338858604431, -0.38699278235435486, -0.3291543126106262, 0.42726391553878784], [0.01086500845849514, 0.22979110479354858, -0.1411374807357788, 0.026794007048010826, 0.0022590861190110445, 0.34461817145347595, -0.055062249302864075, 0.18490999937057495, -0.03876147046685219, 0.014037988148629665, 0.37831899523735046, 0.08402273058891296, 0.19958646595478058, 0.14885112643241882, -0.032311998307704926, 0.1014254167675972, -0.1830226480960846, -0.2847396731376648, 0.22946487367153168, -0.29742076992988586, 0.04056403785943985, -0.06226496398448944, 0.14406895637512207, 0.2563709020614624, 0.18314485251903534, -0.14477457106113434, 0.041598279029130936, 0.04365871101617813, -0.02907431870698929, 0.17660394310951233, 0.08013586699962616, 0.05175583437085152, 0.17968754470348358, 0.12427392601966858, 0.06336961686611176, -0.28278931975364685, 0.004346006084233522, -0.16897104680538177, -0.12567897140979767, 0.06776851415634155, 0.17490147054195404, 0.028952570632100105, 0.047437746077775955, 0.2404409795999527, -0.0033183281775563955, 0.6881109476089478, 0.11905178427696228, -0.44847753643989563, 0.2844119966030121, 0.03889983519911766, 0.1420370638370514, 0.060805466026067734, 0.13685953617095947, -0.1906895637512207, -0.06677161902189255, -0.11936947703361511, -0.07436787337064743, 0.11931784451007843, 0.41741642355918884, 0.0948258638381958, -0.045584216713905334, 0.04651736840605736, 0.14519383013248444, 0.07948949933052063], [-0.028735894709825516, 0.12607945501804352, -0.35296884179115295, 0.1316988170146942, 0.07339346408843994, 0.08651447296142578, -0.07843830436468124, 0.06720736622810364, 0.2496183067560196, -0.15566131472587585, 0.40304648876190186, 0.07106766104698181, 0.1003827452659607, 0.21769189834594727, -0.06523661315441132, -0.03813386708498001, -0.4937102496623993, 0.21758805215358734, -0.1331934779882431, 0.5756028890609741, -0.029031826183199883, -0.0023013611789792776, 0.3228743374347687, 0.3757091760635376, 0.44220203161239624, 0.2064933180809021, 0.3155960440635681, 0.062173113226890564, 0.30999186635017395, -0.14182421565055847, -0.17366275191307068, -0.27468767762184143, 0.02068580500781536, -0.10426150262355804, 0.16703106462955475, 0.24180381000041962, -0.046406541019678116, 0.02730482444167137, -0.20323550701141357, 0.06613965332508087, -0.07812900841236115, -0.28172406554222107, -0.11172650009393692, 0.1536530703306198, 0.2571396827697754, 0.28970450162887573, -0.19631607830524445, 0.2717173099517822, 0.16969875991344452, 0.13260455429553986, -0.06596429646015167, 0.16486850380897522, 0.04406784847378731, 0.3894072473049164, 0.35155099630355835, 0.2694179117679596, -0.10771682113409042, -0.20883998274803162, -0.07857194542884827, -0.40393733978271484, 0.09929271042346954, -0.16845053434371948, -0.14791831374168396, -0.20782755315303802], [0.07873613387346268, 0.19871538877487183, -0.37178686261177063, -0.481841504573822, 0.19632379710674286, 0.3177247643470764, 0.3863774240016937, 0.06191764026880264, 0.02279551327228546, -0.11315996944904327, -0.0463615246117115, 0.2116837352514267, 0.08928538858890533, 0.16759555041790009, 0.17740090191364288, 0.2228744775056839, -0.34875601530075073, -0.11702831834554672, -0.20654721558094025, 0.17139358818531036, 0.20102189481258392, -0.2448033094406128, 0.3859403431415558, -0.041409268975257874, -0.05568983778357506, -0.027374794706702232, -0.17098884284496307, 0.0718335434794426, 0.31826069951057434, 0.01155847031623125, -0.06835366040468216, -0.2672521770000458, -0.18593643605709076, -0.1510143131017685, 0.20846779644489288, -0.13731172680854797, -0.08296231925487518, -0.3716384172439575, 0.13759467005729675, 0.18000826239585876, -0.2423112541437149, 0.2679115831851959, -0.13552500307559967, 0.09729629755020142, -0.05040010064840317, 0.29859915375709534, -0.1615322381258011, -0.06001361086964607, 0.1459837108850479, 0.13513556122779846, -0.06599318236112595, 0.24447794258594513, -0.019128525629639626, 0.2813928425312042, -0.1930086463689804, -0.49958664178848267, 0.06568823754787445, 0.2475799322128296, -0.5528100728988647, -0.2077578753232956, 0.16488853096961975, 0.3899767994880676, -0.02182101085782051, -0.02045903354883194], [-0.032092828303575516, 0.3978286683559418, -0.11706138402223587, -0.17150641977787018, 0.011679421178996563, -0.15630629658699036, 0.004193553701043129, 0.35589683055877686, 0.07244875282049179, -0.2791956067085266, 0.06962992995977402, -0.17433688044548035, 0.23367631435394287, -0.04735849052667618, 0.20251965522766113, 0.7959660887718201, -0.07324280589818954, -0.033186592161655426, -0.4032246768474579, 0.3444325923919678, 0.08582785725593567, -0.2920110821723938, 0.3363792300224304, 0.06435088068246841, 0.3416915535926819, 0.28171437978744507, 0.15121397376060486, 0.14228715002536774, 0.14737477898597717, 0.1573655903339386, 0.07199320197105408, -0.21378104388713837, 0.026973268017172813, 0.03389247879385948, -0.0496201291680336, -0.04097951948642731, -0.4280204772949219, -0.09315074235200882, 0.45070233941078186, 0.017514964565634727, -0.009126522578299046, 0.2980816662311554, 0.07550978660583496, 0.3896070420742035, -0.37530383467674255, 0.23011814057826996, 0.02090812847018242, 0.024271877482533455, 0.33569779992103577, 0.4802228510379791, -0.02471724897623062, 0.3764588534832001, 0.14664995670318604, 0.20620380342006683, -0.03475537896156311, 0.014417448081076145, -0.03816128522157669, 0.39818471670150757, -0.23280571401119232, 0.17071758210659027, 0.3530271649360657, -0.07572291791439056, -0.36925041675567627, -0.020443206652998924], [0.26304271817207336, -0.06197216361761093, -0.08319038897752762, -0.05712595582008362, 0.2949546277523041, 0.23837284743785858, 0.38453221321105957, -0.14079974591732025, 0.04758312925696373, -0.44384634494781494, 0.3887549340724945, 0.14334020018577576, 0.2621151804924011, 0.05909736081957817, 0.33615827560424805, -0.036190927028656006, 0.20441797375679016, 0.08468712121248245, -0.5550276041030884, 0.20711031556129456, -0.2785281538963318, 0.3746841847896576, -0.1551481932401657, -0.06239209324121475, 0.023928338661789894, 0.074955515563488, 0.5145215392112732, -0.1806253343820572, 0.005224955268204212, -0.12654834985733032, -0.07010282576084137, 0.46892139315605164, -0.3320942223072052, -0.03024037554860115, 0.19049163162708282, 0.033385906368494034, 0.03539592772722244, 0.11449290066957474, -0.0009043197496794164, 0.16240517795085907, 0.026688367128372192, -0.10426055639982224, 0.2684342861175537, 0.38551998138427734, 0.20329958200454712, -0.028781495988368988, 0.3336609899997711, -0.07397253811359406, -0.2677195966243744, 0.08820804953575134, -0.21600009500980377, 0.07768508046865463, 0.11055193841457367, -0.10395576804876328, 0.22052399814128876, 0.07932715117931366, 0.08591871708631516, -0.09028618782758713, 0.031730808317661285, 0.045511502772569656, 0.03319923207163811, 0.20615914463996887, -0.31756049394607544, 0.28721722960472107], [0.04486388713121414, 0.24862706661224365, 0.07224056869745255, -0.0836617574095726, 0.2215152382850647, -0.012973303906619549, 0.39080318808555603, -0.3965848982334137, -0.10878496617078781, -0.4822857975959778, 0.0970722958445549, 0.48489460349082947, -0.1794402301311493, -0.10705604404211044, 0.09132320433855057, 0.3046683669090271, -0.10800136625766754, 0.20682989060878754, -0.19661186635494232, 0.27212491631507874, -0.15815694630146027, 0.30521392822265625, -0.47028663754463196, 0.06354689598083496, -0.25171682238578796, -0.1218692883849144, 0.4845254719257355, 0.11372765153646469, -0.016584396362304688, 0.2416374236345291, 0.2477944940328598, 0.5059700608253479, 0.24638380110263824, 0.09866530448198318, 0.08997314423322678, -0.310764878988266, -0.022318242117762566, -0.20787614583969116, 0.2866305410861969, -0.045062072575092316, -0.12875138223171234, -0.006053117569535971, 0.26584944128990173, 0.2909981608390808, -0.00483303889632225, 0.29650840163230896, -0.009140313602983952, -0.34733879566192627, 0.09441695362329483, -0.09225494414567947, -0.1423492729663849, -0.17397622764110565, -0.30815383791923523, -0.14827080070972443, -0.17709389328956604, 0.28750771284103394, 0.04122738912701607, -0.19762969017028809, -0.05120263993740082, -0.2131447196006775, 0.12325898557901382, 0.41441771388053894, -0.6201795339584351, 0.24595291912555695], [-0.001969397533684969, 0.15569278597831726, 0.25586459040641785, -0.11342035233974457, 0.1629604697227478, -0.011415730230510235, 0.4849846661090851, 0.01207269262522459, 0.4706011712551117, -0.2645902931690216, -0.16793569922447205, -0.13602258265018463, -0.23569414019584656, -0.286831796169281, 0.18208153545856476, 0.21255387365818024, -0.16793474555015564, 0.25345826148986816, -0.5804942846298218, 0.18403178453445435, 0.08611156791448593, 0.04109913483262062, -0.029589753597974777, -0.35233476758003235, -0.6362745761871338, 0.05144460126757622, 0.4233776032924652, -0.3051184117794037, -0.024061741307377815, 0.03386014699935913, -0.03904556483030319, 0.1333528608083725, -0.09691836684942245, -0.0677984356880188, -0.1174599677324295, 0.26174208521842957, -0.13379111886024475, -0.10631635785102844, 0.26657819747924805, 0.22004906833171844, 0.08617156744003296, -0.09886691719293594, 0.12135521322488785, -0.0017195491818711162, -0.20743931829929352, 0.2136770635843277, 0.08678235113620758, -0.08044546842575073, 0.12708038091659546, -0.33762815594673157, -0.21558991074562073, -0.02236340194940567, 0.05355970561504364, -0.28148797154426575, 0.20164044201374054, -0.02694549784064293, 0.16793501377105713, 0.1148519217967987, -0.10472326725721359, 0.2110389620065689, -0.0212175901979208, 0.3665614426136017, -0.016502659767866135, 0.030884893611073494], [0.18142792582511902, 0.189523383975029, -0.1527920514345169, 0.109758161008358, 0.09732700139284134, 0.3574267029762268, 0.26194968819618225, -0.17659462988376617, 0.6285348534584045, -0.26386889815330505, 0.1527113914489746, 0.27864816784858704, -0.20847094058990479, -0.1795504093170166, -0.04708774387836456, 0.11784902215003967, 0.16166193783283234, 0.26525428891181946, 0.03700358420610428, 0.24531373381614685, -0.12248866260051727, -0.21181662380695343, -0.1710832267999649, -0.09711403399705887, 0.24397601187229156, 0.2803232967853546, -0.09036912024021149, -0.1925974190235138, -0.03099856711924076, 0.2959143817424774, -0.293136328458786, -0.09165732562541962, -0.2866267263889313, 0.008901815861463547, 0.0779520645737648, -0.05287593975663185, -0.09392092376947403, -0.10318095237016678, 0.04288984835147858, -0.12836231291294098, -0.08013132959604263, 0.12835252285003662, 0.14046992361545563, -0.15023083984851837, 0.19752393662929535, 0.29016831517219543, 0.2566196024417877, -0.08447591960430145, 0.1685178279876709, -0.00395309180021286, -0.5355104207992554, -0.1266079545021057, 0.024608174338936806, -0.047747280448675156, 0.4588257670402527, 0.36680465936660767, 0.09595083445310593, -0.11881203204393387, -0.17001470923423767, -0.23211157321929932, 0.001557344337925315, -0.14962100982666016, -0.0058611598797142506, 0.07378406822681427], [-0.38854533433914185, 0.41289404034614563, -0.43208855390548706, 0.1107611209154129, 0.4257723093032837, 0.08751915395259857, -0.24170230329036713, 0.16243469715118408, 0.6582807302474976, 0.44482114911079407, -0.15045484900474548, 0.13074202835559845, -0.15598638355731964, -0.12024717777967453, 0.6039610505104065, -0.07353466004133224, 0.2250814288854599, 0.18107710778713226, 0.09376668930053711, 0.06754953414201736, -0.043514683842659, -0.33859124779701233, 0.25553974509239197, 0.016469504684209824, 0.24821309745311737, -0.10370149463415146, -0.03925761207938194, -0.12807151675224304, 0.1500038206577301, 0.16657772660255432, -0.46014806628227234, -0.1098550409078598, -0.5240681171417236, -0.12034424394369125, -0.023494046181440353, 0.21008916199207306, -0.4371125102043152, 0.5135946869850159, 0.23315733671188354, -0.021837159991264343, -0.040102578699588776, -0.040129851549863815, 0.10723806172609329, 0.07715677469968796, 0.06738732755184174, 0.34942054748535156, 0.02068427950143814, -0.15700094401836395, 0.13491077721118927, 0.10762640088796616, -0.07156423479318619, -0.4574260413646698, 0.33197373151779175, 0.04859170317649841, 0.18210849165916443, -0.07385966181755066, 0.23963411152362823, -0.12377417087554932, -0.2025105208158493, -0.10029501467943192, -0.06781771034002304, -0.3500528335571289, -0.059870682656764984, 0.33293500542640686], [0.18963423371315002, 0.38512569665908813, -0.004236347042024136, 0.014895829372107983, -0.025688977912068367, 0.42974549531936646, 0.2746473252773285, 0.260210245847702, 0.689614474773407, 0.2142801731824875, 0.0005229528760537505, 0.24276094138622284, 0.057980310171842575, -0.19063948094844818, 0.15630370378494263, 0.1573743224143982, 0.25372734665870667, 0.04705315828323364, -0.36933308839797974, -0.08430629968643188, -0.397053062915802, 0.03225862607359886, 0.23334462940692902, 0.08784361183643341, 0.2913084328174591, 0.14067663252353668, -0.15735045075416565, -0.24587957561016083, -0.1403869241476059, 0.09946499019861221, 0.09241343289613724, -0.24029883742332458, -0.3453001081943512, -0.4183637499809265, 0.11340413242578506, -0.34378865361213684, -0.17909841239452362, 0.004367837216705084, 0.3734416961669922, -0.1594422459602356, -0.4649375081062317, -0.0226421058177948, 0.38427814841270447, 0.24949438869953156, 0.08371663093566895, 0.12308288365602493, 0.147969588637352, -0.2883937656879425, 0.26588186621665955, 0.041219621896743774, 0.0901242047548294, 0.6002834439277649, 0.3105587959289551, -0.08480848371982574, 0.14192743599414825, -0.21065133810043335, -0.14677654206752777, -0.10492479056119919, -0.0842498168349266, -0.058004505932331085, 0.09024889767169952, 0.2240464985370636, -0.055733516812324524, 0.19665765762329102], [0.002465952420607209, 0.03982262313365936, 0.34850990772247314, -0.20589564740657806, 0.21833665668964386, -0.09637252986431122, -0.14133767783641815, -0.08390919864177704, -0.061805013567209244, 0.08269516378641129, -0.10626771301031113, -0.021751534193754196, 0.1724967062473297, 0.023717518895864487, 0.21353210508823395, -0.03257867321372032, 0.13918572664260864, -0.11490391939878464, -0.6074211001396179, -0.07468094676733017, 0.3211138844490051, 0.07762613147497177, 0.2414894849061966, 0.1985061764717102, -0.011022995226085186, 0.23526977002620697, 0.08579498529434204, -0.142225980758667, 0.37311530113220215, 0.2145107537508011, -0.13886813819408417, -0.02006867714226246, 0.11389778554439545, 0.14164085686206818, -0.38743749260902405, -0.3610742390155792, -0.08577701449394226, -0.39046260714530945, -0.21814458072185516, -0.04623071849346161, -0.1727876216173172, 0.09072431176900864, 0.12083805352449417, -0.15657244622707367, 0.012341841123998165, -0.09410779923200607, 0.21061624586582184, -0.16992470622062683, 0.445530503988266, -0.457022488117218, -0.3282090127468109, 0.09000475704669952, 0.15077278017997742, -0.2864183187484741, -0.006624236702919006, 0.10623501986265182, -0.15294106304645538, 0.4569011330604553, -0.3807658553123474, 0.10951624810695648, -0.08237245678901672, 0.1599121391773224, -0.21072280406951904, 0.1854124516248703], [0.04497246444225311, -0.2123560905456543, 0.29345497488975525, -0.27352529764175415, 0.13933441042900085, -0.33998993039131165, -0.345620721578598, 0.08285181224346161, 0.38848087191581726, -0.0743042379617691, -0.2606913149356842, -0.10058161616325378, 0.0030613334383815527, 0.10116318613290787, -0.08436229079961777, 0.13408391177654266, 0.39546847343444824, 0.17613716423511505, -0.13686515390872955, -0.1985618621110916, 0.18725912272930145, 0.06926224380731583, -0.12230643630027771, -0.15614357590675354, 0.052573226392269135, 0.39140942692756653, 0.10488992184400558, -0.2629864513874054, 0.20353560149669647, 0.052966177463531494, -0.1322104036808014, 0.3652680218219757, 0.2663835287094116, 0.6030126810073853, -0.4141080677509308, -0.11696238815784454, -0.10205280035734177, -0.40521541237831116, -0.18695156276226044, 0.29445627331733704, -0.06891311705112457, -0.1762247085571289, -0.06663616746664047, -0.47524580359458923, -0.19148729741573334, -0.17419470846652985, 0.17555074393749237, -0.08601164817810059, 0.013455570675432682, -0.2886851727962494, 0.12381336838006973, -0.20149914920330048, 0.3464004397392273, -0.5342308878898621, -0.05095962807536125, -0.3275742828845978, 0.023205261677503586, 0.20930038392543793, -0.027932502329349518, -0.02190549112856388, -0.10017696022987366, 0.13424579799175262, -0.2829611897468567, 0.564866304397583], [-0.2236294150352478, -0.06474794447422028, 0.5542495846748352, -0.06681039184331894, -0.16881996393203735, -0.0826742872595787, 0.031329743564128876, 0.3432093858718872, -0.23610180616378784, 0.20220676064491272, -0.6486864686012268, 0.02797374688088894, -0.013985538855195045, 0.0640181377530098, -0.08644378185272217, 0.2006901204586029, 0.49714553356170654, -0.14435668289661407, -0.30163389444351196, -0.2820607125759125, -0.010884272865951061, -0.042216673493385315, -0.04234190657734871, 0.08022551983594894, 0.33746010065078735, 0.2750457227230072, 0.5538457036018372, -0.27202528715133667, -0.13720382750034332, 0.17843690514564514, 0.1460612714290619, 0.3664523959159851, 0.11328200995922089, 0.10624552518129349, -0.397579163312912, 0.06297370791435242, 0.054966963827610016, -0.1397358924150467, -0.05114516243338585, 0.0760117769241333, -0.23441626131534576, -0.1853945106267929, 0.619972825050354, -0.2364736795425415, -0.05932217836380005, -0.22176244854927063, 0.11420227587223053, -0.14292646944522858, 0.11211933940649033, 0.001727872877381742, 0.24505765736103058, -0.2922307252883911, -0.18598566949367523, -0.1474064290523529, -0.17643770575523376, -0.031204845756292343, -0.2532545030117035, 0.3092285096645355, -0.24821163713932037, 0.0913490429520607, 0.18339376151561737, -0.05854198336601257, -0.19603762030601501, 0.2904544174671173], [-0.0382579080760479, 0.22175444662570953, 0.32363927364349365, -0.21129992604255676, 0.6122625470161438, 0.1340123414993286, 0.06808300316333771, -0.2734256982803345, 0.33958375453948975, 0.3700271546840668, -0.1664896011352539, 0.4021347165107727, -0.1261584609746933, -0.01947305165231228, -0.22243665158748627, 0.2729646861553192, 0.1890021115541458, 0.0965278372168541, -0.9122163653373718, 0.15881957113742828, -0.06089188903570175, -0.01842375658452511, 0.24730661511421204, -0.3720940053462982, 0.29200711846351624, 0.5703111290931702, -0.07011767476797104, 0.02446531318128109, -0.38143619894981384, 0.025224659591913223, 0.01878735050559044, -0.07271242886781693, -0.2953685522079468, 0.12150800228118896, -0.09934402257204056, -0.2987750768661499, 0.08255212008953094, -0.2078319936990738, -0.23799853026866913, 0.0893062874674797, -0.35013484954833984, -0.0767202079296112, 0.43881499767303467, -0.2974540591239929, 0.3260515630245209, 0.21048414707183838, 0.11923862993717194, -0.08999388664960861, -0.11266255378723145, 0.3485226035118103, 0.1834425926208496, 0.22565007209777832, -0.0015832084463909268, -0.21040956676006317, 0.06375235319137573, 0.11476801335811615, 0.13787345588207245, 0.11777102947235107, 0.20284616947174072, -0.40006816387176514, 0.06696221977472305, -0.18850861489772797, -0.04168708622455597, 0.04991595447063446], [0.40126878023147583, 0.8089012503623962, 0.12147992104291916, 0.021601254120469093, 0.2509884238243103, 0.3276151418685913, 0.1818028837442398, 0.4058232009410858, 0.14445306360721588, 0.15993072092533112, 0.08667636662721634, 0.10095809400081635, 0.2870284914970398, -0.20955154299736023, -0.0942685678601265, 0.0334855318069458, 0.06753560900688171, 0.08686698228120804, -0.21861590445041656, 0.42130669951438904, -0.20240537822246552, 0.04855837672948837, -0.17744001746177673, -0.15917755663394928, 0.18040265142917633, 0.2897628843784332, 0.2777337431907654, -0.10060795396566391, -0.36098235845565796, 0.10305982828140259, 0.029585568234324455, 0.05319260060787201, -0.02340676635503769, -0.14008744060993195, 0.09915151447057724, -0.1623719185590744, 0.06019129231572151, -0.008782755583524704, 0.0696914941072464, -0.04067113623023033, -0.2988373339176178, 0.15434911847114563, 0.0796869546175003, -0.12741167843341827, 0.2534598410129547, 0.17437441647052765, 0.23745709657669067, 0.0720672681927681, 0.0224030502140522, -0.1864648461341858, 0.005991189740598202, -0.027506496757268906, 0.13479182124137878, -0.040271494537591934, -0.25436505675315857, 0.0010969224385917187, -0.13005883991718292, -0.198094442486763, -0.2656380236148834, 0.12276317924261093, -0.16089384257793427, 0.2543782889842987, 0.0052215782925486565, -0.26520976424217224], [-0.11935362219810486, 0.31399670243263245, 0.025530606508255005, -0.10209080576896667, 0.10444062203168869, 0.17244252562522888, 0.363020658493042, 0.39322322607040405, -0.11649426072835922, -0.2365248203277588, -0.05116398259997368, 0.04391781985759735, -0.14496615529060364, -0.2473442107439041, 0.19357125461101532, 0.2536050081253052, 0.05450392886996269, -0.11706335842609406, -0.31981080770492554, -0.06964030116796494, 0.14419499039649963, -0.00548515934497118, -0.21935929358005524, -0.3885490596294403, -0.1850975900888443, -0.03463051840662956, 0.2406432330608368, -0.3440512418746948, -0.19929438829421997, -0.14781111478805542, -0.07664243876934052, -0.03331839293241501, -0.07046958059072495, -0.00881793349981308, -0.06841161102056503, -0.16767756640911102, 0.17037814855575562, 0.11468499153852463, -0.08942802250385284, 0.20419234037399292, 0.23513300716876984, -0.20971253514289856, 0.2636687457561493, 0.2107161432504654, -0.1997777223587036, 0.013752506114542484, 0.23112760484218597, -0.016389833763241768, 0.1262986660003662, 0.08433368057012558, -0.10158012062311172, -0.24450071156024933, 0.3430846333503723, 0.17609582841396332, -0.08362794667482376, -0.09167255461215973, -0.21547624468803406, 0.16523940861225128, 0.08053133636713028, -0.07310844957828522, 0.22827690839767456, -0.0279842559248209, 0.15060007572174072, -0.12769226729869843], [-0.5395921468734741, 0.2808710038661957, 0.5047216415405273, 0.02371445670723915, 0.31039267778396606, 0.5085901618003845, -0.38739287853240967, -0.8588618040084839, 0.530959963798523, 0.604982316493988, -0.7587896585464478, -0.31990036368370056, -0.37663495540618896, -0.21122625470161438, -0.6492661833763123, -0.6514780521392822, 0.1653398871421814, 0.2390608936548233, -0.31262800097465515, -0.4012366533279419, 0.6307780742645264, -0.45391127467155457, 0.45953425765037537, -0.36193135380744934, -0.6640099883079529, 0.4956802725791931, 0.8606019616127014, -0.06557231396436691, -0.45864641666412354, 0.18835462629795074, 0.5595273375511169, 0.18676161766052246, 0.706771731376648, -0.04352160170674324, -0.3300943374633789, 0.11389905214309692, -0.04222891852259636, 0.2166779786348343, -0.524348258972168, 0.29057151079177856, 0.23071500658988953, 0.042569052428007126, 0.5203417539596558, 0.5638725757598877, -0.1668349802494049, 0.4986807107925415, -0.7006450891494751, 0.32784050703048706, 0.3486179709434509, -0.13806551694869995, -0.008623801171779633, 0.30767032504081726, -0.7058258652687073, 0.38150298595428467, -0.2773503065109253, 0.2163556069135666, -0.3120545446872711, -0.5692334175109863, -0.2639273703098297, -0.6440495848655701, -0.7497094869613647, 0.7256278395652771, -0.18686415255069733, -0.4104556739330292], [0.1383148729801178, -0.15226201713085175, 0.2282637655735016, 0.05659528076648712, 0.04118865355849266, 0.1784745454788208, 0.05865279212594032, 0.09697803109884262, -0.2005658894777298, -0.10956159979104996, 0.6182743310928345, 0.27489975094795227, -0.2789207398891449, -0.12294940650463104, 0.2757680118083954, 0.24594566226005554, 0.1706676185131073, -0.0036251009441912174, 0.005678666289895773, 0.16865505278110504, -0.011514908634126186, -0.40422219038009644, 0.11379396170377731, -0.09928397834300995, 0.10514575988054276, 0.6965427994728088, 0.2788182497024536, -0.13540811836719513, 0.25790005922317505, 0.04086214303970337, 0.08977115154266357, 0.1447414606809616, 0.5177364945411682, -0.1507822871208191, 0.21471987664699554, -0.3848394751548767, 0.06688089668750763, -0.2771942913532257, 0.014209222979843616, 0.020958304405212402, 0.0654226616024971, 0.1738201528787613, -0.19726814329624176, -0.07912798225879669, -0.0600002147257328, 0.012988190166652203, 0.15820547938346863, -0.1685151755809784, 0.45328542590141296, 0.18172433972358704, -0.40795499086380005, -0.07835564017295837, 0.304506778717041, 0.37558332085609436, -0.29081618785858154, -0.4456508457660675, 0.4236442446708679, 0.2697735130786896, -0.008075901307165623, 0.1334993839263916, -0.2594572901725769, -0.09992562979459763, 0.06522483378648758, 0.22185228765010834], [0.06790227442979813, -0.14623552560806274, -0.08371815085411072, -0.07396572083234787, -0.22493724524974823, -0.014409171417355537, -0.14955709874629974, 0.49331435561180115, 0.16963201761245728, -0.17765112221240997, -0.020168812945485115, -0.1450011134147644, -0.02720019966363907, 0.15122871100902557, 0.763938844203949, -0.1275867223739624, 0.3019612729549408, 0.31095874309539795, 0.015969404950737953, 0.21285082399845123, -0.05293051525950432, -0.060561127960681915, 0.06761126965284348, 0.21537867188453674, 0.15704117715358734, 0.03548075631260872, -0.04793139919638634, -0.13147442042827606, 0.045354656875133514, -0.04109528660774231, 0.09972736984491348, -0.18660089373588562, 0.09227000921964645, 0.09201608598232269, 0.3061908185482025, -0.4459296464920044, -0.2041659951210022, -0.1343638300895691, 0.3489651381969452, -0.004893905017524958, -0.5280565023422241, 0.04564686492085457, -0.09489278495311737, -0.3416977524757385, -0.13755302131175995, 0.24841570854187012, 0.01995670050382614, -0.6587287783622742, 0.2016393542289734, 0.3915838599205017, 0.06346176564693451, -0.18251730501651764, 0.18435245752334595, -0.050970807671546936, 0.14140307903289795, -0.045632991939783096, 0.027085576206445694, 0.18194130063056946, 0.1579238921403885, 0.2815510928630829, 0.443347305059433, 0.033260490745306015, 0.0630766898393631, 0.33825376629829407], [0.18404430150985718, -0.1679205298423767, 0.26658499240875244, 0.06722459942102432, 0.05618933588266373, -0.09731672704219818, 0.0698162317276001, 0.16911129653453827, 0.0372098870575428, 0.1109195426106453, 0.47823888063430786, 0.3820250928401947, 0.1609911024570465, 0.30383020639419556, -0.03752405568957329, 0.10974284261465073, 0.38783711194992065, -0.06625741720199585, -0.1468174010515213, 0.16512513160705566, -0.42878735065460205, 0.07995975762605667, -0.2530847489833832, -0.08484109491109848, 0.1442473828792572, 0.1336197406053543, -0.2523691952228546, 0.2222529798746109, 0.2117825597524643, 0.21425101161003113, -0.18152977526187897, 0.23688054084777832, -0.3956720530986786, 0.1781795471906662, 0.03560655564069748, 0.12847550213336945, -0.21257300674915314, -0.23427942395210266, 0.24269121885299683, -0.028785409405827522, 0.08612871915102005, -0.43206116557121277, 0.10633654147386551, -0.4048481583595276, 0.2256363332271576, -0.05642214044928551, -0.0061311908066272736, 0.05528365820646286, 0.03683406487107277, 0.0010839223396033049, -0.14564503729343414, -0.6374115943908691, 0.1732785999774933, -0.6169827580451965, -0.0895397812128067, -0.042373184114694595, 0.2245304137468338, 0.015499905683100224, -0.08678773045539856, 0.18289931118488312, 0.19689129292964935, 0.10549020767211914, -0.06459496170282364, -0.04231540486216545], [0.39978671073913574, -0.07836493104696274, -0.3720466196537018, -0.24814793467521667, -0.060346730053424835, -0.11710897833108902, 0.036791205406188965, 0.5199102759361267, 0.1327156275510788, -0.46802660822868347, 0.4104747474193573, 0.5768894553184509, 0.3763654828071594, 0.5200303196907043, 0.7076386213302612, 0.40922704339027405, -0.0147508904337883, 0.08110171556472778, 0.06660739332437515, 0.2222721427679062, -0.44677475094795227, 0.4861740171909332, -0.49003204703330994, 0.5068607926368713, 0.24387073516845703, -0.5114378929138184, -0.3118380606174469, -0.3563867509365082, 0.42365121841430664, 0.13384099304676056, -0.43755802512168884, -0.18064385652542114, -0.0007220611441880465, 0.024176470935344696, -0.05713478848338127, 0.3008247911930084, 0.3535005748271942, -0.21450315415859222, 0.4938623607158661, 0.3194796144962311, -0.39891892671585083, -0.34733858704566956, 0.014019620604813099, 0.030320465564727783, 0.17502760887145996, -0.3761827349662781, 0.4504186511039734, -0.3172415494918823, -0.24604365229606628, 0.27565428614616394, 0.5902720093727112, -0.14322318136692047, 0.3835863769054413, -0.13671433925628662, 0.13453198969364166, -0.031410809606313705, -0.21784529089927673, -0.11796224117279053, 0.22066058218479156, -0.00932214967906475, 0.38005757331848145, -0.15650737285614014, 0.3306279182434082, 0.49333643913269043], [0.03298734501004219, -0.07037072628736496, 0.07324410229921341, -0.2719091475009918, 0.07472621649503708, -0.12701599299907684, -0.2791047990322113, 0.2385159283876419, 0.17189496755599976, -0.14180655777454376, 0.3803427517414093, 0.01230260357260704, 0.09174276888370514, 0.28588762879371643, 0.11489644646644592, 0.11557043343782425, 0.07206220924854279, -0.07986360788345337, 0.12465500086545944, 0.10940221697092056, -0.26286762952804565, -0.039252739399671555, -0.0973363146185875, 0.01990717649459839, -0.08236227184534073, -0.01496920920908451, -0.15067511796951294, 0.08527015894651413, 0.2926649749279022, 0.06346705555915833, -0.3125362694263458, -0.09148422628641129, -0.2073274701833725, -0.04711846262216568, 0.04655665159225464, -0.2255612015724182, -0.2111465483903885, -0.09275545924901962, 0.3182291090488434, 0.0525706447660923, -0.05726383253931999, -0.2170795202255249, -0.06340473890304565, -0.3733569085597992, -0.05029015988111496, -0.43848592042922974, 0.07654060423374176, 0.014755339361727238, 0.013703429140150547, 0.5774230360984802, -0.018806904554367065, -0.3349671959877014, 0.09370261430740356, -0.43273237347602844, -0.003495229408144951, -0.10355972498655319, 0.2658909261226654, -0.0671382024884224, 0.05090885981917381, -0.0383564755320549, 0.5201776027679443, -0.07873596996068954, 0.3276192247867584, 0.19943536818027496], [0.2709447145462036, -0.05216347426176071, 0.03194425627589226, -0.3195996582508087, -0.5922353267669678, 0.04423414170742035, 0.21800033748149872, 0.0023385074455291033, -0.17483480274677277, 0.27179670333862305, 0.5333040356636047, 0.1820749193429947, 0.3170096278190613, 0.14236707985401154, 0.013156730681657791, 0.06376692652702332, 0.27447548508644104, -0.12374506145715714, 0.054498616605997086, 0.12770818173885345, 0.019314253702759743, 0.03427707776427269, 0.31251391768455505, 0.1444595456123352, 0.20464520156383514, -0.3450961709022522, 0.04033324867486954, -0.18618567287921906, 0.23887880146503448, -0.32491612434387207, -0.2527693510055542, -0.3647347092628479, -0.12544037401676178, 0.010088606737554073, 0.03353408724069595, 0.15452010929584503, -0.0774223804473877, -0.07507072389125824, 0.49170640110969543, 0.06350339949131012, -0.3267807066440582, -0.08047520369291306, 0.10051241517066956, -0.15461128950119019, 0.15103685855865479, -0.19578294456005096, -0.12493454664945602, -0.17103885114192963, -0.03573979437351227, 0.05798979476094246, -0.23983383178710938, -0.16841891407966614, 0.33423253893852234, 0.21493007242679596, -0.11127909272909164, -0.0017330590635538101, -0.13397476077079773, -0.11262611299753189, 0.08958110958337784, 0.010558879934251308, 0.11516044288873672, -0.3564455807209015, 0.10098454356193542, 0.18920202553272247], [-0.10974595695734024, -0.5852430462837219, -0.26610276103019714, 0.05499932914972305, -1.039966106414795, -0.24536632001399994, 0.27033352851867676, 0.5381287336349487, -0.25887811183929443, -0.05479402095079422, 0.4255666136741638, -0.07154595851898193, 0.34017136693000793, 0.38023629784584045, 0.4458503723144531, 1.0106658935546875, -0.40054357051849365, 0.223039910197258, -0.0793931782245636, 0.3946117162704468, -0.32494020462036133, -0.1547996997833252, -0.23558546602725983, 0.14934751391410828, -0.01682579331099987, -0.10054276883602142, -0.33707478642463684, -0.19117605686187744, 0.21783901751041412, -0.03998991474509239, -0.27164825797080994, -0.32589128613471985, -0.3117130994796753, 0.29195523262023926, 0.29730144143104553, 0.3149694800376892, -0.11203031986951828, -0.12212315201759338, 0.3698025047779083, 0.5209135413169861, -0.29101821780204773, 0.015446703881025314, -0.27312779426574707, -0.29886895418167114, 0.28285542130470276, -0.32393431663513184, 0.18447165191173553, -0.2980669438838959, 0.05145054683089256, 0.4031784236431122, 0.08419216424226761, -0.21020275354385376, 0.17507611215114594, 0.11135679483413696, 0.13011041283607483, 0.23153063654899597, 0.29786738753318787, 0.05742069333791733, -0.2125179022550583, 0.1584603488445282, 0.5107820630073547, -0.3366999924182892, 0.20340260863304138, 0.312867671251297], [0.18803782761096954, -0.5036236643791199, 0.06070716306567192, -0.5629332661628723, -0.586739718914032, -0.4361744225025177, 0.5061096549034119, 0.27503010630607605, -0.1938139945268631, 0.29100778698921204, 0.11004051566123962, 0.4335445761680603, 0.16686971485614777, 0.2216716855764389, 0.36899659037590027, -0.04275793209671974, -0.06745164841413498, -0.16765068471431732, -0.10795576125383377, 0.04173675552010536, 0.1341809183359146, -0.19095014035701752, 0.050100889056921005, -0.13127349317073822, -0.17053914070129395, -0.010020271874964237, -0.4208820164203644, -0.015787692740559578, -0.11431503295898438, 0.045915789902210236, 0.12367051839828491, -0.18324637413024902, 0.259620726108551, 0.11546257138252258, 0.24010811746120453, 0.06760839372873306, -0.01606529764831066, 0.055269476026296616, 0.31432637572288513, 0.2932372987270355, -0.3719303607940674, -0.18659310042858124, -0.10700436681509018, -0.14923088252544403, 0.051115140318870544, 0.11229857802391052, 0.33350831270217896, -0.1454581767320633, -0.032512031495571136, 0.08545655012130737, -0.26460781693458557, -0.07177550345659256, 0.19060781598091125, -0.0760672464966774, 0.014483686536550522, -0.08175311237573624, -0.061474788933992386, -0.2375473976135254, 0.032509125769138336, 0.3222866654396057, 0.2813836932182312, -0.415602445602417, 0.13246355950832367, -0.11760403215885162], [0.33835679292678833, -0.30517902970314026, 0.018762055784463882, 0.11320614069700241, -0.37402185797691345, -0.424824059009552, 0.26006433367729187, 0.2931232452392578, -0.8227159976959229, -0.5138713717460632, 0.13546252250671387, 0.15103034675121307, 0.17714248597621918, -0.3235677182674408, 0.10349604487419128, 0.336798757314682, -0.3530634641647339, 0.0043071177788078785, -0.2310296595096588, 0.003122968366369605, 0.04489714652299881, -0.32777586579322815, -0.2575911283493042, 0.10991084575653076, 0.31912004947662354, -0.17251981794834137, 0.13896599411964417, 0.06920523196458817, 0.003980390727519989, -0.4724673926830292, -0.08174874633550644, -0.06759028881788254, 0.28058362007141113, 0.04607122018933296, -0.12557928264141083, -0.0671786516904831, 0.30084028840065, -0.4029133915901184, 0.28365492820739746, -0.23572787642478943, -0.05992806330323219, 0.160094752907753, -0.2990782558917999, -0.1056571826338768, 0.37778595089912415, 0.12062927335500717, 0.4395303428173065, -0.28336870670318604, -0.13677507638931274, 0.06457258760929108, -0.0005779590574093163, -0.04035486653447151, 0.22261258959770203, -0.08920124173164368, -0.08923674374818802, -0.18720482289791107, -0.30910569429397583, 0.21115821599960327, 0.33892112970352173, 0.029697367921471596, 0.16769224405288696, 0.15228411555290222, -0.31034624576568604, 0.4655667841434479], [0.4563724398612976, -0.025521304458379745, -0.3501313328742981, 0.19863684475421906, -0.13863706588745117, -0.23994742333889008, 0.3321371078491211, 0.31134968996047974, -0.32311418652534485, -0.3032936751842499, 0.02638675831258297, 0.07763220369815826, 0.21544182300567627, 0.024868814274668694, 0.43764305114746094, 0.6380534768104553, -0.5337613224983215, -0.1699114441871643, -0.5721750855445862, 0.2442881464958191, -0.1264028251171112, -0.018675338476896286, -0.2721370756626129, 0.5746671557426453, 0.5761221647262573, -0.23510980606079102, -0.10882697999477386, 0.10057415813207626, 0.19960251450538635, -0.26886823773384094, -0.010688372887670994, -0.09447185695171356, -0.09779464453458786, 0.16067087650299072, -0.2398102730512619, -0.02163538709282875, 0.20659665763378143, -0.4863012135028839, 0.15923722088336945, -0.1769765019416809, -0.3082789182662964, -0.41592860221862793, -0.34347835183143616, -0.17016200721263885, 0.4861784875392914, -0.11391782760620117, 0.5529727935791016, 0.06880830228328705, -0.42937877774238586, 0.15017838776111603, 0.389422744512558, -0.24130159616470337, 0.4476397931575775, -0.032769206911325455, -0.38452309370040894, -0.05355393514037132, 0.31618860363960266, 0.21266232430934906, 0.02394886501133442, 0.2077198475599289, 0.09818717837333679, 0.01982862502336502, -0.027017267420887947, 0.5176495313644409], [0.2789531946182251, -0.40483441948890686, 0.039206791669130325, -0.10471039265394211, -0.025373805314302444, -0.5137163400650024, 0.2983723282814026, 0.0738583654165268, -0.3933158218860626, 0.04811200872063637, -0.0242703165858984, -0.005305181257426739, -0.21024303138256073, -0.11951632797718048, 0.29348325729370117, 0.12754413485527039, -0.5500512719154358, -0.11466507613658905, -0.3516993224620819, -0.4410935640335083, -0.06585913151502609, -0.3967631161212921, 0.20534798502922058, 0.29938265681266785, 0.18856438994407654, 0.09335918724536896, 0.04087277501821518, -0.1542593091726303, -0.14516867697238922, -0.5188804268836975, -0.01288775447756052, 0.12170762568712234, 0.27771368622779846, -0.13001498579978943, -0.06643293052911758, -0.11618685722351074, -0.051879990845918655, 0.09207075834274292, -0.012273885309696198, -0.21490147709846497, -0.4650109112262726, -0.1571115404367447, 0.16609184443950653, 0.12093085795640945, 0.34356823563575745, 0.07402034848928452, -0.02210291102528572, -0.1444128304719925, -0.23995739221572876, 0.3554527759552002, -0.104305200278759, 0.1377079039812088, 0.25389087200164795, 0.10547913610935211, -0.13850288093090057, -0.0011844740947708488, 0.38957545161247253, 0.010119136422872543, -0.1660694032907486, -0.18944929540157318, 0.2603423595428467, -0.3503337502479553, -0.08374449610710144, 0.09766639024019241], [0.09009049832820892, 0.1272023618221283, -0.2231243997812271, 0.11049219965934753, -0.002290356671437621, 0.08007083833217621, -0.3078552782535553, 0.2394988238811493, 0.32479703426361084, -0.10793760418891907, 0.04161732271313667, -0.13304194808006287, 0.17932520806789398, 0.3527199327945709, 0.1580183506011963, 0.3349951207637787, -0.42474332451820374, -0.10061346739530563, -0.12170510739088058, -0.21241439878940582, -0.44368457794189453, 0.06936156004667282, 0.18898719549179077, 0.11576049774885178, 0.02235729992389679, -0.2432735413312912, -0.35434383153915405, 0.23160426318645477, 0.1814749836921692, 0.17038796842098236, -0.21574187278747559, -0.5983589291572571, -0.33260804414749146, 0.5144950151443481, -0.31368914246559143, -0.12804163992404938, 0.16317060589790344, -0.18428143858909607, 0.11381014436483383, 0.10653354972600937, -0.07217738777399063, 0.31501778960227966, -0.3856663405895233, 0.22332391142845154, -0.18580655753612518, 0.40314212441444397, 0.19976890087127686, -0.045941635966300964, -0.027689730748534203, -0.31060951948165894, -0.06478680670261383, 0.17010369896888733, 0.17599478363990784, 0.21047352254390717, 0.26257047057151794, 0.06544311344623566, -0.12829867005348206, -0.17042602598667145, 0.28023436665534973, 0.34686264395713806, 0.013914213515818119, -0.16308897733688354, -0.2636595070362091, 0.32199814915657043], [0.5566534996032715, 0.49196529388427734, -0.643761932849884, -0.3160456717014313, 0.10236547142267227, -0.16267915070056915, -0.30441248416900635, 0.21411557495594025, 0.28364214301109314, -0.35912278294563293, -0.2223757654428482, 0.6435796618461609, 0.5305961966514587, 0.08982779085636139, 0.4204663932323456, 0.5476270914077759, -0.4985356032848358, -0.32977327704429626, -0.41337111592292786, 0.29982057213783264, -0.816318690776825, 0.5298527479171753, -0.30294105410575867, 0.12225136905908585, 0.11157548427581787, -0.4778848886489868, -0.14259958267211914, -0.39298513531684875, 0.608702540397644, 0.10601894557476044, -0.7674553990364075, -0.6212269067764282, -0.044883184134960175, -0.10004714131355286, -0.34338027238845825, 0.046211205422878265, -0.005046461708843708, -0.16275618970394135, 0.44164007902145386, -0.3921167850494385, 0.1345297247171402, -0.13670189678668976, -0.384779691696167, -0.22236855328083038, 0.10410809516906738, -0.03936474025249481, 0.270447701215744, 0.11524984985589981, -0.02533947117626667, 0.2133474498987198, -0.1679220050573349, 0.09201236814260483, 0.4504817724227905, -0.28052231669425964, 0.38786080479621887, 0.2462744563817978, 0.4258515238761902, 0.24263888597488403, -0.17869795858860016, 0.46219131350517273, 0.5876297950744629, -0.3838535249233246, -0.163140669465065, 0.3841648995876312], [0.15674450993537903, 0.16862766444683075, -0.42282482981681824, -0.2418297678232193, 0.3956577777862549, -0.1320250779390335, 0.14645951986312866, -0.03708465024828911, -0.25492674112319946, -0.3163648545742035, 0.12155222147703171, 0.4903940260410309, 0.40008074045181274, -0.003362457500770688, 0.19121742248535156, 0.5870966911315918, -0.6882054805755615, -0.014869104139506817, -0.036813098937273026, 0.3884795606136322, -0.20220822095870972, 0.2879386842250824, -0.08660061657428741, 0.29189005494117737, 0.4041464030742645, -0.21615411341190338, -0.23918816447257996, -0.11309116333723068, 0.2510972023010254, -0.5925349593162537, -0.24453888833522797, -0.7060394883155823, -0.2985507547855377, -0.06452975422143936, -0.582389771938324, -0.45626986026763916, -0.3488417863845825, 0.2923106253147125, 0.056696753948926926, -0.18708693981170654, -0.0050488547421991825, -0.09538213163614273, -0.3498176038265228, -0.38098976016044617, 0.17597483098506927, 0.6445334553718567, 0.162655308842659, -0.2182607799768448, -0.3209455609321594, -0.030183177441358566, -0.03472941741347313, -0.14542053639888763, 0.7136164307594299, 0.2534387409687042, 0.006898853462189436, -0.06986694037914276, 0.3469708263874054, 0.3779715895652771, -0.04689498245716095, 0.2715167701244354, 0.3926926851272583, -0.44790348410606384, -0.600763201713562, 0.3599552810192108], [0.1120571494102478, 0.028668735176324844, -0.10499084740877151, -0.14045019447803497, -0.17447881400585175, 0.37799033522605896, 0.4856475293636322, 0.0011188298230990767, 0.25128886103630066, 0.3068336248397827, 0.04770148545503616, 0.21000570058822632, 0.15417934954166412, -0.32297223806381226, 0.3072197139263153, 0.24262358248233795, -0.27602365612983704, 0.433022141456604, -0.2991039752960205, 0.16115152835845947, 0.395266056060791, 0.12806148827075958, -0.21371328830718994, 0.21528033912181854, 0.3433185815811157, 0.05685482174158096, 0.06248711049556732, -0.0032135052606463432, -0.09224481135606766, -0.1519555300474167, 0.22922460734844208, -0.23044352233409882, -0.5653867721557617, 0.41643938422203064, -0.045533012598752975, -0.05757295340299606, 0.27542293071746826, 0.4266741871833801, 0.07040155678987503, -0.03337682783603668, 0.1435801386833191, 0.1188744455575943, 0.37467271089553833, 0.21495121717453003, 0.2634163200855255, 0.18366338312625885, -0.13324163854122162, -0.057983506470918655, -0.04813934490084648, -0.1372576355934143, 0.004564501810818911, 0.2525186538696289, 0.2459849864244461, -0.28376176953315735, 0.3249814510345459, -0.12409950792789459, -0.09797398746013641, -0.14077390730381012, 0.18944376707077026, -0.11997435241937637, 0.02011822536587715, -0.1296234428882599, -0.5678740739822388, 0.5796177983283997], [0.2182713747024536, -0.07590232789516449, -0.3391818404197693, -0.19104360044002533, 0.06634949892759323, 0.5301988124847412, 0.02523033693432808, 0.19065089523792267, 0.2841038405895233, -0.04978366196155548, -0.11886801570653915, 0.11202971637248993, -0.0540945790708065, -0.007290730718523264, 0.02607828378677368, 0.04358437657356262, -0.001681407680734992, -0.13566844165325165, -0.22935260832309723, -0.1292211413383484, 0.18865059316158295, -0.42214855551719666, 0.2513717710971832, 0.4066981375217438, 0.026018403470516205, -0.37225067615509033, 0.012692268006503582, -0.08602095395326614, -0.16364067792892456, -0.18582530319690704, 0.42019161581993103, 0.019278855994343758, -0.34667107462882996, -0.2244763970375061, -0.1032385304570198, -0.19172163307666779, 0.26255425810813904, 0.06944089382886887, 0.03198881074786186, 0.11801083385944366, 0.21466392278671265, 0.0858873501420021, 0.0734173059463501, -0.030134426429867744, 0.2741895616054535, 0.16065150499343872, 0.08027327805757523, -0.06037777289748192, -0.09613975137472153, -0.3793187141418457, -0.0477503165602684, 0.006387971807271242, 0.059619344770908356, -0.15975841879844666, 0.47771501541137695, -0.05483590066432953, 0.10283280164003372, -0.35509777069091797, 0.19972454011440277, 0.14212828874588013, -0.1532546579837799, 0.0657864660024643, 0.16494737565517426, -0.2929603159427643], [0.10081955790519714, -0.36727669835090637, -0.32051560282707214, 0.3237946629524231, -0.3068534731864929, -0.05764779448509216, -0.04699356108903885, 0.38342151045799255, -0.2827424108982086, -0.028918514028191566, 0.30158114433288574, 0.35690632462501526, 0.10484597831964493, -0.10723026841878891, 0.383789598941803, 0.39155593514442444, 0.2547754943370819, -0.08187512308359146, -0.08098679780960083, -0.022179152816534042, 0.0601235032081604, 0.3773466944694519, 0.25308021903038025, -0.12228932231664658, 0.2807895243167877, 0.1467810720205307, 0.26848673820495605, 0.21435639262199402, -0.16771574318408966, 0.026928424835205078, -0.003039168193936348, -0.17238980531692505, -0.022990576922893524, 0.4297657310962677, -0.35112524032592773, -0.11203400045633316, 0.3665168285369873, 0.059540752321481705, -0.026587024331092834, -0.21781551837921143, 0.12584765255451202, -0.06252144277095795, -0.2747284770011902, 0.1609134078025818, 0.23682403564453125, 0.07569389045238495, 0.13110856711864471, 0.17362160980701447, 0.0605415441095829, 0.07090388238430023, -0.08141457289457321, 0.20623616874217987, 0.08124635368585587, -0.11011659353971481, -0.21279554069042206, 0.09211240708827972, -0.2117908000946045, -0.11172071844339371, -0.04173263534903526, 0.0028813977260142565, 0.4049583673477173, 0.3709321618080139, 0.2859586775302887, -0.10770823806524277], [0.028215816244482994, -0.24578696489334106, -0.08409154415130615, -0.11002395302057266, 0.1979372203350067, 0.02621620148420334, 0.1506614238023758, 0.09318245947360992, 0.5358131527900696, -0.25638994574546814, 0.21330372989177704, 0.2044023871421814, -0.2269929200410843, 0.15036793053150177, 0.02621542289853096, -0.09609159827232361, -0.16595105826854706, -0.07648228108882904, 0.5192296504974365, 0.023668568581342697, 0.16079214215278625, 0.05039098858833313, -0.12584280967712402, 0.19701248407363892, -0.16609685122966766, -0.16686898469924927, -0.17225411534309387, 0.030499892309308052, -0.028223970904946327, 0.1326313614845276, 0.12093646824359894, 0.015332655049860477, -0.20056889951229095, -0.00926696415990591, 0.2483386993408203, 0.14684779942035675, -0.2324173003435135, 0.07090127468109131, -0.42266845703125, 0.00569246057420969, 0.36536163091659546, -0.12349411845207214, -0.2942277193069458, 0.05868391692638397, -0.31157881021499634, 0.04140618443489075, 0.09861932694911957, -0.12012344598770142, -0.07969046384096146, 0.13193921744823456, 0.0627179965376854, 0.03738556057214737, -0.032086458057165146, 0.06489724665880203, -0.08046168088912964, 0.12813222408294678, -0.11627001315355301, -0.11890649050474167, -0.20324435830116272, -0.022464631125330925, -0.24299776554107666, -0.4704073369503021, 0.07434196025133133, 0.003267909400165081], [-0.0059111518785357475, -0.10326434671878815, -0.15529367327690125, 0.03330616652965546, -0.05313118174672127, -0.022735711187124252, -0.07904382050037384, -0.17554867267608643, 0.12779100239276886, -0.16154755651950836, 0.035854797810316086, 0.3555019199848175, 0.09396082907915115, 0.0170321986079216, 0.2046145349740982, 0.07318457216024399, 0.5278928279876709, -0.07483598589897156, -0.0642055794596672, -0.09203758090734482, 0.03330973908305168, 0.035515762865543365, 0.21607129275798798, 0.4098407030105591, -0.13499252498149872, 0.21029289066791534, 0.17024046182632446, 0.003099884605035186, 0.029515419155359268, 0.1238844096660614, 0.1716695874929428, -0.061332087963819504, -0.10133117437362671, 0.06249264255166054, 0.018582988530397415, 0.10207529366016388, 0.07416657358407974, -0.13009357452392578, 0.5334337949752808, 0.14748762547969818, 0.30455848574638367, 0.05007635056972504, 0.18928615748882294, 0.22379879653453827, 0.17424480617046356, 0.40092411637306213, 0.11899003386497498, 0.010764701291918755, 0.19249190390110016, -0.00976870022714138, 0.06870982050895691, -0.035993389785289764, 0.1566363424062729, 0.38841602206230164, -0.03722548857331276, -0.08682718873023987, 0.052102938294410706, 0.09797605872154236, -0.10609670728445053, 0.3248702883720398, 0.006774040870368481, -0.1994360238313675, -0.2009826898574829, -0.26193204522132874], [0.05752676725387573, -0.36593544483184814, 0.17797692120075226, -0.03352682664990425, 0.5711584687232971, 0.40158379077911377, -0.03575224429368973, -0.02382657863199711, 0.18323563039302826, 0.2973968982696533, -0.2988107204437256, -0.3087368309497833, -0.10439834743738174, 0.10588132590055466, 0.08614373207092285, 0.18148034811019897, -0.20620523393154144, -0.41369518637657166, 0.1488906741142273, -0.1482670158147812, -0.3543868660926819, 0.022451551631093025, 0.14012479782104492, -0.0283021442592144, -0.0776565670967102, -0.032040275633335114, -0.07012063264846802, -0.2415870577096939, -0.136726975440979, 0.09291508048772812, 0.061567798256874084, 0.033047690987586975, -0.17601662874221802, -0.039946798235177994, -0.3856554627418518, 0.03624822571873665, 0.25281840562820435, -0.26019102334976196, -0.10471631586551666, 0.04890040308237076, 0.23019342124462128, -0.08256655931472778, -0.12482277303934097, -0.3436582684516907, 0.025317205116152763, 0.36392298340797424, 0.04673588648438454, -0.0007207872695289552, 0.04971488565206528, 0.0034902733750641346, -0.15140743553638458, 0.14247383177280426, 0.04592093452811241, -0.0011268993839621544, -0.1830071657896042, 0.23192423582077026, 0.1168714091181755, -0.08942520618438721, 0.17759938538074493, -0.09473387897014618, -0.14207875728607178, -0.12945634126663208, -0.3122698962688446, 0.08413135260343552], [-0.33051422238349915, -0.17570236325263977, -0.23152031004428864, -0.16083796322345734, -0.07347745448350906, -0.06261873990297318, -0.21224822103977203, -0.14003652334213257, -0.05349811539053917, 0.11435828357934952, -0.15287120640277863, -0.030818726867437363, 0.07012248039245605, 0.3427853584289551, 0.1663353443145752, -0.17891386151313782, -0.07924914360046387, -0.0009016538388095796, -0.22895723581314087, -0.03267476707696915, 0.1769701987504959, -0.08715281635522842, -0.05314761772751808, -0.40547099709510803, -0.3304828405380249, 0.03346328064799309, 0.06965704262256622, 0.031084809452295303, -0.13282278180122375, -0.058268412947654724, 0.09864255040884018, -0.358481764793396, 0.043496664613485336, 0.12894012033939362, -0.11640826612710953, 0.07827678322792053, -0.3631582260131836, 0.08029626309871674, 0.06172962114214897, -0.3344399034976959, -0.058240365236997604, -0.07519468665122986, -0.016331978142261505, -0.0016447700327262282, -0.14584454894065857, 0.048099640756845474, 0.05538337677717209, -0.06584081798791885, 0.06459202617406845, 0.1908932626247406, -0.26142677664756775, 0.27770760655403137, 0.09802839905023575, 0.18687985837459564, -0.12190847098827362, -0.04140744358301163, 0.20986473560333252, 0.0008334312587976456, 0.05581444874405861, -0.09415188431739807, 0.2633509635925293, -0.049733273684978485, -0.04725147411227226, -0.013318624347448349], [-0.1085980162024498, -0.12547415494918823, 0.1730448603630066, -0.242492213845253, 0.2843949496746063, 0.1464117020368576, 0.19283892214298248, -0.08183691650629044, -0.026506023481488228, -0.25334784388542175, -0.09274809062480927, 0.08726667612791061, 0.22911374270915985, -0.19571954011917114, -0.06461293250322342, -0.026746176183223724, -0.24674299359321594, 0.1045367643237114, -0.12798461318016052, -0.034540463238954544, -0.07989411056041718, -0.13953666388988495, -0.0012453892268240452, -0.038114748895168304, -0.06573580950498581, -0.12877504527568817, 0.056484516710042953, 0.29232099652290344, 0.02472880110144615, 0.17609047889709473, -0.24575884640216827, 0.027888545766472816, -0.19398915767669678, -0.2610858976840973, -0.1307036429643631, 0.21070002019405365, 0.1679406613111496, 0.042957570403814316, -0.2709457278251648, -0.034697845578193665, 0.053333528339862823, 0.031030714511871338, -0.32593974471092224, -0.15738745033740997, -0.011327455751597881, 0.09480372816324234, -0.3882242441177368, -0.028659740462899208, 0.0252876877784729, 0.15019160509109497, 0.12248107045888901, 0.10298503190279007, -0.14141084253787994, -0.33729031682014465, -0.06948256492614746, 0.1770651638507843, 0.24633029103279114, 0.12560851871967316, 0.0758974477648735, 0.06711144000291824, -0.09830883145332336, -0.02299162931740284, 0.29505258798599243, -0.16662228107452393], [0.2990089952945709, -0.09999220818281174, 0.29736873507499695, -0.34033483266830444, -0.0665108859539032, 0.09146371483802795, -0.12087759375572205, 0.17226608097553253, 0.3093074858188629, -0.2608335614204407, -0.3513947129249573, 0.11474534124135971, 0.17639821767807007, 0.07545609027147293, 0.3183107376098633, -0.06105422601103783, 0.5774691104888916, 0.1649952530860901, -0.340008944272995, -0.11982719600200653, -0.0879543200135231, 0.06661370396614075, 0.21674804389476776, 0.1028803139925003, 0.055915459990501404, 0.18808844685554504, 0.039759088307619095, 0.14170527458190918, 0.16382068395614624, 0.19274774193763733, 0.10813980549573898, 0.14346574246883392, 0.3116927742958069, -0.31197550892829895, -0.004533026833087206, -0.19228406250476837, -0.008925942704081535, 0.2995333671569824, -0.12941956520080566, -0.5400540828704834, -0.04709749296307564, 0.2889389395713806, 0.2342909425497055, 0.02391039952635765, -0.21109813451766968, -0.0635681003332138, 0.20926712453365326, -0.22925738990306854, 0.4521999657154083, 0.19167831540107727, -0.15495873987674713, -0.0859476700425148, 0.1550557017326355, -0.15640361607074738, 0.12382093816995621, 0.06766556948423386, -0.057027749717235565, 0.3773188591003418, 0.05972600728273392, 0.08271455019712448, -0.04542388767004013, 0.0513128787279129, -0.08952338993549347, -0.4237383306026459], [0.4080650806427002, 0.1218770369887352, 0.10783296823501587, -0.25372380018234253, 0.16879980266094208, -0.021384509280323982, 0.004996310453861952, 0.07106201350688934, -0.04568152874708176, 0.2623835504055023, 0.2154950648546219, -0.16740840673446655, 0.061505842953920364, 0.29857197403907776, 0.5993707180023193, 0.09212401509284973, 0.0732092410326004, -0.30632665753364563, -0.0674576386809349, -0.1984734982252121, 0.2864234149456024, -0.234223872423172, -0.12822452187538147, -0.2239210158586502, -0.5962691903114319, 0.2381773442029953, -0.16927282512187958, 0.0021384633146226406, -0.2822720408439636, -0.0774139016866684, 0.22851300239562988, 0.10446161031723022, -0.09100551903247833, -0.006841807626187801, 0.0226298738270998, 0.08983521908521652, -0.30508294701576233, -0.10411737859249115, -0.5199486017227173, -0.032683175057172775, -0.32198527455329895, 0.1166321262717247, 0.10986094176769257, -0.263370156288147, -0.20105046033859253, -0.04612663388252258, 0.0338117890059948, -0.23780594766139984, 0.02146497368812561, -0.0267083328217268, -0.2816545069217682, -0.00902192760258913, 0.4486016035079956, -0.16458866000175476, -0.3522859513759613, 0.0937763899564743, -0.04681668430566788, 0.082486093044281, -0.19030487537384033, -0.10146225988864899, 0.5534040927886963, 0.23715201020240784, 0.15004503726959229, -0.19968686997890472], [-0.20349714159965515, -0.5018829703330994, -0.14307966828346252, 0.1691228300333023, 0.09138409048318863, -0.03915838152170181, -0.003942170646041632, -0.12177891284227371, 0.036196596920490265, 0.13538943231105804, -0.2856511175632477, 0.052970729768276215, 0.16483275592327118, -0.07338005304336548, 0.12386754155158997, 0.49756529927253723, -0.018445374444127083, 0.0695275217294693, -0.13047128915786743, 0.03204098343849182, 0.08136529475450516, 0.034443583339452744, -0.1802583634853363, 0.03647995367646217, 0.2584821879863739, 0.07930834591388702, 0.17005692422389984, -0.04189819097518921, 0.13256488740444183, 0.04936804622411728, -0.16809885203838348, 0.05630708858370781, -0.17530885338783264, -0.11187848448753357, 0.033468835055828094, 0.05254586040973663, -0.2102285921573639, 0.18632011115550995, 0.10111737996339798, -0.12457956373691559, -0.2718091607093811, -0.0256157536059618, -0.07883245497941971, 0.020000595599412918, -0.06419055908918381, -0.35487157106399536, -0.06865068525075912, -0.05402633920311928, 0.11201650649309158, -0.1234254315495491, 0.29675057530403137, -0.3379334807395935, 0.23178385198116302, -0.03965436667203903, 0.15195457637310028, 0.01410704292356968, 0.20144686102867126, -0.06847657263278961, -0.194210484623909, 0.25111207365989685, -0.02006073296070099, 0.039166372269392014, 0.21827536821365356, -0.1824256330728531]], [[0.2684823274612427, -0.15195798873901367, -0.05069220811128616, 0.11459493637084961, -0.3282089829444885, -0.11952051520347595, 0.38596633076667786, 0.2471890151500702, -0.05574861541390419, -0.0751698762178421, -0.01776551641523838, 0.2321145385503769, 0.10481349378824234, -0.10156798362731934, 0.34601378440856934, -0.13889378309249878, 0.5368931293487549, -0.28494828939437866, 0.2441869080066681, -0.1814485490322113, 0.15238584578037262, -0.08938593417406082, 0.10574179142713547, -0.10567282885313034, 0.025034906342625618, 0.2074660062789917, 0.08523382991552353, 0.03734445944428444, 0.030163466930389404, -0.3595624566078186, -0.054290834814310074, 0.40733057260513306], [-0.41143321990966797, 0.2658343017101288, -0.07403430342674255, 0.2900248169898987, 0.46214815974235535, 0.020393798127770424, -0.3138655722141266, 0.2760713994503021, 0.20436982810497284, 0.048503436148166656, -0.02680913731455803, -0.06901618093252182, -0.18739640712738037, 0.4615713059902191, -0.33012932538986206, 0.35061153769493103, -0.565064549446106, -0.45645439624786377, 0.03334109112620354, 0.07791649550199509, -0.4599516689777374, 0.278893381357193, -0.3337727189064026, 0.541500449180603, 0.283568799495697, -0.44991573691368103, 0.4931914210319519, -0.29786527156829834, 0.0821744054555893, -0.01818150095641613, -0.12463010847568512, 0.32990965247154236], [-0.1232328787446022, 0.09592466801404953, -0.049269113689661026, -0.24350304901599884, -0.032329343259334564, 0.07580894231796265, -0.1334376484155655, 0.21519877016544342, 0.33044207096099854, -0.15672175586223602, -0.40712717175483704, -0.051370345056056976, -0.22353090345859528, -0.24903328716754913, -0.1623997837305069, 0.3644177317619324, -0.044892508536577225, 0.04868018254637718, 0.2848512530326843, -0.05851856619119644, -0.0012074820697307587, 0.10133592039346695, -0.19107528030872345, 0.03801776468753815, 0.1855338215827942, -0.03129589930176735, 0.6936339139938354, -0.3222546875476837, -0.08272028714418411, -0.21186481416225433, 0.1966066211462021, 0.2725526988506317], [0.2539399564266205, -0.45965829491615295, -0.43528738617897034, 0.049969062209129333, 0.24878330528736115, -0.2531924247741699, -0.5028195381164551, 0.1582515388727188, 0.09482187777757645, -0.19205410778522491, -0.22581787407398224, -0.16539421677589417, -0.00327767594717443, -0.11458224803209305, 0.13371744751930237, -0.4091441035270691, -0.1347915083169937, -0.23500603437423706, -0.07506798207759857, -0.03309280052781105, 0.16785091161727905, -0.13384760916233063, 0.0477152094244957, 0.16505682468414307, 0.45286738872528076, -0.07835925370454788, 0.06995052844285965, -0.27990710735321045, -0.4386684000492096, 0.2708771824836731, 0.0192316472530365, 0.2846815884113312], [-0.5832579135894775, 0.09192916750907898, 0.33216241002082825, 0.4224923253059387, 0.36297476291656494, -0.27839794754981995, -0.5665441155433655, 0.5569114685058594, -0.06765717267990112, 0.2529784142971039, -0.380833238363266, -0.49508219957351685, -0.031097447499632835, 0.26260867714881897, -0.09133168309926987, 0.3839762210845947, -0.5384436249732971, 0.14464806020259857, -0.11904308199882507, 0.23714663088321686, -0.29787880182266235, 0.011986424215137959, -0.12298862636089325, 0.7067752480506897, 0.3452736437320709, -0.34636446833610535, 0.5334643125534058, -0.10268181562423706, 0.03391915559768677, -0.31362172961235046, 0.15800337493419647, 0.4846804738044739], [-0.24540629982948303, 0.21109317243099213, -0.02691030129790306, 0.11432145535945892, 0.4727717638015747, -0.25011616945266724, -0.020011484622955322, 0.20846933126449585, -0.08140905201435089, 0.11797037720680237, -0.34024056792259216, -0.44710659980773926, -0.45833054184913635, 0.40300145745277405, -0.31480488181114197, 0.0838765874505043, -0.41039830446243286, -0.19845063984394073, -0.38986819982528687, 0.08492767810821533, -0.2578575015068054, -0.0213091392070055, -0.21394632756710052, 0.35596030950546265, 0.665947675704956, -0.4981299638748169, 0.43419086933135986, -0.10324794799089432, -0.138959601521492, 0.019720934331417084, -0.0616585910320282, 0.3714146912097931], [0.4870760142803192, 0.05510527268052101, 0.0857977494597435, 0.1289418488740921, -0.2357473373413086, 0.16076411306858063, 0.40361011028289795, -0.34787631034851074, -0.5175403356552124, -0.022066999226808548, -0.08146395534276962, -0.0601591058075428, 0.15238602459430695, -0.09710852056741714, 0.030665988102555275, 0.03824912756681442, 0.02599712833762169, -0.3006252944469452, -0.11278535425662994, 0.0920649990439415, 0.1482861191034317, -0.5387631058692932, 0.18847252428531647, -0.5906133651733398, 0.09423814713954926, 0.3045026957988739, -0.3757877051830292, 0.17297996580600739, -0.19880235195159912, -0.1549047976732254, 0.11381370574235916, -0.3433672785758972], [0.24879327416419983, -0.0677579715847969, 0.20970262587070465, -0.18417386710643768, -0.2474101334810257, 0.3254181444644928, 0.13592028617858887, 0.2058706432580948, 0.3693733513355255, -0.16375891864299774, 0.1697951853275299, -0.20824244618415833, 0.3132370114326477, -0.03159032389521599, 0.2647293508052826, -0.1594310849905014, -0.08152071386575699, 0.060801662504673004, -0.38995814323425293, -0.12888969480991364, 0.42559972405433655, 0.16819150745868683, 0.5706111788749695, 0.2588236927986145, -0.07241177558898926, 0.25802376866340637, -0.1771206259727478, -0.148360013961792, -0.17725880444049835, -0.10974692553281784, -0.3611241579055786, 0.06387057900428772], [-0.2996693551540375, -0.33661332726478577, 0.05583850294351578, 0.4169834554195404, 0.3433597683906555, -0.2677018940448761, -0.1163901761174202, 0.5128806233406067, 0.18144452571868896, -0.18274752795696259, -0.13145965337753296, 0.12043311446905136, -0.5695802569389343, 0.6193281412124634, -0.6084047555923462, 0.4350265860557556, -0.514980137348175, 0.03997206315398216, -0.33240872621536255, -0.08727199584245682, -0.46449506282806396, 0.4516076445579529, -0.17361848056316376, 0.6158118844032288, 0.020286140963435173, -0.11224567890167236, 0.39848923683166504, -0.578388512134552, 0.0061067151837050915, 0.008666747249662876, -0.17474983632564545, 0.47392943501472473], [-0.1995997279882431, -0.09661955386400223, -0.14222773909568787, -0.08208958804607391, 0.14386819303035736, 0.048321910202503204, 0.005772928241640329, 0.30076006054878235, 0.242404043674469, -0.10808958113193512, -0.047616470605134964, -0.25540560483932495, -0.1974453330039978, -0.20655862987041473, 0.10209923982620239, 0.279624342918396, 0.05450635030865669, 0.19240112602710724, -0.1931544989347458, 0.09690435975790024, -0.13408777117729187, 0.18125425279140472, -0.10033556818962097, 0.06754622608423233, 0.31959068775177, 0.07186267524957657, 0.043620746582746506, -0.0016477383906021714, -0.20820897817611694, -0.25215616822242737, -0.007415151689201593, 0.34843960404396057], [0.3110859990119934, -0.38604751229286194, -0.08729162812232971, -0.56675785779953, 0.31543204188346863, 0.0024575383868068457, 0.46027758717536926, -0.028475509956479073, -0.20275422930717468, -0.2575926184654236, 0.19100667536258698, -0.17406165599822998, 0.25849565863609314, -0.010265529155731201, -0.09436735510826111, -0.4038950502872467, 0.3114539384841919, -0.1153704896569252, -0.10789744555950165, 0.058283478021621704, 0.43067046999931335, -0.125372514128685, 0.16427496075630188, -0.09416299313306808, -0.396280974149704, 0.2719877064228058, -0.10476779192686081, 0.2301234006881714, -0.3402489125728607, -0.19093437492847443, -0.12153332680463791, -0.15272986888885498], [0.21911385655403137, 0.23663190007209778, -0.1054641529917717, -0.07409054040908813, 0.15261617302894592, 0.06818170845508575, 0.31819987297058105, 0.10599663853645325, -0.1941220462322235, -0.3532370626926422, -0.3133983910083771, 0.08163156360387802, 0.3481229245662689, 0.34212514758110046, 0.272189199924469, 0.21781952679157257, 0.12316102534532547, -0.2297123372554779, 0.11849545687437057, -0.027215175330638885, 0.15912571549415588, 0.09988532215356827, 0.18118874728679657, 0.198663130402565, 0.23006227612495422, 0.2900036573410034, 0.03604213148355484, 0.08568497747182846, -0.08634519577026367, -0.17501090466976166, -0.18072856962680817, 0.1942102611064911], [-0.014321574941277504, 0.001959490356966853, -0.1417965441942215, 0.21280497312545776, -0.11974697560071945, -0.23443055152893066, 0.28572210669517517, -0.08472178876399994, 0.03350231796503067, -0.07553161680698395, -0.004730734508484602, -0.1793249249458313, 0.05131777003407478, -0.09531820565462112, 0.35439568758010864, 0.014546169899404049, 0.16473089158535004, 0.1885775327682495, -0.43247175216674805, -0.2858608067035675, -0.06672513484954834, -0.049289967864751816, -0.10564076155424118, 0.15916845202445984, -0.05660958215594292, 0.2537694275379181, -0.0679561123251915, 0.24256575107574463, 0.11673478782176971, 0.028872229158878326, -0.21349681913852692, 0.2631193995475769], [0.04601189121603966, -0.19489288330078125, -0.05632716044783592, -0.3170650601387024, -0.08197562396526337, 0.19993865489959717, 0.21406465768814087, -0.3265369236469269, -0.033163830637931824, 0.14452923834323883, 0.14671917259693146, 0.3428860902786255, 0.39808985590934753, 0.15793347358703613, -0.09988392889499664, 0.08879134804010391, 0.17867833375930786, -0.07273983955383301, 0.01933501847088337, 0.06736725568771362, 0.23687699437141418, -0.13841065764427185, 0.29172587394714355, -0.17330510914325714, -0.09367511421442032, 0.09669297188520432, -0.1642167717218399, 0.242079496383667, -0.18772540986537933, 0.4024113416671753, -0.31805330514907837, -0.18953685462474823], [0.26657235622406006, 0.048218004405498505, -0.008140143007040024, 0.1179252415895462, -0.008908511139452457, 0.08776085823774338, 0.43778687715530396, 0.18441987037658691, 0.10327387601137161, -0.25557535886764526, -0.03933623805642128, -0.06796790659427643, 0.01573171094059944, -0.012609689496457577, -0.036245618015527725, 0.07764459401369095, 0.04738328605890274, 0.28456488251686096, -0.18199311196804047, -0.1094726175069809, 0.3005712032318115, 0.0752858966588974, 0.3007565140724182, -0.19993211328983307, 0.34624820947647095, 0.18223437666893005, -0.11855725198984146, -0.014510164968669415, 0.13775935769081116, -0.1006690189242363, -0.04234745353460312, 0.027994029223918915], [0.03976986184716225, 0.251798152923584, -0.09237387776374817, 0.21329912543296814, -0.11474153399467468, -0.028332022950053215, 0.23524130880832672, 0.15862007439136505, -0.22215205430984497, 0.10580489784479141, 0.23155318200588226, 0.07720471918582916, 0.10883639752864838, -0.16796128451824188, 0.14981693029403687, -0.22075706720352173, 0.3968737721443176, -0.40956372022628784, -0.033721502870321274, -0.0720418319106102, 0.1563422977924347, 0.31971731781959534, 0.33873459696769714, 0.25615203380584717, -0.11841259151697159, 0.43147388100624084, 0.019530732184648514, 0.5586757063865662, -0.19224676489830017, -0.26473182439804077, 0.0014284588396549225, 0.10135946422815323], [-0.09890160709619522, -0.162034809589386, 0.005530743394047022, -0.047240450978279114, 0.33572468161582947, -0.24387226998806, -0.1878327578306198, 0.16443376243114471, 0.4157876968383789, -0.5133811831474304, -0.056612033396959305, -0.06367728859186172, -0.32517197728157043, 0.2635585367679596, -0.51175457239151, 0.3843528926372528, -0.1916612833738327, 0.1995925009250641, -0.1307593137025833, -0.06415610015392303, 0.03120395727455616, 0.4698742926120758, -0.4459136426448822, 0.20671798288822174, 0.4185985028743744, -0.06991270929574966, 0.16606405377388, -0.9848129749298096, 0.08866959810256958, 0.08625782281160355, -0.3979264497756958, -0.17425481975078583], [0.2093629240989685, 0.005934856832027435, -0.06322618573904037, 0.43184441328048706, 0.10856767743825912, 0.33359041810035706, -0.20213738083839417, 0.08579639345407486, -0.30446305871009827, -0.01891792193055153, -0.32672610878944397, 0.0927763283252716, -0.011023511178791523, 0.2807808816432953, -0.0044828150421381, 0.3726426362991333, -0.0004189358151052147, -0.18379467725753784, 0.0011141932336613536, -0.09637776762247086, 0.31005239486694336, -0.005152205470949411, -0.028115153312683105, -0.12819567322731018, 0.17227314412593842, -0.01860482431948185, -0.1716977059841156, 0.2124810516834259, -0.17759384214878082, -0.06960220634937286, 0.306071013212204, -0.2442394644021988], [0.09772069752216339, -0.18197910487651825, 0.14025303721427917, -0.19752702116966248, 0.3163793385028839, 0.1397715061903, 0.08690883964300156, 0.154813751578331, -0.0338623933494091, -0.09589409083127975, 0.3775796890258789, -0.14472618699073792, -0.2930399179458618, 0.26598405838012695, -0.2821056544780731, 0.001712291152216494, -0.320332407951355, -0.09029746055603027, -0.01719595305621624, 0.024215316399931908, 0.13238105177879333, 0.16312910616397858, -0.1116282120347023, 0.1402405947446823, 0.01591479778289795, 0.08279134333133698, 0.2170305848121643, -0.22903531789779663, -0.17412321269512177, -0.5786875486373901, 0.11535581946372986, 0.22483602166175842], [0.22911514341831207, -0.06078868359327316, 0.21577773988246918, -0.051778338849544525, 0.2586013078689575, -0.002529022516682744, -0.04096669703722, 0.072808638215065, 0.001675163977779448, 0.024842644110322, -0.14339935779571533, -0.03007487766444683, 0.4915454685688019, 0.2602950930595398, 0.18632929027080536, -0.08825597912073135, 0.3530679941177368, 0.08214014023542404, -0.030432717874646187, -0.030268017202615738, 0.09450571984052658, -0.5381428003311157, 0.13878194987773895, -0.1080729067325592, 0.2207334339618683, 0.14802458882331848, -0.3377666771411896, -0.06029701977968216, -0.19081653654575348, -0.06612523645162582, 0.16115425527095795, 0.15778745710849762], [-0.4305639863014221, -0.0170726515352726, -0.26318058371543884, 0.4637420177459717, 0.10333901643753052, -0.004678074270486832, -0.2691729962825775, 0.47178322076797485, 0.474116712808609, -0.03461074084043503, -0.15585504472255707, -0.2644839584827423, -0.3870115280151367, -0.0559784360229969, -0.09420938044786453, 0.10563763231039047, -0.27027788758277893, -0.026059424504637718, -0.14649313688278198, 0.05897391587495804, -0.5380478501319885, 0.4012635052204132, -0.3831116855144501, 0.43367666006088257, 0.13379579782485962, -0.17662611603736877, 0.39447247982025146, -0.12555907666683197, -0.18525287508964539, 0.09566237032413483, -0.17713023722171783, 0.26668787002563477], [0.48495790362358093, 0.10367385298013687, -0.025746190920472145, -0.1727162003517151, -0.0037840991280972958, 0.122983418405056, -0.10033134371042252, -0.1741558015346527, -0.3865506649017334, 0.23556137084960938, -0.22788633406162262, -0.5729121565818787, 0.3413911759853363, 0.08130617439746857, 0.036897383630275726, -0.5589185357093811, 0.834766685962677, -0.04745373874902725, 0.0835077315568924, -0.19349436461925507, -0.18845009803771973, -0.05312354117631912, 0.21347056329250336, -0.2228994518518448, -0.3477417230606079, 0.3208725154399872, -0.1596100628376007, 0.029452532529830933, 0.08681290596723557, -0.15076102316379547, -0.30706533789634705, -0.034348271787166595], [-0.04198542237281799, -0.03914477303624153, -0.2336450070142746, 0.10234926640987396, -0.0015335897915065289, -0.34558308124542236, -0.2235715389251709, 0.22380182147026062, 0.45390620827674866, -0.055777374655008316, -0.08204199373722076, -0.35014188289642334, -0.03057679906487465, -0.4441542327404022, -0.07224463671445847, -0.05609579756855965, 0.1424093097448349, -0.15151937305927277, 0.06758197396993637, 0.03426263481378555, -0.17482462525367737, 0.11903563886880875, -0.2721824049949646, 0.16945785284042358, 0.26936203241348267, -0.11626016348600388, 0.07349785417318344, 0.16221079230308533, 0.13816507160663605, -0.04080144688487053, 0.17585191130638123, 0.0339369997382164], [0.022286025807261467, 0.03765476495027542, -0.33249861001968384, 0.18321329355239868, -0.13768911361694336, -0.13828764855861664, 0.2351282835006714, 0.03896675631403923, -0.09499181807041168, -0.0551781952381134, 0.17003870010375977, -0.05256304889917374, 0.17146357893943787, 0.1771031767129898, -0.38512781262397766, -0.13719868659973145, -0.07553308457136154, 0.08584391325712204, -0.4680643677711487, 0.3436181843280792, 0.0008503269637003541, 0.2063700258731842, 0.1499204933643341, 0.5277104377746582, 0.19362303614616394, 0.1391170769929886, -0.07053132355213165, -0.03306733816862106, -0.08519459515810013, -0.14168225228786469, -0.17144492268562317, -0.10961804538965225], [0.13221658766269684, -0.326193243265152, 0.006241926923394203, 0.14977195858955383, -0.08068662881851196, -0.08899768441915512, 0.6563289165496826, 0.2594244182109833, -0.2873370349407196, -0.025618115440011024, 0.0013675459194928408, -0.2091023325920105, 0.007200050633400679, 0.15354037284851074, 0.11600878089666367, 0.010612037032842636, 0.49397873878479004, 0.21867211163043976, -0.1843179166316986, -0.012337718158960342, 0.2642727196216583, -0.03015555441379547, 0.02817055769264698, 0.34326398372650146, -0.007471942808479071, 0.4037435054779053, -0.41400080919265747, -0.17683245241641998, -0.10173365473747253, -0.5619297623634338, -0.13140463829040527, 0.04146396368741989], [-0.20090441405773163, -0.21742801368236542, 0.0865517258644104, 0.17892707884311676, 0.03425457701086998, -0.055361758917570114, -0.06974617391824722, 0.10633053630590439, 0.24288219213485718, 0.12977200746536255, -0.3862539231777191, -0.2363717406988144, 0.017251748591661453, -0.2599136233329773, -0.21732930839061737, 0.37558966875076294, 0.20740526914596558, 0.010284756310284138, -0.27150267362594604, 0.05633128061890602, 0.30445629358291626, -0.014112988486886024, 0.3098526895046234, 0.32171785831451416, 0.5897082686424255, 0.02831302210688591, 0.33587896823883057, 0.19496537744998932, 0.07079779356718063, -0.0877804309129715, 0.11181033402681351, 0.1598055064678192], [-0.5240040421485901, -0.043381791561841965, 0.19159461557865143, -0.16507722437381744, 0.3635319173336029, 0.12124662846326828, -0.32476291060447693, 0.4695831537246704, 0.21190837025642395, 0.2096598744392395, 0.008640293963253498, -0.25209513306617737, -0.15366417169570923, -0.09259818494319916, -0.34448960423469543, 0.1923164576292038, 0.0012704097898676991, 0.20417572557926178, -0.14480523765087128, -0.17593301832675934, -0.32064303755760193, 0.466154545545578, -0.21462441980838776, 0.4877531826496124, 0.48249533772468567, -0.1826181858778, 0.4174029529094696, -0.42776158452033997, -0.054350871592760086, 0.32820093631744385, 0.15849830210208893, 0.3560968339443207], [-0.009580203332006931, -0.20967108011245728, -0.020487699657678604, 0.018628159537911415, -0.1373968869447708, 0.008122659288346767, -0.11758105456829071, 0.17826956510543823, -0.1457919031381607, 0.21694694459438324, 0.2823588252067566, -0.036958880722522736, -0.14326779544353485, -0.2338007241487503, -0.21482481062412262, -0.2759866416454315, 0.26836496591567993, 0.02273711934685707, 0.05597361549735069, -0.4200069010257721, -0.14467141032218933, 0.29085323214530945, 0.10786747187376022, 0.010336227715015411, -0.03881477937102318, 0.3358520269393921, -0.14386257529258728, -0.04315479099750519, 0.0398704968392849, 0.54963219165802, -0.3211907148361206, -0.0023600386921316385], [0.11284863203763962, 0.05363766476511955, -0.146891787648201, -0.015668494626879692, 0.11223357915878296, 0.5946987271308899, 0.3000037670135498, -0.18347099423408508, -0.016555123031139374, -0.10885047912597656, -0.3562123477458954, -0.10180769860744476, 0.28268465399742126, -0.18910011649131775, 0.3187841475009918, 0.09495223313570023, 0.09877903014421463, -0.033274371176958084, 0.27339404821395874, 0.06950610131025314, 0.09484931826591492, 0.11273068189620972, 0.13950997591018677, -0.04986356571316719, -0.43461182713508606, 0.4789029657840729, -0.12176262587308884, 0.2350427359342575, -0.015267541632056236, -0.0842999666929245, -0.04438942298293114, -0.2538067698478699], [0.28304362297058105, -0.23218224942684174, -0.1840515434741974, -0.09461257606744766, 0.4006814956665039, -0.03209555521607399, -0.30822232365608215, 0.31983649730682373, 0.3538094162940979, 0.06908383965492249, -0.006756035145372152, 0.3517877161502838, 0.1780625730752945, -0.09742998331785202, 0.1458808332681656, 0.2916165888309479, 0.019596293568611145, -0.2980363965034485, -0.06381593644618988, -0.1090134009718895, 0.09917943924665451, 0.3327445387840271, -0.5240989923477173, 0.1621820479631424, 0.38694509863853455, -0.1984441727399826, 0.25109121203422546, -0.18535995483398438, 0.06537389010190964, -0.10795062780380249, -0.15471908450126648, -0.12924203276634216], [-0.15619906783103943, -0.025132333859801292, -0.025801466777920723, 0.1859482377767563, -0.0017016609199345112, 0.08673765510320663, -0.3407616913318634, 0.10560176521539688, 0.22603246569633484, -0.008187412284314632, -0.3269319534301758, 0.3107580840587616, -0.23655591905117035, 0.032314494252204895, -0.52293860912323, 0.028379684314131737, -0.1781482994556427, -0.27578431367874146, 0.008558093570172787, 0.07132592052221298, -0.29083022475242615, 0.409405380487442, -0.1681707799434662, 0.5375180244445801, 0.18648572266101837, -0.2697671055793762, 0.3109998106956482, -0.3080543279647827, 0.16990245878696442, 0.42263299226760864, -0.07362004369497299, 0.3802909255027771], [-0.193794846534729, -0.15837427973747253, -0.3378235995769501, 0.11178042739629745, -0.11697373539209366, 0.07214773446321487, -0.21245890855789185, 0.2179984599351883, 0.28037264943122864, -0.2519676685333252, -0.30043140053749084, 0.010379426181316376, -0.12598256766796112, -0.04423181712627411, -0.2966318428516388, 0.28507113456726074, -0.2235611528158188, 0.00790500734001398, -0.21965104341506958, 0.006879324093461037, -0.38347887992858887, 0.3168153166770935, -0.31764349341392517, 0.7559599280357361, 0.5018722414970398, -0.5468982458114624, 0.3614242970943451, -0.27633053064346313, 0.28508809208869934, -0.24969452619552612, -0.2235678732395172, 0.5024333596229553], [-0.5299511551856995, -0.09570593386888504, -0.038925837725400925, 0.27526184916496277, 0.1217823401093483, -0.32273969054222107, -0.3138011395931244, 0.348127543926239, 0.30811789631843567, -0.06807781010866165, -0.0018931913655251265, 0.15903274714946747, -0.2483527809381485, -0.03895767033100128, -0.571661114692688, 0.2453794628381729, -0.2503255009651184, 0.1396860033273697, -0.13560423254966736, -0.14574061334133148, -0.36327672004699707, 0.4077295660972595, -0.06935664266347885, 0.2755431830883026, 0.46956542134284973, -0.280967116355896, 0.30024656653404236, -0.2369447946548462, 0.11769324541091919, 0.11212819069623947, 0.5493224263191223, 0.180326908826828], [0.15412408113479614, -0.12198949605226517, -0.14322538673877716, 0.0035629181656986475, 0.09019004553556442, 0.5940213799476624, 0.03555101528763771, -0.20042160153388977, -0.0873459205031395, -0.4282662868499756, -0.02747380919754505, -0.049172405153512955, 0.22318558394908905, 0.35618075728416443, 0.0211785901337862, -0.12982963025569916, -0.02233869768679142, -0.2106814682483673, 0.023986592888832092, -0.2498931586742401, 0.0074219792149960995, -0.1197037622332573, 0.1434684544801712, 0.35347625613212585, -0.42933186888694763, -0.2710564434528351, -0.2262917011976242, 0.07403601706027985, 0.03993794694542885, 0.025354962795972824, 0.015727605670690536, -0.03624949976801872], [0.3334445655345917, -0.3484239876270294, -0.08404329419136047, 0.006095500197261572, -0.10013580322265625, 0.4714313745498657, 0.042081400752067566, -0.09521029889583588, 0.10791493207216263, -0.1428883820772171, -0.22928018867969513, -0.08278840780258179, 0.32534027099609375, -0.12281686812639236, -0.16218934953212738, 0.15656538307666779, 0.028433192521333694, -0.11359099298715591, 0.028339799493551254, 0.07796397060155869, 0.5535569787025452, 0.058522772043943405, 0.31787773966789246, -0.1827002912759781, -0.18239349126815796, 0.11383254826068878, -0.035935163497924805, -0.26915329694747925, -0.03470676764845848, 0.2448474019765854, 0.12326733022928238, 0.0008762452634982765], [0.18825918436050415, -0.10001543164253235, -0.09183334559202194, -0.3262360095977783, 0.2711963653564453, 0.0724424496293068, 0.1342719942331314, -0.21396836638450623, 0.5511434674263, -0.26443588733673096, 0.0156848281621933, 0.05593164637684822, 0.21899385750293732, 0.08665455132722855, 0.48842424154281616, -0.04809783771634102, -0.026796089485287666, -0.05959682539105415, 0.05208806321024895, 0.34702402353286743, -0.09801279753446579, 0.24503077566623688, 0.18532182276248932, 0.15180960297584534, -0.04119959846138954, -0.0026780052576214075, -0.04567613825201988, 0.2512485384941101, 0.17292124032974243, -0.20683611929416656, -0.1128944382071495, -0.19275306165218353], [0.23613472282886505, 0.03526255488395691, -0.1852891743183136, 0.06491393595933914, -0.14274974167346954, -0.22558167576789856, -0.07852985709905624, -0.20973153412342072, -0.1565684676170349, -0.17652709782123566, -0.24820734560489655, 0.34922507405281067, 0.2640087604522705, -0.012869754806160927, 0.1774234175682068, -0.03377176821231842, 0.30411428213119507, -0.1363695114850998, 0.1629326492547989, -0.15035530924797058, -0.17827275395393372, 0.15295754373073578, 0.2965303659439087, 0.45784294605255127, -0.1755353808403015, 0.2091427594423294, -0.172453835606575, 0.2793214023113251, -0.2582296133041382, -0.5093023180961609, -0.035958074033260345, -0.1125900149345398], [-0.07559847086668015, 0.0910034030675888, 0.16419617831707, 0.10419128835201263, 0.36416682600975037, 0.04825735092163086, -0.23213408887386322, 0.263121098279953, -0.10364428162574768, 0.1569746881723404, 0.16784098744392395, 0.10161512345075607, -0.25207263231277466, -0.06728780269622803, 0.17528127133846283, -0.062363214790821075, 0.03136715292930603, 0.09663170576095581, 0.09303749352693558, 0.14860035479068756, -0.05903767794370651, -0.1939697563648224, 0.11852961778640747, 0.09175549447536469, -0.015241996385157108, 0.15635663270950317, 0.00030035042436793447, -0.14432008564472198, -0.1600569188594818, -0.41398870944976807, 0.01570933684706688, 0.25714245438575745], [0.3025195300579071, -0.006950245704501867, -0.13003507256507874, -0.11178004741668701, -0.34713423252105713, 0.0893176943063736, 0.367201030254364, 0.04276244714856148, 0.05800756439566612, -0.3015219569206238, 0.29406747221946716, 0.02259841188788414, 0.41525202989578247, -0.07996760308742523, 0.351142019033432, -0.06839742511510849, 0.5308718085289001, -0.3078990578651428, -0.12019436061382294, -0.12647968530654907, 0.3921608626842499, 0.31273508071899414, 0.2640068233013153, -0.14125728607177734, -0.10619820654392242, 0.30579161643981934, -0.3390045464038849, 0.3534126877784729, -0.1902148574590683, 0.002403606427833438, -0.3365520238876343, -0.1108928769826889], [0.06682305783033371, 0.3073209524154663, -0.0320342518389225, -0.47973164916038513, -0.28244340419769287, 0.11845347285270691, 0.24925027787685394, -0.07608550786972046, 0.014400085434317589, 0.18637605011463165, -0.2431076616048813, 0.173503577709198, -0.1749892681837082, -0.23056040704250336, -0.281589150428772, -0.041756317019462585, 0.11057481169700623, 0.017813313752412796, -0.009908418171107769, -0.17036844789981842, 0.11413607001304626, -0.43489986658096313, 0.37380966544151306, -0.20189985632896423, -0.13135947287082672, 0.39554017782211304, -0.26888492703437805, -0.2634294629096985, -0.19481921195983887, -0.13186539709568024, 0.1208285391330719, -0.04246525838971138], [0.3402455151081085, -0.4253503680229187, 0.1290428638458252, 0.012914227321743965, -0.021533088758587837, -0.19414415955543518, -0.2441682517528534, 0.43706294894218445, 0.2912697196006775, 0.07197759300470352, 0.02141270413994789, -0.28276190161705017, -0.32578718662261963, -0.40974369645118713, -0.20902091264724731, 0.12782782316207886, -0.09767510741949081, 0.0383165217936039, -0.2807821035385132, 0.23440337181091309, -0.09299395233392715, 0.1632775515317917, -0.4086008369922638, 0.22243750095367432, -0.0228277575224638, -0.21439941227436066, 0.2580191195011139, -0.027230046689510345, -0.156132772564888, 0.05206683650612831, -0.31426331400871277, 0.42751452326774597], [-0.05690034478902817, 0.16004414856433868, -0.10020629316568375, 0.06059049442410469, -0.08800426870584488, 0.11860032379627228, -0.17208707332611084, 0.19183865189552307, -0.12645778059959412, -0.37565797567367554, -0.3266521692276001, -0.27592965960502625, -0.06887983530759811, -0.23036827147006989, 0.12757067382335663, -0.11019238084554672, -0.0180969275534153, 0.10056255012750626, 0.0973905473947525, 0.046696729958057404, -0.16527239978313446, -0.10354769229888916, -0.17485330998897552, 0.0388188399374485, 0.0904124304652214, -0.11559662967920303, 0.1169358491897583, -0.10471057146787643, -0.01842687651515007, 0.46123483777046204, 0.10888942331075668, 0.10999622941017151], [-0.02864461950957775, -0.12654879689216614, -0.17804697155952454, 0.05639518424868584, 0.19049571454524994, 0.04586206376552582, -0.1732417643070221, 0.3969913721084595, 0.11017238348722458, -0.317891389131546, -0.22703959047794342, -0.007124091498553753, 0.3014626204967499, -0.24399472773075104, 0.033579159528017044, 0.4087022840976715, -0.08195731043815613, -0.05997661128640175, -0.21571120619773865, -0.07092409580945969, 0.07380344718694687, 0.23744259774684906, 0.22863495349884033, -0.09547808766365051, -0.09603049606084824, -0.009519665502011776, 0.19163882732391357, -0.1437859982252121, -0.06727248430252075, 0.11762656271457672, 0.4066667854785919, 0.16035786271095276], [-0.34800800681114197, -0.11990492045879364, -0.05282915383577347, 0.6471010446548462, 0.14295756816864014, -0.19449760019779205, -0.3052161633968353, 0.5791142582893372, 0.33901703357696533, 0.0748225674033165, -0.15711693465709686, 0.03698036074638367, -0.7202354669570923, 0.23084813356399536, -0.3243994116783142, 0.31209561228752136, -0.4540523588657379, -0.08424707502126694, -0.10709301382303238, 0.2529597878456116, -0.34955987334251404, 0.7190767526626587, -0.2686181366443634, 0.14614960551261902, 0.3255477547645569, -0.4857652485370636, -0.04089576005935669, 0.0789695680141449, 0.11221180856227875, 0.22527487576007843, 0.08919088542461395, 0.12584634125232697], [0.05334757640957832, 0.1300646960735321, -0.1872173547744751, -0.29344600439071655, -0.02787823975086212, 0.03392762690782547, 0.1274457722902298, 0.12405375391244888, -0.09898333251476288, 0.01633509434759617, 0.20217324793338776, -0.3023875653743744, 0.24532338976860046, 0.26776647567749023, -0.1371099203824997, -0.38911834359169006, 0.06725737452507019, -0.13239477574825287, 0.12161064893007278, -0.19567261636257172, -0.09022626280784607, -0.1696649193763733, 0.273019403219223, -0.06173185259103775, -0.18185248970985413, 0.11966988444328308, -0.006344680208712816, -0.10524719208478928, 0.2314382791519165, -0.18903498351573944, 0.09043332934379578, 0.36158692836761475], [-0.3650917410850525, -0.10036978125572205, -0.22403590381145477, 0.3730008006095886, 0.4137405455112457, 0.11622180789709091, 0.04592733457684517, 0.18601636588573456, -0.27892163395881653, -0.3100110590457916, 0.18605078756809235, -0.0011217219289392233, -0.30280980467796326, 0.3082594573497772, -0.4037046730518341, 0.023596012964844704, -0.21513749659061432, 0.08751773089170456, -0.017976941540837288, -0.22508472204208374, -0.16574278473854065, 0.4230863153934479, -0.16414092481136322, 0.38461950421333313, 0.2570241093635559, -0.21542690694332123, -0.16740621626377106, -0.020521383732557297, 0.00643584318459034, 0.2523154020309448, 0.2451191395521164, 0.24979053437709808], [0.17292925715446472, -0.20950980484485626, -0.027472451329231262, -0.03308071941137314, -0.23760493099689484, -0.021230783313512802, -0.05774352326989174, -0.29940104484558105, -0.17771099507808685, -0.10885646194219589, -0.17850004136562347, -0.03323947265744209, 0.3822329044342041, -0.13691440224647522, 0.3290432095527649, 0.03230290487408638, 0.3986768424510956, -0.1244896948337555, -0.1539771556854248, -0.5887641310691833, 0.382208913564682, 0.4711270332336426, 0.05248444899916649, -0.0016623163828626275, -0.10055271536111832, 0.21607887744903564, 0.14520712196826935, -0.2953518033027649, 0.06606980413198471, -0.12137512862682343, 0.14366738498210907, 0.07023827731609344], [-0.07065365463495255, -0.056767769157886505, -0.06671962887048721, 0.2805054485797882, 0.23469285666942596, 0.038947418332099915, -0.26091960072517395, 0.04540993273258209, 0.3200259506702423, 0.03345010429620743, 0.057491544634103775, 0.2812882363796234, 0.1270545870065689, 0.14356352388858795, -0.15824057161808014, -0.33725038170814514, -0.11191650480031967, -0.08131618052721024, 0.06296221166849136, 0.06897369772195816, -0.09643933176994324, -0.17621469497680664, -0.23161156475543976, 0.25046777725219727, 0.47078171372413635, -0.1606799066066742, 0.18927277624607086, 0.19730180501937866, -0.14433684945106506, 0.11237584054470062, -0.0663241595029831, 0.35664814710617065], [0.16235964000225067, 0.009928377345204353, -0.1634313017129898, 0.18827897310256958, 0.4317193627357483, -0.04748152568936348, 0.06190504506230354, 0.10095464438199997, 0.2975086271762848, -0.13931597769260406, -0.6108976602554321, 0.1932782530784607, 0.15581952035427094, -0.3467593491077423, -0.15181168913841248, 0.42520374059677124, 0.45926061272621155, 0.16943582892417908, -0.07759471982717514, 0.07182951271533966, 0.09310272336006165, 0.1952853798866272, -0.08523571491241455, -0.09783901274204254, 0.2734326422214508, 0.05882808193564415, 0.34972330927848816, -0.05114676058292389, -0.01402839832007885, 0.07534290105104446, 0.10601978003978729, -0.17518973350524902], [0.12108409404754639, -0.26104986667633057, 0.09807456284761429, 0.05953916534781456, -0.3353191316127777, 0.44605085253715515, 0.6364008784294128, -0.1115700751543045, -0.03384021669626236, 0.46299678087234497, -0.19014883041381836, 0.022580303251743317, 0.2568378448486328, 0.10472851991653442, 0.19348320364952087, -0.08548227697610855, 0.03827754408121109, -0.12136396765708923, -0.1738877296447754, -0.03974151983857155, 0.1258503645658493, -0.17245347797870636, 0.4693417251110077, -0.2085040658712387, -0.21184390783309937, 0.18553957343101501, -0.037785954773426056, -0.18462784588336945, 0.04153468832373619, -0.242041677236557, 0.37678632140159607, 0.01529133040457964], [0.018825899809598923, -0.15115652978420258, -0.033767394721508026, 0.0976170152425766, -0.07579974830150604, 0.06202470883727074, 0.09273198992013931, -0.14667025208473206, -0.1570652574300766, -0.4309803545475006, 0.28830868005752563, -0.02776123210787773, -0.025028588250279427, 0.37871459126472473, 0.11211845278739929, -0.17447233200073242, 0.2364511489868164, 0.058024849742650986, 0.039492104202508926, -0.2128031700849533, 0.1316739022731781, 0.030499741435050964, 0.15999892354011536, -0.4106977581977844, -0.1401304453611374, 0.37139976024627686, -0.2617291808128357, -0.10172661393880844, -0.0772404745221138, -0.1588253527879715, -0.3680027723312378, -0.1304342895746231], [-0.18114253878593445, -0.03685072064399719, -0.04964360594749451, 0.29573854804039, 0.4105429947376251, -0.2125474214553833, -0.27893251180648804, 0.2521151602268219, 0.24535433948040009, 0.327088862657547, -0.2529870867729187, 0.030414603650569916, -0.13750232756137848, -0.152617409825325, -0.1936119645833969, -0.0523826964199543, -0.4561276137828827, 0.0398264043033123, -0.08540383726358414, 0.17034971714019775, -0.21720176935195923, 0.03603921830654144, -0.2173011600971222, 0.04009079560637474, 0.5290752053260803, -0.47169816493988037, 0.1889253407716751, -0.2269393652677536, 0.10314008593559265, -0.09763694554567337, -0.051096513867378235, 0.4091554582118988], [0.41202518343925476, 0.01894240826368332, -0.19129565358161926, -0.13821980357170105, -0.08475862443447113, 0.013035998679697514, 0.4694187343120575, 0.04141515865921974, -0.06150747835636139, -0.3356623649597168, 0.30471935868263245, -0.061688318848609924, 0.39884915947914124, -0.30127570033073425, 0.3708106279373169, -0.35169774293899536, 0.559699535369873, -0.06663487106561661, -0.04828879237174988, 0.01836097054183483, 0.08018362522125244, 0.0329967699944973, 0.4213968813419342, 0.3720192611217499, 0.025551659986376762, 0.510170042514801, -0.29475459456443787, 0.554670512676239, -0.3294820785522461, -0.19503460824489594, -0.22930608689785004, -0.2915214002132416], [-0.2723027467727661, -0.02607717365026474, -0.06507799029350281, 0.29017722606658936, 0.5609893798828125, -0.31105804443359375, -0.1846514493227005, 0.23759740591049194, 0.14650891721248627, 0.0032169241458177567, -0.266128808259964, 0.32852205634117126, -0.12825548648834229, -0.0064892638474702835, -0.7186593413352966, 0.0015696634072810411, 0.13302691280841827, -0.07424381375312805, 0.17351198196411133, 0.31389081478118896, -0.2794857919216156, 0.25886327028274536, -0.699682354927063, 0.5049501061439514, 0.25384852290153503, -0.2966586649417877, 0.0023001795634627342, -0.29095903038978577, 0.0059649767354130745, 0.07857930660247803, -0.30249956250190735, 0.5834118723869324], [-0.20244170725345612, -0.32540076971054077, -0.040241457521915436, 0.14754778146743774, 0.2700767517089844, 0.1670171320438385, -0.08494242280721664, 0.20481182634830475, -0.18945467472076416, 0.13621453940868378, -0.031626515090465546, -0.08213376253843307, -0.5978564023971558, 0.4763498902320862, -0.6012520790100098, 0.11548127979040146, -0.19149379432201385, -0.22759000957012177, -0.29809048771858215, -0.3745841979980469, 0.01217661052942276, 0.1294037103652954, 0.34662145376205444, 0.15909399092197418, 0.08334264159202576, -0.4045798182487488, 0.27300572395324707, -0.33830520510673523, 0.06988292187452316, -0.45030948519706726, -0.25765156745910645, -0.05857239291071892], [-0.3320740759372711, -0.11017346382141113, -0.06653713434934616, -0.07832469046115875, 0.2874608635902405, 0.21151211857795715, -0.06500386446714401, -0.4180675148963928, -0.09188005328178406, -0.13529647886753082, -0.2385948896408081, -0.17777223885059357, 0.01404180470854044, -0.09940629452466965, -0.15940698981285095, 0.022865314036607742, 0.19014087319374084, -0.17428691685199738, 0.1510227769613266, -0.1486600786447525, -0.24453963339328766, 0.13435310125350952, -0.1773931384086609, 0.0017145718447864056, -0.44096341729164124, 0.3212868571281433, 0.11798803508281708, -0.2091386318206787, -0.2663149833679199, 0.21498911082744598, -0.02174421027302742, -0.12118236720561981], [-0.23850475251674652, -0.060454871505498886, -0.03768988326191902, 0.1353815793991089, -0.18368752300739288, -0.18040543794631958, 0.21424603462219238, 0.0717511847615242, -0.2676251530647278, 0.25487229228019714, -0.11453472077846527, 0.17862747609615326, 0.1531132012605667, -0.4453156590461731, 0.08552176505327225, 0.25779688358306885, 0.028744636103510857, -0.09165053069591522, -0.06481525301933289, -0.5184088945388794, 0.44822514057159424, -0.14388398826122284, 0.27572017908096313, -0.07586032152175903, 0.2513920068740845, 0.20868299901485443, -0.016036465764045715, 0.05103667825460434, 0.1074911504983902, -0.5729938745498657, 0.24283857643604279, -0.20032262802124023], [0.2672691345214844, -0.00075656728586182, 0.09114842116832733, 0.1656598150730133, -0.3803902268409729, -0.19505427777767181, 0.14463289082050323, 0.2379431426525116, 0.34887272119522095, 0.024240968748927116, -0.29838186502456665, -0.1636900156736374, 0.006429334636777639, -0.5944344997406006, 0.2784298062324524, 0.11981552839279175, 0.32774925231933594, -0.23849605023860931, 0.1716068536043167, 0.34691259264945984, -0.18098826706409454, 0.3341097831726074, -0.011270716786384583, -0.16220736503601074, 0.18917228281497955, 0.1975880265235901, 0.02124165929853916, 0.29633286595344543, -0.3001161813735962, -0.48997846245765686, 0.14441022276878357, 0.1126643642783165], [-0.16140106320381165, 0.0917087197303772, 0.08883509784936905, 0.24842126667499542, -0.1380912959575653, 0.10538364946842194, -0.10862630605697632, 0.5049095749855042, -0.03293311595916748, 0.3636336922645569, -0.12874755263328552, -0.2307344526052475, 0.139274463057518, -0.14621737599372864, 0.07619445770978928, 0.23194555938243866, 0.00827485229820013, -0.10963459312915802, 0.14761920273303986, -0.03249913454055786, 0.12355425208806992, -0.1111564189195633, 0.08616935461759567, 0.06363843381404877, 0.43301886320114136, 0.07684497535228729, 0.03125109151005745, 0.012270781211555004, -0.20939074456691742, 0.3236146867275238, 0.46052059531211853, 0.22772523760795593], [0.3828964829444885, -0.12506303191184998, -0.13029883801937103, -0.053012508898973465, 0.053209513425827026, -0.09193923324346542, 0.20137743651866913, 0.04939986392855644, -0.15551522374153137, 0.0324656218290329, 0.09189936518669128, 0.002509245416149497, 0.2913266718387604, -0.25559869408607483, 0.20709127187728882, -0.2678481340408325, -0.023255109786987305, -0.10496719926595688, -0.20202812552452087, -0.11268583685159683, 0.09149233251810074, 0.2562710642814636, 0.05234966054558754, -0.20875929296016693, 0.18442687392234802, -0.054411642253398895, -0.1644861102104187, 0.23337559401988983, 0.019411899149417877, 0.32922977209091187, 0.04203573241829872, -0.033672694116830826], [0.7726095914840698, -0.01368574146181345, -0.049959469586610794, 0.1679285317659378, -0.0347471721470356, 0.1992655098438263, 0.846042811870575, -0.11763034760951996, -0.018663439899683, -0.016317548230290413, 0.14524008333683014, -0.292312353849411, 0.006241403985768557, -0.2157309204339981, 0.04075836017727852, -0.10061594843864441, 0.5928810834884644, -0.18374896049499512, -0.2767862379550934, -0.05240049958229065, 0.4996468722820282, -0.1991875320672989, 0.5669429898262024, 0.06329507380723953, 0.21296676993370056, 0.6919384002685547, 0.1953769028186798, 0.19873785972595215, 0.0172406155616045, -0.16615208983421326, 0.0643966794013977, 0.30114641785621643], [-0.33113905787467957, -0.17437005043029785, 0.2291145920753479, 0.36655393242836, 0.07778678089380264, 0.07145112752914429, -0.03669753670692444, 0.4748222529888153, 0.06758847087621689, 0.14795155823230743, 0.2633500397205353, 0.0829397439956665, -0.1262187659740448, 0.06459687650203705, -0.20207977294921875, 0.5848153233528137, 0.01112960372120142, -0.060002803802490234, -0.17525961995124817, 0.2691054344177246, 0.06891462206840515, 0.12477277219295502, 0.01588062196969986, -0.023575857281684875, 0.20135091245174408, -0.044803719967603683, 0.5352330207824707, -0.24529431760311127, -0.2394111305475235, -0.0887494906783104, -0.19225288927555084, 0.42853599786758423], [0.33396077156066895, 0.055354371666908264, 0.21564623713493347, 0.036495815962553024, -0.047302503138780594, 0.004209212493151426, -0.004058424849063158, -0.3154968023300171, 0.01543512288480997, 0.02301771752536297, 0.20563852787017822, -0.023442743346095085, 0.034184154123067856, -0.14279907941818237, 0.09034624695777893, 0.1526714563369751, -0.1672889143228531, 0.022097621113061905, 0.04501279816031456, -0.1620599776506424, -0.04743160679936409, 0.018094291910529137, -0.14306440949440002, -0.0002341952349524945, -0.23342785239219666, 0.2449515014886856, 0.3875798285007477, -0.04467266425490379, 0.09707781672477722, -0.05924038589000702, 0.1543215811252594, -0.3060615658760071], [0.126487135887146, -0.1760070025920868, -0.03528725728392601, -0.0773206353187561, 0.004539957270026207, -0.14013998210430145, 0.1393224447965622, -0.023531923070549965, -0.14730453491210938, -0.07820577174425125, -0.10777328908443451, 0.00863705761730671, 0.2514258027076721, -0.23870249092578888, 0.2184368371963501, 0.1568611115217209, -0.01627282425761223, -0.2426866739988327, 0.026755690574645996, -0.23695017397403717, 0.41707122325897217, 0.2381332516670227, -0.1010221466422081, -0.06808049231767654, 0.1968175619840622, -0.05233675613999367, -0.12789542973041534, 0.11772557348012924, -0.09671531617641449, -0.3509983420372009, 0.10778745263814926, 0.18638920783996582]], [[0.7461222410202026], [-0.009066224098205566], [0.00441090390086174], [-0.49439001083374023], [-0.6561944484710693], [0.20371870696544647], [0.9233393669128418], [-0.7353559732437134], [-0.5295652747154236], [-0.35973304510116577], [0.22161588072776794], [0.04264567047357559], [0.5226448774337769], [-0.5384495258331299], [0.41497093439102173], [-0.6960574984550476], [0.5010266900062561], [0.13793575763702393], [-0.24997848272323608], [-0.4948691129684448], [0.9043663740158081], [-0.6505768299102783], [0.7156212329864502], [-0.4618980288505554], [-0.39857015013694763], [0.595063328742981], [-0.6146610975265503], [0.45002275705337524], [-0.08950058370828629], [-0.5292312502861023], [0.22761371731758118], [-0.3284413814544678]]], "biases": [[0.03571879118680954, -0.07823590934276581, 0.18512937426567078, -0.14893320202827454, -0.027087248861789703, 0.08906056731939316, -0.06664638966321945, 0.10118631273508072, -0.05323580652475357, 0.0560244619846344, -0.05993632972240448, 0.09794056415557861, 0.02025069296360016, 0.07735006511211395, 0.17803359031677246, 0.18617844581604004, 0.15485775470733643, 0.17109178006649017, -0.3751946687698364, -0.03748689964413643, 0.053801488131284714, -0.035656142979860306, 0.22110441327095032, -0.10067753493785858, -0.08459997177124023, 0.27884283661842346, 0.26035642623901367, -0.06186027452349663, 0.0989571139216423, 0.014429299160838127, 0.03343157842755318, 0.08428778499364853, 0.09868410974740982, -0.009227599948644638, 0.05773640424013138, -0.03780771791934967, -0.19426468014717102, -0.09949210286140442, 0.038088638335466385, 0.057620514184236526, -0.15159809589385986, 0.036434661597013474, 0.18728846311569214, 0.04701773449778557, -0.14446613192558289, 0.08498924225568771, 0.09961822628974915, -0.15807422995567322, 0.2266169637441635, -0.06666187196969986, -0.2071606069803238, 0.06849005818367004, 0.11277543753385544, 0.06380591541528702, -0.05458531528711319, 0.021127047017216682, 0.1190846711397171, 0.22903239727020264, 0.04425601661205292, -0.07043086737394333, 0.2508930265903473, -0.017594490200281143, -0.011522793211042881, 0.021366281434893608], [0.09804820269346237, -0.02639739029109478, -0.02805282734334469, 0.11813165247440338, -0.0035236687399446964, 0.014401629567146301, 0.09568330645561218, 0.18859000504016876, 0.1220756396651268, -0.011189122684299946, -0.1917039453983307, -0.013450666330754757, 0.06772781908512115, -0.14393407106399536, -0.12886561453342438, 0.0901758000254631, 0.19039011001586914, -0.02154604159295559, -0.05326231196522713, 0.008135718293488026, 0.09764491766691208, 0.16345860064029694, 0.12155142426490784, 0.0382840521633625, 0.2901758551597595, 0.09291154146194458, 0.1569230556488037, 0.06618957221508026, -0.010625096969306469, -0.021007826551795006, 0.0752728208899498, 0.13748377561569214], [-0.003953219391405582]], "m_w": [[[-1.1579334568523336e-05, 0.00022392079699784517, 1.0157031283597462e-05, -1.059158421412576e-06, 0.00013460678746923804, -3.0279670681920834e-06, 3.1639392545912415e-05, -6.985402706050081e-06, 4.069836904818658e-06, 1.6897265595616773e-05, 2.7468679036246613e-05, -4.857659405388404e-06, -1.451729258405976e-05, -1.2335164683463518e-05, 4.6964083821876557e-07, -1.7217278582393192e-05, -0.00015721761155873537, -5.0393841775076e-06, 5.605193857299268e-45, -8.405356493312865e-05, -0.00017530715558677912, -0.00010319288412574679, -2.2377967070497107e-06, -1.0232862450720859e-06, 1.3713981388718821e-05, 7.561471306871681e-07, 1.844186772359535e-05, -7.78948333390872e-07, -1.2199935554235708e-05, -2.9801696655340493e-05, -0.00010713102528825402, -0.00023568086908198893, 5.593949754256755e-05, -3.0656683520646766e-05, 8.383692329516634e-05, 3.6012634154758416e-06, 8.53516635146434e-09, -8.617936373411794e-07, -8.503373464918695e-06, 4.1696512198541313e-05, 1.676809119999234e-06, -9.11733786779223e-06, 3.457344291746267e-06, 7.300325523829088e-05, 6.2011522459215485e-06, 0.00015005921886768192, 1.5005308341642376e-05, 2.646013896878685e-08, 8.126942702801898e-06, 1.995166894630529e-05, -1.119077719380357e-08, 9.183057409245521e-05, -2.1169447791180573e-05, 8.384832472074777e-05, -2.0048723854415584e-06, 1.1045011888199951e-05, -6.016211500536883e-06, -1.6100064385682344e-05, -4.2547810608084546e-07, -8.467102816211991e-06, -6.573300197487697e-06, -3.4291413612663746e-05, 9.80342065304285e-06, -5.45924121979624e-05], [-1.1871321476064622e-05, 0.00023526836594101042, 1.0754337381513324e-05, -1.3324057590580196e-06, 0.0001395035069435835, -4.509278369368985e-06, 3.3216791052836925e-05, -7.538192221545614e-06, -1.8517848729970865e-06, 1.6308831618516706e-05, 2.8187516363686882e-05, -5.0357084546703845e-06, -1.528348911961075e-05, -9.393668733537197e-06, 4.202298669042648e-07, -1.7875656340038404e-05, -0.0001583939156262204, -5.104061074234778e-06, 5.605193857299268e-45, -8.420736412517726e-05, -0.00018444033048581332, -0.00010451125854160637, -1.908385456772521e-06, -7.994377710929257e-07, 1.5941001038299873e-05, 4.3876087829630706e-07, 1.9434608475421555e-05, -7.65989966566849e-07, -1.3048617802269291e-05, -3.395674139028415e-05, -0.00011121276475023478, -0.00023390665592160076, 6.482829485321417e-05, -3.18055936077144e-05, 8.716824959265068e-05, 3.831176400126424e-06, 8.285304886612721e-09, -1.1020432566510863e-06, -9.392548236064613e-06, 4.143569094594568e-05, 1.2775894902006257e-06, -9.522119398752693e-06, 3.332884716655826e-06, 7.017077587079257e-05, 5.361447165341815e-06, 0.00014768481196369976, 1.5361614714493044e-05, -1.2616129652087693e-07, 7.773337529215496e-06, 1.948948556673713e-05, -3.214000798834604e-08, 8.675423305248842e-05, -2.2020190954208374e-05, 8.410717418882996e-05, -1.0928647498076316e-06, 1.1428324796725065e-05, -5.919871000514831e-06, -1.702136614767369e-05, -6.10855792615439e-08, -5.466793481900822e-06, -6.6123780015914235e-06, -2.626780951686669e-05, 9.788896932150237e-06, -5.518697798834182e-05], [-2.290758402523352e-06, 9.641594078857452e-05, 1.9842091205646284e-06, -1.465519972043694e-06, 4.5585788029711694e-05, 2.388558459642809e-05, 1.269426411454333e-05, -3.6526116673485376e-06, 1.1854825061163865e-05, 1.7589347407920286e-05, -1.1233269106014632e-06, 1.0972512427542824e-06, -2.851503950296319e-06, -1.6104117094073445e-05, -5.653227503898961e-07, -4.402929334901273e-06, -3.5245553590357304e-05, -1.6045270285758306e-06, 5.605193857299268e-45, -2.2058466129237786e-05, -3.084812851739116e-05, -1.8207403627457097e-05, -9.246657839412364e-08, -1.8913407302534324e-06, 1.3385239071794786e-05, -6.360309043884627e-07, 4.67442259832751e-06, -5.121049184708681e-07, -2.1340904368116753e-06, -1.6440833860542625e-05, -4.538879147730768e-05, -4.494464519666508e-05, 1.1010417438228615e-05, -1.617025009181816e-05, 1.1463694136182312e-05, 3.1431466140929842e-06, 9.969833847378595e-09, -1.295467882300727e-06, 6.157519010230317e-07, 6.63307537251967e-06, 5.8606815400708e-07, -5.8076016102859285e-06, 1.3850778941559838e-06, 1.9998265997855924e-05, 9.535397111903876e-06, 2.8662339900620282e-05, 1.2429622074705549e-05, 1.8034555182566692e-08, 1.9466617686703103e-06, 9.18239493330475e-08, -2.7206857211581337e-08, -1.1648064173641615e-05, -4.395555606606649e-06, -1.673812948865816e-05, -4.237816028762609e-06, 3.215090828234679e-06, -3.290357653895626e-06, -3.824663053819677e-06, 1.0205799299001228e-06, 2.909368674863799e-07, -2.0221191334712785e-06, 1.2691879419435281e-05, 1.4635600109613733e-06, -1.1895010175067e-05], [-2.290758402523352e-06, 9.641594078857452e-05, 1.9842091205646284e-06, -1.465519972043694e-06, 4.5585788029711694e-05, 2.388558459642809e-05, 1.269426411454333e-05, -3.6526116673485376e-06, 1.1854825061163865e-05, 1.7589347407920286e-05, -1.1233269106014632e-06, 1.0972512427542824e-06, -2.851503950296319e-06, -1.6104117094073445e-05, -5.653227503898961e-07, -4.402929334901273e-06, -3.5245553590357304e-05, -1.6045270285758306e-06, 5.605193857299268e-45, -2.2058466129237786e-05, -3.084812851739116e-05, -1.8207403627457097e-05, -9.246657839412364e-08, -1.8913407302534324e-06, 1.3385239071794786e-05, -6.360309043884627e-07, 4.67442259832751e-06, -5.121049184708681e-07, -2.1340904368116753e-06, -1.6440833860542625e-05, -4.538879147730768e-05, -4.494464519666508e-05, 1.1010417438228615e-05, -1.617025009181816e-05, 1.1463694136182312e-05, 3.1431466140929842e-06, 9.969833847378595e-09, -1.295467882300727e-06, 6.157519010230317e-07, 6.63307537251967e-06, 5.8606815400708e-07, -5.8076016102859285e-06, 1.3850778941559838e-06, 1.9998265997855924e-05, 9.535397111903876e-06, 2.8662339900620282e-05, 1.2429622074705549e-05, 1.8034555182566692e-08, 1.9466617686703103e-06, 9.18239493330475e-08, -2.7206857211581337e-08, -1.1648064173641615e-05, -4.395555606606649e-06, -1.673812948865816e-05, -4.237816028762609e-06, 3.215090828234679e-06, -3.290357653895626e-06, -3.824663053819677e-06, 1.0205799299001228e-06, 2.909368674863799e-07, -2.0221191334712785e-06, 1.2691879419435281e-05, 1.4635600109613733e-06, -1.1895010175067e-05], [-1.1780833119701128e-05, 0.00023193909146357328, 9.846268767432775e-06, -1.1960813708356e-06, 0.00013973898603580892, -4.405909749038983e-06, 3.467484566499479e-05, -8.621301276434679e-06, 6.2389381128014065e-06, 1.6403990230173804e-05, 2.7376567231840454e-05, -4.785821602126816e-06, -1.4533490684698336e-05, -1.028435963235097e-05, 3.9366344140034926e-07, -1.6461308405268937e-05, -0.0001608908351045102, -5.043842520535691e-06, 5.605193857299268e-45, -8.385594992432743e-05, -0.00019735959358513355, -0.0001055693210219033, -1.916215069286409e-06, -7.841643423489586e-07, 1.5956109564285725e-05, 1.0359835869167e-06, 1.8737799109658226e-05, -7.726304147581686e-07, -1.2445242646208499e-05, -2.633330223034136e-05, -0.00011118687689304352, -0.00023467093706130981, 6.212532753124833e-05, -3.2124167773872614e-05, 8.634124969830737e-05, 3.1150902941590175e-06, 1.088674572713444e-08, -5.045005764259258e-07, -8.462513505946845e-06, 4.049966810271144e-05, 1.3879882772016572e-06, -9.424763447896112e-06, 3.249576138841803e-06, 6.891799421282485e-05, 6.140778168628458e-06, 0.0001486030814703554, 1.4788332009629812e-05, 1.1648641162764761e-08, 7.590650056954473e-06, 1.8628394172992557e-05, -3.4677722027254276e-08, 8.744080696487799e-05, -2.069452966679819e-05, 8.609837095718831e-05, -1.481627350585768e-06, 1.1380800060578622e-05, -5.367632184061222e-06, -1.5989890016498975e-05, -1.0068356459669303e-06, -6.253927949728677e-06, -6.050156571291154e-06, -2.8693957574432716e-05, 9.701896487968042e-06, -5.517416138900444e-05], [-3.74449723494763e-06, 0.00016217154916375875, -8.749522066864301e-07, -6.432418331314693e-07, 4.252178405295126e-05, -1.9452343167358777e-06, 1.7140266209025867e-05, -4.34087633038871e-06, 1.2625530871446244e-05, 1.9331931980559602e-05, 3.824299255938968e-06, 3.0391827294806717e-06, -1.372723090753425e-06, -7.860907317081e-06, -3.39271423399623e-07, -1.8833346757674008e-06, -5.281047924654558e-05, 5.706397701032984e-07, 5.605193857299268e-45, -2.382376987952739e-05, -0.00015886712935753167, -1.442474967916496e-06, -4.367360162405021e-08, -5.021024094276072e-07, 6.925150955794379e-06, -2.434892962810409e-07, 2.9083239496685565e-06, -6.116754889262666e-07, 6.20006687768182e-07, -1.3999149814480916e-05, -0.00010599346569506451, -6.488006329163909e-05, 2.8226149879628792e-05, -2.107325053657405e-05, 8.688322850503027e-06, 1.8037021618511062e-06, 4.977333212252688e-09, -2.577153850324976e-07, 3.5247830965090543e-07, 2.0086352378712036e-05, 5.433665251075581e-07, -6.975117685215082e-06, 1.5847425629544887e-06, 6.520265742437914e-05, 4.184322733635781e-06, 4.3678974179783836e-05, 1.2124123713874724e-05, -6.870490665278339e-08, 4.446786988410167e-06, -1.989285919989925e-06, -2.225937656419319e-08, -6.0425809351727366e-05, -9.213359248860797e-07, -3.309746170998551e-05, 1.2078044164809398e-07, 3.596523129090201e-06, -3.6684286897070706e-06, -4.584775069815805e-06, 4.2526590959823807e-07, -9.012896043714136e-06, -1.1649244697764516e-06, 2.810859768942464e-05, 6.110874295472968e-08, -1.1334364899084903e-05], [-7.002113306953106e-06, 0.00011544804146979004, 5.514503300219076e-06, -1.5574769918202946e-07, 6.383466825354844e-05, -7.253569037857233e-06, 1.6436277292086743e-05, -3.6656738302554004e-06, -2.436747308820486e-06, 5.93051481700968e-06, 1.3361041055759415e-05, -3.7194620290392777e-06, -8.554080523026641e-06, -2.2384947442333214e-06, 5.205586148804286e-07, -8.862791219144128e-06, -8.574029197916389e-05, -2.36947062148829e-06, -5.605193857299268e-45, -4.35486545029562e-05, -9.524004417471588e-05, -4.8639787564752623e-05, -8.825724080452346e-07, 1.3190344816393917e-08, 5.773174962087069e-06, 1.1544408380359528e-06, 1.0348777323088143e-05, -2.6428756427776534e-07, -7.573703896923689e-06, -1.102430724131409e-05, -5.433200567495078e-05, -0.00012967156362719834, 3.358447429491207e-05, -1.433511988579994e-05, 4.4451269786804914e-05, 1.0075967793454765e-06, 9.000866163511034e-10, 2.1059186394722929e-07, -5.45601960766362e-06, 2.1456375179695897e-05, 6.209125444911479e-07, -2.895533270930173e-06, 1.4173825775287696e-06, 3.390035271877423e-05, 9.66902575783024e-07, 8.187114872271195e-05, 4.001995421276661e-06, -8.991199251795479e-08, 4.2725350795080885e-06, 7.463273504981771e-06, -1.0204031397620383e-08, 6.010196011629887e-05, -1.1772685866162647e-05, 4.713488306151703e-05, -9.740708719618851e-07, 5.892602985113626e-06, -2.156118625862291e-06, -9.018495802592952e-06, -7.614586365889409e-07, -5.739816970162792e-06, -3.1130264233070193e-06, -2.26020383706782e-05, 5.073683951195562e-06, -3.033735993085429e-05], [-1.1146046745125204e-05, 0.00010137996287085116, 1.072538270818768e-05, -4.216994966554921e-07, 7.935333997011185e-05, -1.4534458387061022e-05, 1.6463876818306744e-05, -5.776363650511485e-06, 1.4170234862831421e-05, 6.502073574665701e-06, 1.0418823876534589e-05, -6.616974133066833e-06, -1.4212491805665195e-05, -4.776219611812849e-06, 7.636642749275779e-07, -1.599398092366755e-05, -0.00011009933950845152, -4.500327122514136e-06, -5.605193857299268e-45, -6.980930629651994e-05, -0.00011542200809344649, -0.00010725871106842533, -1.7619361187826144e-06, 5.359951416039621e-08, 3.309548674224061e-06, 1.2291050097701373e-06, 1.852593049989082e-05, -3.105675716597034e-07, -1.1793480553023983e-05, -1.2729129593935795e-05, -4.8020327085396275e-05, -0.00018141392502002418, 3.49894653481897e-05, -1.3738822417508345e-05, 7.554441981483251e-05, 1.4100597809374449e-06, 2.3899511258917983e-09, 1.224607615313289e-07, -1.1867932698805816e-05, 1.577462171553634e-05, 9.470945201428549e-07, -6.144213330117054e-06, 3.162821712976438e-06, 2.0428477000677958e-05, 1.7956834881260875e-06, 0.00010762170131783932, 4.490651917876676e-06, -1.472055259910121e-07, 7.3126998358929995e-06, 1.3972614397061989e-05, -1.2942245497526983e-08, 0.00010767751518869773, -2.0662680981331505e-05, 0.00011652593093458563, -6.056695838196902e-07, 1.0197026313107926e-05, -4.016505954496097e-06, -1.5228533811750822e-05, -3.927751095034182e-06, -6.806068540754495e-06, -5.570297616941389e-06, -5.20515204698313e-05, 9.227187547367066e-06, -4.412233829498291e-05], [-1.1278108104306739e-05, -3.4059994504787028e-06, 2.0575955204549246e-05, 1.2219352356623858e-05, -2.9508184979931684e-06, 3.497685247566551e-05, -1.5679346688557416e-05, 1.6053868421295192e-06, 1.9190623788745143e-05, 1.643050018174108e-05, -8.013707883947063e-06, -8.027648163988488e-07, -1.8139589883503504e-05, -2.9589053156087175e-05, -2.0839543424244766e-07, -3.632328298408538e-05, 7.986198761500418e-05, -3.535256496434158e-07, 5.605193857299268e-45, 6.740638582414249e-06, 9.268960639019497e-07, -2.824130660883384e-06, 4.250910933478735e-06, -1.920583372339024e-06, 5.578202490141848e-06, -9.371144187753089e-06, 3.1880139431450516e-05, 6.183895493450109e-07, -1.152279492089292e-05, -0.0001584015553817153, -3.0645976494270144e-06, 1.999053347390145e-05, -3.802028913924005e-06, -4.59588909507147e-06, 4.348953552835155e-08, 1.422732475475641e-05, 9.399202127724493e-08, -2.8274566687969127e-08, -3.0175422580214217e-05, 1.3083712474326603e-05, 1.4501486020890297e-06, -1.4602127293983358e-06, 1.5913547031232156e-05, -9.62672970672429e-07, 4.488885224418482e-06, 8.314491424243897e-06, 9.367126040160656e-06, 2.673612664594316e-09, 1.5549641830148175e-05, -1.6293749922624556e-06, -1.7227621995630216e-08, 4.853660357184708e-06, -3.5774170100921765e-05, 5.589294687524671e-06, -2.4205432964663487e-06, 3.6181170344207203e-06, 1.2683968861892936e-06, -2.370806578255724e-05, -4.099703346582828e-06, -1.4703081433253828e-05, -1.2658777450269554e-05, 7.956594345159829e-06, -8.431297970901142e-08, 9.444034731131978e-06], [-9.910668268275913e-07, 4.6789443786110496e-07, 2.715729806368472e-06, 1.190731154565583e-06, -3.3240651191590587e-06, 7.659111361135729e-06, -1.131288399847108e-06, 8.134319955388492e-07, 6.329051302600419e-06, 2.3750312720949296e-06, -1.2474449704313884e-06, -3.7715363987445016e-07, -2.3129111923481105e-06, -4.618770617526025e-06, 1.2066170285152111e-09, -4.719988282886334e-06, 9.901075827656314e-06, -1.7259054629903403e-07, 5.605193857299268e-45, -9.357351586913865e-07, 5.995907486067154e-07, -9.423254709872708e-07, 1.6973714878076862e-07, -6.929652585085933e-08, 1.8719769059316604e-06, -1.5139067954805796e-06, 3.705588369484758e-06, 7.353499853479661e-08, -1.8716959857556503e-06, -2.222684270236641e-05, -9.063106745088589e-07, 3.2098539577418705e-06, -1.0651760931068566e-06, -7.380268129963952e-07, -5.108569922640527e-08, 2.2909605945642397e-07, 7.515569833138613e-10, -1.7970799959243777e-08, -3.223825387976831e-06, 2.5302783797087613e-06, 1.6833662641602132e-07, -3.623035809141584e-07, 1.5495038496737834e-06, 1.5926927687814896e-07, 1.029369059324381e-06, 5.227549308983725e-07, 1.3454269947033026e-06, 2.9896637943060966e-10, 1.044724172061251e-06, 1.7983245470531983e-07, -1.026973617257454e-08, 2.7170972316525877e-07, -4.411970166984247e-06, 5.267179403745104e-07, -1.0521132765006769e-07, 3.1511373776993423e-07, 6.451003287111234e-08, -3.0914379749447107e-06, -2.2192128312781279e-07, -2.007559714911622e-06, -1.765358092598035e-06, -2.896991588841047e-07, 2.5013800808437736e-08, 1.0698835239963955e-06], [-1.4485740393865854e-06, -1.147831335401861e-05, -9.616582019589259e-08, -5.156439186748685e-08, 5.5883224376884755e-06, 2.4752833269303665e-05, 3.454418674664339e-06, -7.473011010006303e-08, -7.730312063358724e-06, 4.459287993086036e-06, -6.788905011489987e-06, -1.0901887037562119e-07, -2.0313884760980727e-06, -4.0396980693913065e-06, -6.452582113070093e-08, -2.7005573883798206e-06, 2.3668007997912355e-05, -1.1760569407215371e-07, 5.605193857299268e-45, -4.397210886963876e-06, 9.579851393937133e-06, -6.511766969197197e-06, 1.2711260524156387e-06, -2.223914918886294e-07, 3.085317075601779e-06, -9.561804290569853e-07, 8.75587716109294e-07, 2.095536544288734e-08, -1.9327435438754037e-06, -1.1606285625020973e-05, -7.3403502938163e-06, -5.00740952702472e-07, -5.60553053219337e-06, -1.4986835594754666e-07, -3.2933985494310036e-07, -1.9539628226539207e-07, 2.6939235286960184e-09, -4.736242509295607e-09, -2.0652892089856323e-06, 8.840521559250192e-07, -8.100752211248619e-07, -2.7734809009416495e-06, 1.2917560070491163e-06, -2.8176154955872335e-06, 1.1675655287035624e-06, -6.521396244352218e-06, -2.1536452265991102e-07, 1.0058986282812654e-10, 1.2919599612359889e-06, -9.945742021955084e-06, -1.9743671586525124e-08, -5.1961214921902865e-06, -2.0668617253249977e-06, 7.164197995734867e-06, -4.725342932943022e-06, 4.4374468188834726e-07, 1.6795918611478555e-07, -1.5632303984602913e-06, -2.171735104639083e-06, -4.101440936210565e-06, -1.1164564739374327e-06, -3.4908571251435205e-06, -7.108484112450242e-08, 3.9567709109178395e-07], [3.930972525267862e-06, 0.00011812111915787682, -1.2757504009641707e-05, -1.38651485031005e-05, -1.1361130418663379e-05, 2.8661099349847063e-05, -4.122193331568269e-06, -4.680944130086573e-06, -3.570937224139925e-06, 3.926377303287154e-06, 7.449135409842711e-06, 2.887279833885259e-06, -2.66474012278195e-06, -4.984427050658269e-06, -1.0532208989388891e-06, -7.834593702682469e-07, 1.2614007573574781e-05, 4.3370583568957954e-08, 5.605193857299268e-45, 3.9558912590109685e-07, 1.0176925115956692e-06, -3.576564267859794e-06, 3.533479230100056e-06, -2.5319350243080407e-06, -1.0014862709795125e-05, -6.756717993994243e-07, 1.3675754416908603e-05, 2.3207203980746272e-07, 2.175485406041844e-06, -1.35897244035732e-06, 1.5321642422350124e-05, 2.257933829241665e-06, 3.0159908419591375e-05, 1.576150452820002e-06, -5.316801434673835e-06, 2.281408796989126e-06, 7.832421999864891e-08, -5.1073874296481137e-11, -6.5420167629781645e-06, 2.5377848942298442e-06, 1.4901435179126565e-06, -1.3515883665604633e-06, 2.0080242393305525e-06, -1.4645605688201613e-06, 3.1093113648239523e-06, 2.177593387386878e-06, -2.135708200512454e-06, 1.3039038293527483e-08, 4.408202585182153e-06, -4.862070454692002e-06, -9.69081348500822e-09, 2.047989437414799e-05, -5.328961378836539e-07, 3.4223512557218783e-06, 1.7588454284123145e-06, 4.336665824666852e-06, 4.083265594090335e-06, 2.5210024432453793e-06, -3.5035209293710068e-06, 1.2590590813488234e-05, -2.77640140211588e-07, -8.841468115861062e-06, -5.453211997519247e-07, -6.515275430274414e-08], [1.6464241525682155e-07, 1.3468019460560754e-05, 8.604964705227758e-07, -1.3506246432370972e-06, -2.9373488814599114e-06, 4.359207196102943e-06, 3.1073739137355005e-07, -3.795313432419789e-07, 7.972357707330957e-07, 7.494163014598598e-07, 2.051821752502292e-07, 3.2559512419538805e-07, -2.5187321739394974e-07, -8.81744881553459e-07, -5.9013785858041956e-08, -1.7290322773533262e-07, 3.059011078221374e-06, 4.419633015118052e-08, 5.605193857299268e-45, -2.854216063497006e-07, -1.8499821408113348e-07, -8.33510114262026e-08, -4.2180823811577284e-07, -2.380109123123475e-07, -7.475421170966001e-09, 4.582654753448878e-07, 1.6458166101074312e-06, 3.2736096500229905e-08, 1.6990409790196281e-07, -9.232844035977905e-07, 2.2534926813477796e-07, 1.0351338914915686e-06, -2.611093577797874e-06, -1.3515361274585302e-07, -6.730576842528535e-07, -1.197065557789756e-07, 3.821514216184596e-09, -1.3776915372409881e-11, -6.258360372157767e-07, -8.350554026037571e-07, 1.3387675608100835e-06, -4.267017672532347e-08, 8.493165637446509e-07, 7.399847277156368e-07, 3.642370529632899e-07, -4.0762441244623915e-07, 2.3705055696154886e-07, 2.4227180261959802e-08, 6.128724976406374e-07, -3.8287171832962485e-07, -1.00648955836391e-08, -6.090649549150839e-07, -3.3035428259609034e-07, -2.0185657376714516e-06, 1.2139099681007792e-06, 3.812877196196496e-07, -6.6780160068447e-07, 3.559471224434674e-07, -2.1649213977070758e-07, 1.377212811348727e-06, -4.1386300608792226e-08, 3.914910848834552e-07, -4.1891624391610094e-08, 1.1221123941140831e-07], [1.8825878100869886e-07, 2.7697237783286255e-06, 3.586089860618813e-06, -1.158574377768673e-06, -8.147854714479763e-06, 3.015652509930078e-06, 1.7799445117816504e-07, -3.2388967952101666e-08, -2.8099684641347267e-06, 8.689826245245058e-07, -1.4066287121750065e-06, 1.7230364335318882e-07, -2.0056512539667892e-07, -8.7534840531589e-07, -1.226248116381612e-07, -2.997430499362963e-07, 4.32815932072117e-06, -3.5816424315271433e-07, 5.605193857299268e-45, -8.305302117150859e-07, -1.5138035678319284e-06, -1.9385026917007053e-09, -4.0697872805139923e-07, -3.42563794220041e-07, 3.1454710551770404e-06, 5.91213336065266e-07, -5.178894184609817e-07, -2.1297644536844018e-08, -1.2989333697532857e-07, -1.1965453268203419e-06, -4.520582592704159e-07, -3.961667516705347e-06, 1.0479360526005621e-06, -8.276811058749445e-07, -4.1621606783337484e-07, -4.5866707409913943e-07, 5.5000746179700855e-09, -1.327895710057092e-10, -3.856903845189663e-07, -2.422911848043441e-06, 1.7785239947443188e-09, -3.030718858099135e-07, 6.533805958497396e-07, 5.938977096775488e-07, 8.589364597355598e-07, -2.718689302128041e-06, -5.89938693451586e-08, 3.427785699727792e-08, 7.35680714569753e-07, 3.8181576655915705e-07, -3.467807374590848e-08, -3.4240990771650104e-06, -6.316726057775668e-07, -4.419664492161246e-06, 3.5171622130292235e-06, 6.422060039312782e-08, -1.6141396486091253e-07, 4.376796312044462e-07, -6.171154041112459e-07, 1.60916158620239e-06, 9.638867481953639e-08, 2.5200336040143156e-06, -2.942566084129794e-07, -2.0136516809543537e-07], [-2.749375482835603e-07, -1.4596688515666756e-06, 7.476684515950183e-08, -6.137044579190842e-07, 3.834377821476664e-06, -2.2093240659160074e-06, -4.882888902102422e-07, -5.192515573071432e-08, -1.1572682296900894e-06, 3.768797682823788e-07, 2.0506006137566146e-07, -1.020986886146602e-07, -1.7308828148543398e-08, 1.4107370134297526e-06, -1.2019316386613355e-07, -1.3507064977602568e-07, -4.197405303330015e-07, -3.833673076769628e-07, -5.605193857299268e-45, -2.5239594947379373e-07, 2.81170673588349e-06, 7.373504331553704e-07, -1.139460792387581e-07, -7.493507148126355e-09, -4.700725497741587e-08, 1.0442091991080815e-07, 3.512047044296196e-07, 1.3210221361248387e-08, 5.8189481677572985e-08, 5.226568191574188e-07, 1.570516516835596e-08, 2.261279405502137e-06, -3.35070609480681e-07, 9.022148361736981e-08, 1.1471415746200364e-06, -8.986177846281862e-08, -2.43037749925179e-08, -3.1094234742568005e-08, 1.966777141149123e-08, 5.965701461718709e-07, -1.6763118892981765e-08, -8.505215873810812e-07, -1.2830714979372715e-07, 1.4819048033132276e-07, -1.3358982187128277e-07, 6.945113568690431e-07, -2.4353010985578294e-07, 1.7573563582118368e-07, -7.173986915631758e-08, 1.429810509989693e-07, -3.735529929826953e-08, -1.010271489576553e-06, -2.49192282808508e-07, -5.382730250858003e-06, 6.967848662498e-07, 3.2409775485575665e-07, -1.8067071039240545e-07, -1.1688827328271145e-07, -2.3263910975401814e-07, -1.770826969504924e-07, -5.524299240278197e-07, 1.3333843753571273e-06, 5.6638263856712e-08, 7.566439030881611e-09], [-5.5646545149556914e-08, -6.123995603957155e-07, 1.9247578109116148e-07, -7.933380885560837e-08, 8.886230489224545e-07, -1.2200322316857637e-06, -5.81511194752693e-08, 3.1904029640372755e-08, -5.722044988942798e-07, -1.3760259776063322e-07, 9.605843587223717e-08, -1.2501932822317485e-08, -2.095575446503517e-08, 2.3412087557517225e-07, -1.6466483288013478e-08, -4.345665871596793e-08, -1.0885637635738021e-07, -7.307986749083284e-08, -5.605193857299268e-45, -3.803144821290516e-08, 6.83094697251363e-07, 3.955723570925329e-07, -1.1797149568337773e-07, -7.0154833053948096e-09, 4.691364807740683e-08, 1.810932026558021e-08, 5.3842249769786577e-08, -9.516811783072399e-10, 1.3414112487453167e-08, 2.0602091410637513e-07, 5.903346256275199e-09, 2.5956512672564713e-07, -7.36754373065196e-08, 1.7305966437675124e-08, 2.5907064582497696e-07, 4.4365728868456245e-09, -1.4226894107238763e-09, -9.858667660012088e-09, 3.052116781532277e-08, 2.9126829304004787e-07, 1.827097140250089e-09, -8.1286735564845e-08, -2.6622879900628504e-08, -6.577323574674665e-09, -3.465197551122401e-08, -3.6031664762958826e-08, -1.172849053432401e-07, 8.84469812945099e-08, -8.676361851200909e-09, 6.383997686043585e-08, -1.907179081328536e-09, -1.7927389706073882e-07, -1.543493333144852e-08, -1.748585418681614e-06, 2.1126265892235097e-07, 4.5779440682736094e-08, -9.1995673301426e-08, -1.0753997692347639e-08, -8.001192242090838e-08, -4.4560351852851454e-08, -1.016034758549722e-07, 2.500119649084809e-07, 2.202426863107121e-08, 1.571879693074152e-08], [-2.605567317459645e-07, -4.846544925385388e-06, 1.0424615766169154e-06, -7.241804951263475e-07, 3.8513039726240095e-06, -6.018859949108446e-06, -7.000745654295315e-07, -1.0762765612071235e-07, -6.489849965873873e-06, -5.0400544182593876e-08, 7.024830210866639e-07, -1.3607039761609485e-07, -2.3092280798664433e-07, 6.673129746559425e-07, -2.1152381179945223e-07, -2.0394952571223257e-07, -1.2396459396768478e-06, -3.6227982036507456e-07, -5.605193857299268e-45, -6.8550741616491e-07, 6.022990874043899e-06, 3.823097813437926e-06, -8.322266609184226e-08, -2.8459250955847892e-08, -3.624707289873186e-07, 2.3961283091011865e-07, 5.050445111010049e-07, 3.880286669755151e-08, -6.618626002818928e-08, 7.704589393142669e-07, 4.3925417969603586e-08, -1.4068097016206593e-06, 3.1854963822297577e-07, -4.513319140642125e-08, 1.1375749409126001e-06, -2.5557094218697785e-08, -9.666242029027217e-09, -7.894466591551463e-08, -1.4364040623604524e-07, 6.870496918054414e-07, -6.452103917808927e-08, -2.9736940021507507e-08, -2.3995358588990712e-08, -2.521281885492499e-07, -2.8509597882475646e-07, -5.464621608552989e-07, -2.3559213957469183e-07, 1.1792226928264427e-07, 1.44633688137219e-07, 6.538151069435116e-07, -1.3642323715146176e-08, -1.6958443893599906e-07, -4.025175712740747e-07, -3.5694285998033592e-06, 1.2201916206322494e-06, 3.5450000268610893e-07, -3.634795859852602e-07, -1.0553345930475189e-07, -4.314928219173453e-07, -3.0904959658073494e-07, -4.7269352876355697e-07, 6.823435114711174e-07, 1.6953384829321294e-07, -3.6752840770759576e-08], [-2.0033703549415804e-06, 2.976352334371768e-06, 9.0878256742144e-07, 1.6391051076425356e-06, 2.722390945564257e-06, 8.09765697340481e-06, 2.873771791200852e-06, -1.3800165561406175e-06, -2.4289481643791078e-06, 1.9762435385928256e-06, 1.755569201122853e-06, 1.118965087698598e-06, -7.437118370035023e-07, -7.623650617460953e-07, -5.322165108623267e-08, -1.0439273410156602e-06, 2.364091415074654e-06, -2.0651432919294166e-07, 5.605193857299268e-45, -7.449839358741883e-07, 4.7228049879777245e-06, -2.5337735678476747e-06, 3.4814794958037965e-07, -1.2952243650943274e-06, 1.3389154673859593e-07, 5.063584467279725e-07, 9.233281161868945e-08, -6.099599403341927e-08, 6.960336804695544e-07, -2.4785865662124706e-06, -1.5039394156701746e-06, -2.3680981939833146e-06, 1.2236256452524685e-06, 1.0610137906041928e-06, -1.206263505082461e-06, 2.4598530217190273e-06, 1.4634954936809663e-07, -2.424469158768261e-08, -1.997927711272496e-06, -4.2618648876668885e-07, 4.644514035589964e-07, 1.0452936294313986e-09, 1.6624393310848973e-06, -1.8566487369753304e-06, 1.739395258937293e-07, 3.8119965211080853e-06, -2.3555470818337199e-07, 9.229744080130331e-08, 3.422546569709084e-06, -2.487380470483913e-06, -3.146800864328725e-08, 3.164099553032429e-06, -1.0224414381809765e-06, 3.6125675251241773e-06, 5.443451414066658e-07, 1.9069359495915705e-06, -3.19432871265235e-07, 5.653500920743681e-07, -1.2831973208449199e-06, 1.665091076574754e-06, -2.3766313006490236e-07, -2.097856850014068e-06, -3.28440385999329e-08, -4.611548547472921e-07], [5.038728545514459e-08, 4.282329882698832e-06, -7.468639751095907e-07, 1.4502671774607734e-07, -2.3823517949495e-06, 1.9156848338752752e-06, 1.3598348687082762e-06, 2.1258867377582646e-07, -9.714472071209457e-06, 1.2437674286047695e-06, -1.331576982011029e-08, -1.1403926691855304e-08, 4.808755704743817e-08, -1.1781677500266596e-07, 4.202405889941474e-08, -6.788508244426339e-08, -4.732602974399924e-06, -2.0183846061172517e-07, 5.605193857299268e-45, -4.833143520954764e-07, 8.638638973934576e-06, -3.5936733411290334e-07, 1.9105902993032942e-07, -1.7901936644193484e-07, 7.143015778865447e-08, -8.538226836662943e-08, -3.1421748758475587e-07, 4.336143888394872e-09, 1.5888488746895746e-08, -4.7371722757816315e-06, 4.324522706156131e-06, -8.57609757076716e-06, 6.589767508557998e-06, 3.6081058851777925e-07, -5.611967708318844e-07, 3.362687550634291e-07, 1.76928569572965e-08, -3.552851879362606e-08, 1.35538925860601e-07, 1.624664946575649e-06, 2.420493387944589e-07, 1.314259179707733e-06, -1.4182148788677296e-08, 7.486125923605869e-06, 3.4867699838514454e-08, 2.608196837172727e-06, 2.0098887887343153e-07, 3.1025262359207773e-09, 2.4425474975942052e-08, -3.2691292517483816e-07, -9.218927288223711e-10, 7.045456641208148e-06, 3.0668772410535894e-08, 8.172713933163323e-06, -1.551548791667301e-07, -2.574512336650514e-08, 1.3753002292560268e-07, 5.162789875612361e-07, 4.83820485897013e-08, 9.045706974575296e-07, -4.675539955201202e-08, -1.677477257544524e-06, -2.531811915673643e-08, -1.1457589152996661e-06], [2.1739247131336015e-06, 1.657710708968807e-05, 3.6494691357802367e-07, -2.5962862082451466e-07, -7.589790129713947e-06, 1.0586997632344719e-05, 5.699398570868652e-06, 2.553312015152187e-06, -5.0916514737764373e-05, 4.2398319237690885e-06, -2.8805968668166315e-06, -8.299330715999531e-07, 9.730975989441504e-07, 2.7313114969729213e-07, 2.785942001537478e-07, 1.5908162254163472e-07, -2.4937709895311855e-05, -1.1805736903625075e-06, 5.605193857299268e-45, -5.085480552224908e-06, 5.436739593278617e-05, 3.084872332692612e-06, 8.811687735033047e-07, -1.484107485794084e-07, 1.8190376067650504e-06, -1.482168840993836e-07, -4.023805558972526e-06, -7.133949253557148e-08, -7.067291107887286e-07, -2.0789168047485873e-05, 1.5588469977956265e-05, -3.487060166662559e-05, 3.8986996514722705e-05, 1.6141998457896989e-06, -1.909035290736938e-06, 1.585960262673325e-06, 1.2712492392097374e-08, -1.7363134929837543e-07, 2.5299127628386486e-06, 1.1198767424502876e-05, 1.0693431704567047e-06, 7.2555403676233254e-06, -1.2421536439433112e-06, 3.415132232476026e-05, 2.5745414689026802e-08, 1.8451753931003623e-05, 1.043996462612995e-06, 4.3687236939149443e-07, -2.443944595142966e-06, 2.348670733454128e-07, -1.979407038277259e-08, 2.6637088012648746e-05, 3.5189222558074107e-07, 3.615676178014837e-05, -2.201245706601185e-06, -1.8299141402167152e-06, 1.3908231721870834e-07, 3.0224064175854437e-06, 1.3273969443616807e-06, 6.244194992177654e-06, -9.647915533150808e-08, -9.249531103705522e-06, 3.4626367551027215e-08, -5.583782240137225e-06], [1.5883346193845682e-08, 1.781204161943606e-07, 7.428022286148916e-08, -3.4984988239727954e-09, -2.803612630941643e-07, -2.6040794409709633e-07, 1.2065924259729854e-08, -9.91618662737892e-08, -7.761477860412924e-08, 5.084433141178124e-08, 3.470901432933715e-08, 2.085291583853177e-08, 3.418951166622719e-08, 6.542953201460477e-07, -6.488001691451473e-09, 6.923866635588638e-08, -6.060869282009662e-07, 3.587680907912727e-08, 5.605193857299268e-45, -4.992633506617494e-08, -2.815892798935238e-07, 7.015703431534348e-07, -1.026950400273563e-07, 1.636856339359838e-08, -1.0214158407961804e-07, 2.6602577918311e-08, -1.1186310899802265e-07, 2.1520647486283906e-09, 2.5793307045773872e-08, -1.1436990376978429e-07, -3.271419357631089e-09, -2.355351824689933e-08, 1.6379763678742165e-07, 1.2130719539982238e-07, -7.80709683567693e-08, 5.661283442037757e-09, -5.238875999680204e-10, -7.853453887207706e-09, 4.6220549165809643e-08, -1.3378172525335685e-07, -3.503947354488446e-08, 9.509613541069939e-09, -5.9097548188447035e-08, 1.3904730167269008e-07, -5.364658761664032e-08, 4.90262941355013e-08, 2.3620088995812694e-08, -5.6717006202688935e-08, 7.782876565443075e-09, -5.887539700211164e-08, -1.7231673039926953e-20, 5.329060286385356e-07, 4.543861109596037e-08, -8.493477139381866e-07, 4.639628770064519e-08, -2.2078978645367897e-08, 9.236982378979519e-08, 4.413918475165701e-08, -1.2303759433507366e-07, 5.7279077481098284e-08, 2.0394152144831423e-08, -2.6402921093904297e-07, -1.4351134725032466e-09, 2.1053363497003375e-08], [1.5947044573749736e-08, -1.7915564853865362e-07, 5.977971540005456e-08, -1.1171191083292342e-08, -2.0187619043099403e-07, -1.4759881139525532e-07, 1.670357185901139e-08, -4.165433864500301e-08, -1.6532980851025059e-07, -7.210533947699105e-09, 3.26758673452332e-08, 7.283847747174832e-09, 1.6280113257494122e-08, 3.434004440805438e-07, -7.769645371524803e-09, 4.6583014778889265e-08, -3.965983808029705e-07, 1.2934429527433622e-08, 5.605193857299268e-45, -2.6245206896646778e-08, -1.1336553029650531e-07, 4.727389182335173e-07, -2.790273434527535e-08, 1.3601996862178112e-08, -1.549926054167372e-08, 1.0155168261860581e-08, -5.646059264563519e-08, 2.3911226332273827e-09, 9.807731515820706e-09, -7.225474263350407e-08, 1.3476111337951124e-09, -1.0916538428773492e-07, 9.300227787889526e-08, 5.962104410173197e-08, -2.662683407095301e-09, -1.072257038714497e-08, -4.469732362011314e-10, -4.780437379281466e-09, 2.000714083294497e-08, -4.749494308953217e-08, -1.3540323529070974e-08, 1.2898382806270092e-08, -2.1344856548921598e-08, 4.3587746745288314e-08, -1.6921038792361287e-08, -2.5982712870131763e-08, 1.0394822780313007e-08, -3.468245424187444e-08, -1.169846264303942e-08, 7.017578518286882e-09, -4.282137427318451e-22, 1.9332324541210255e-07, 3.12406882585492e-08, -1.423347271156672e-07, 2.844904223309186e-08, -1.1733566118721228e-08, 5.791399004806408e-08, 1.8790728972817305e-08, -3.7947767594914694e-08, 8.82255424272671e-09, 1.5793721885870582e-08, -2.0318381643846806e-07, -1.5513318629700734e-08, 1.0202748867982336e-08], [9.155031932550628e-08, -2.3982474317563174e-07, 4.144403646932915e-07, -8.463477740860981e-08, -1.3119365576130804e-06, -1.0866343700399739e-06, 8.57237623108631e-08, -3.4598829756760097e-07, -8.11872837402916e-07, 8.969042397666271e-08, 1.9118581917609845e-07, 6.082611037072638e-08, 1.1717234826846834e-07, 2.4039654817897826e-06, -4.517266205539272e-08, 3.0255552019298193e-07, -2.6653826807887526e-06, 1.0979166376046123e-07, 5.605193857299268e-45, -1.9080439983554243e-07, -9.68440531323722e-07, 3.1021666018204996e-06, -3.0669511374981084e-07, 8.315865329677763e-08, -3.656647038496885e-07, 9.704568526558432e-08, -4.066593817242392e-07, 1.2967422691190222e-08, 7.930059808813894e-08, -5.150296829015133e-07, -1.5176730983057496e-09, -5.548103558794537e-07, 6.629864515161898e-07, 4.2807619138329756e-07, -1.5109371531707438e-07, -3.596780118186871e-08, -2.516525654527868e-09, -6.089186399549362e-08, 1.5419030319208105e-07, -4.5967453843331896e-07, -1.0876687639438387e-07, 7.744667840370312e-08, -1.4658962754765525e-07, 3.3457723702667863e-07, -1.3920468688866094e-07, -4.0771098497316416e-08, 5.723898155451934e-08, -2.32672647371146e-07, -3.957886818284351e-08, -1.4339835985310856e-08, -6.264906016350376e-21, 1.6937824511842337e-06, 1.999508469907596e-07, -2.0413049242051784e-06, 2.3504146895447775e-07, -7.815867064664417e-08, 3.6155788052383286e-07, 1.4136668369246763e-07, -3.4858703656936996e-07, 1.529035102976195e-07, 1.0019353169354872e-07, -1.3599254771179403e-06, -6.699201549054123e-08, 8.13527805121339e-08], [-1.1253588354520616e-06, 5.914429129916243e-05, 1.5376752344309352e-05, -1.639806396269705e-05, 1.4675071724923328e-05, 5.712978236260824e-05, -0.00018123569316230714, -1.4312102393887471e-05, -1.3896775271859951e-05, 7.736657425994053e-05, -8.837812856654637e-06, 7.746445476186636e-07, 7.771675996082195e-07, -2.684617902559694e-05, -4.939944119541906e-06, -1.2415875971782953e-06, -3.966376607422717e-05, -5.239874553808477e-06, -5.605193857299268e-45, -8.705720574653242e-06, 0.0011325954692438245, 1.4488825399894267e-05, 3.4005709039774956e-06, -3.997258318122476e-06, 8.295859515783377e-06, 6.5859953792823944e-06, 8.697618795849849e-06, -3.204302629455924e-06, -3.429507842156454e-07, -2.635689043017919e-06, -2.4362714611925185e-05, 3.938791633117944e-05, 0.0001154713099822402, -2.844244590960443e-06, -3.607201870181598e-05, 5.3447706704901066e-06, 5.500552457959884e-09, -2.9173941584303975e-05, 2.6088753656949848e-05, -1.451723073842004e-05, 1.5477155557164224e-06, -7.589886990899686e-06, 5.119474280945724e-06, 6.199897325132042e-05, 1.4116297279542778e-05, -1.9373017494217493e-05, 5.208280708757229e-05, -3.111151158918801e-07, -2.892390284614521e-06, -1.394507762597641e-07, -7.959953585157109e-09, -5.6330522056669e-05, -7.54529492041911e-06, -4.4940912630409e-05, 1.075749059964437e-05, 4.748795163322939e-06, -3.1545925594400615e-05, 5.519580099644372e-06, 9.804127330426127e-06, 2.4740889784879982e-05, -8.078023711277638e-06, 9.216282342094928e-05, 3.1305643233281444e-07, -1.0736304830061272e-05], [2.816338167122012e-07, 1.5457302652066574e-05, 2.9924467526143417e-06, -1.2569292948683142e-06, 7.84636358730495e-06, -3.853128873743117e-06, -1.4004526747157797e-05, -7.698674835410202e-07, -9.955547284334898e-06, 3.2968323466775473e-06, -6.1351165641099215e-06, 2.932829943347315e-07, 1.5438234868270229e-07, -1.5465170690731611e-06, -4.733237801701762e-07, -2.3485219458052597e-07, -1.697508014331106e-05, -7.17912882919336e-07, -5.605193857299268e-45, -3.768474698517821e-06, 8.240321039920673e-05, -4.893769073532894e-06, 7.336982434935635e-07, -3.9795764905647957e-07, 6.0627003222180065e-06, 2.9991846872690076e-07, 6.133496412985551e-07, -1.350014997569815e-07, 9.537567535744529e-08, -4.492201696848497e-06, -1.2240791875228751e-05, 4.883901056018658e-06, 2.633274380059447e-05, -3.411822490306804e-06, 3.089598976657726e-06, 1.6221833902818616e-06, 1.164113583307369e-09, -3.1254630812327377e-06, 2.258286258438602e-06, -1.2397629234328633e-06, 2.9535692647186806e-07, -1.0162467560803634e-06, 2.3587259079249634e-07, 1.7283557099290192e-05, 6.901589131302899e-07, 6.978182682360057e-06, 3.492170208119205e-06, -5.673670671058062e-07, -3.544809885625e-07, 3.2101293072628323e-06, -3.5187579516815504e-09, -2.3962202249094844e-06, -5.160654836799949e-07, -8.131174581649248e-06, 3.14817953039892e-07, 5.93131517234724e-07, -4.575708317133831e-06, 7.212930768218939e-07, 1.8630018985277275e-06, 3.447374183451757e-06, -5.865740035915223e-07, 9.713712643133476e-06, 4.2212004558450644e-08, -3.7062386581965256e-06], [-1.037511765389354e-06, 0.0001655567903071642, 4.911315727440524e-07, -9.854670679487754e-07, 0.0001371272373944521, -6.78739797876915e-06, 2.9381959393504076e-05, -2.9255866138555575e-06, 5.22533809999004e-06, 1.7755164662958123e-05, 3.3658143365755677e-06, 2.2906360754859634e-06, -6.270386734286149e-07, -1.3796262464893516e-05, -8.986880288830434e-07, -2.1551329609792447e-06, -7.055411697365344e-05, -1.3173987554182531e-06, -5.605193857299268e-45, -1.8980083041242324e-05, -0.00013209223106969148, -3.732098775799386e-05, -6.721248269059288e-07, -1.4722993455507094e-06, 1.364963645755779e-05, -9.613052043278003e-07, 3.073798325203825e-06, -7.608927035107627e-07, 7.773128345434088e-07, -3.1462939659832045e-05, -9.134621359407902e-05, -2.567707997513935e-05, 1.8441956854076125e-05, -2.505124757590238e-05, 1.3941986253485084e-05, 4.53762368124444e-06, 1.3530047304755044e-08, -1.4761277498109848e-06, 5.005290404369589e-06, -4.8779029384604655e-06, 2.092010618071072e-06, -6.294474587775767e-06, 9.286722502110933e-07, 8.963845175458118e-05, 9.194605809170753e-06, 2.725322701735422e-05, 1.9135637558065355e-05, -8.954312136211229e-08, 9.071832778317912e-07, 2.6168090698774904e-06, -1.4933025482832818e-08, -9.169171971734613e-05, -1.1394645298423711e-06, -2.3839847926865332e-05, -4.035172423755284e-06, 2.3543495899502886e-06, -2.339962975383969e-06, -2.6954608074447606e-06, 4.316460035624914e-06, 4.675136551668402e-06, -1.3337248674361035e-06, 5.667385266860947e-05, -4.670533257922216e-07, -1.751987474563066e-05], [2.9426769287965726e-06, 7.418390305247158e-05, -2.3858236090745777e-05, -2.527233618820901e-06, 7.340702723013237e-05, 2.6921536118607037e-05, 3.0357676223502494e-05, -6.415778625523672e-05, -0.0002198003203375265, -1.1203801477677189e-05, 1.4173181625665165e-05, 3.3905407690326683e-06, 4.425533916219138e-06, -6.0545335145434365e-06, -1.3557526017393684e-06, 1.3063004189461935e-06, -4.161270226177294e-06, -9.817900718189776e-06, -5.605193857299268e-45, -8.580579560657497e-06, -1.793794126569992e-06, 1.5248284398694523e-05, 1.6685044101905078e-05, -8.95155517355306e-06, -3.36255798174534e-05, -5.457314728118945e-06, 4.7252797230612487e-08, -6.552628519784776e-07, 3.603465302148834e-06, -1.0095099014506559e-06, -1.347169563814532e-05, 5.318893272487912e-06, -2.7500178475747816e-05, -0.00011071643530158326, 9.643554221838713e-07, 1.9837352738250047e-05, 5.5045553892796306e-08, -2.617216159706004e-05, 1.2584916476043873e-05, 2.011151082115248e-06, -2.009250010814867e-06, 7.265389285748824e-07, -6.945362201804528e-06, -4.764815093949437e-05, 7.356680725933984e-06, 0.00023535953368991613, -9.215591489919461e-08, 6.334115596473566e-07, -1.638679714233149e-05, -2.3775208319420926e-05, 2.611569571708827e-10, -1.2372909623081796e-05, 7.703323717578314e-06, -6.723803380737081e-05, -8.402866114920471e-06, 6.217499503691215e-06, -1.2581590453919489e-05, 1.2226609214849304e-05, 1.5384293874376453e-05, 7.085069228196517e-05, -4.771391104441136e-07, 9.056243288796395e-05, -1.758383945116293e-07, 8.466237886750605e-06], [5.319516276358627e-07, 1.73951357282931e-05, -6.97434984431311e-07, -8.642653597235039e-07, 1.615837936697062e-05, 4.80962626170367e-06, 8.732066589800525e-07, 1.6499951982495986e-07, -1.5342615370173007e-05, -4.965202606399544e-06, 2.9790567168674897e-06, 1.634873285638605e-07, 3.027945183475822e-07, 2.1384391857282026e-07, -2.195412918126749e-07, -2.6872515945797204e-07, -1.2643658919841982e-05, -1.8701239241636358e-06, -5.605193857299268e-45, -4.2982512127309747e-07, 8.963916116044857e-06, -1.5109253581613302e-07, 2.109474962708191e-06, -8.622017730886e-07, 6.271324082263163e-07, -8.419474397669546e-07, 1.1853836667796713e-07, 5.650830914305516e-08, -1.2687614514561574e-07, -5.61018305234029e-06, -5.3506410040427e-06, -9.898507414618507e-06, -4.564415576169267e-06, -1.558792791911401e-05, 4.024373993161134e-06, 2.9011487185925944e-06, 5.05996222699423e-09, -1.6337864963134052e-06, 2.3027273527986836e-06, 2.507698354747845e-06, -2.3935044168865716e-07, 2.328549157937232e-07, -1.3443453781292192e-06, -1.8343180272495374e-06, 1.5295504454115871e-06, 2.7287091143080033e-05, 1.0075511909235502e-06, -3.468429099484638e-07, -1.1211777746211737e-06, 1.9521589820215013e-06, 9.141552098634875e-12, -1.248633907380281e-06, 6.579909381798643e-07, -1.6840087482705712e-05, -2.4635030513309175e-06, 3.512270438932319e-07, -9.302557373302989e-07, -2.5156765559586347e-08, 1.7129518710135017e-06, -1.6831208995427005e-06, -2.3291295292438008e-07, 1.1523016837600153e-05, -2.608851623620012e-08, -1.0779791637105518e-06], [3.031623009519535e-06, 9.749283344717696e-05, 4.445675585884601e-06, -1.5484999948967015e-06, 7.432446727761999e-05, 2.82621149381157e-05, 3.0177036023815162e-05, -1.290461568714818e-06, 6.3640000007580966e-06, -1.818295640987344e-05, 4.3516720324987546e-06, -1.1912358388599387e-07, -4.3267448290862376e-08, -1.6132265955093317e-05, -9.472215651840088e-07, -4.510889652920014e-07, -3.7703470297856256e-05, -1.8924367850559065e-06, -5.605193857299268e-45, -2.429168944217963e-06, 4.6495755668729544e-05, -3.401484354981221e-05, 1.044345594891638e-06, -1.974940687432536e-06, 1.3614073395729065e-05, -7.16178476523055e-07, 1.9356421887550823e-07, -1.9290187225351474e-08, -2.204538759542629e-06, -2.3497168513131328e-05, -2.238225170003716e-05, -1.9119124772259966e-06, -1.0603243026707787e-05, -1.0749326975201257e-05, 1.651853381190449e-05, 3.95930419472279e-06, 1.1885096462549427e-08, -1.3108216307955445e-06, 3.260957328166114e-06, 1.5171710401773453e-05, 1.94368885786389e-06, 9.973002761398675e-07, -5.30450279256911e-08, 3.165880116284825e-06, 9.317251169704832e-06, 2.0416988263605163e-05, 3.939886937587289e-06, 1.840399761476874e-07, -3.7065458400320495e-06, -2.028717972279992e-06, 3.036708384751563e-10, -2.9101118343533017e-05, -6.460551844611473e-07, -4.091568916919641e-05, -6.9581369643856306e-06, -1.1779674196077394e-06, -4.0799545786285307e-07, 3.2128662041941425e-06, 2.8562494662764948e-06, -8.820004950393923e-06, -3.8029671145523025e-07, 4.3743148125940934e-05, -4.909872473035648e-07, -1.0191348337684758e-05], [1.1646042707980087e-07, 2.5704512154334225e-05, -1.097527501769946e-06, -3.343405069244909e-06, -2.1676272808690555e-05, 3.481060775811784e-05, 1.831120130191266e-06, -9.800413636185112e-07, 5.595225957222283e-05, 8.261870789283421e-06, 5.379591129894834e-06, 2.098857066812343e-06, -2.7195872576157853e-07, -1.4777443539060187e-05, -1.0154589062949526e-06, 1.8544569684308954e-06, -1.3300210412126034e-05, 1.7903346360981232e-07, 5.605193857299268e-45, -9.104993296205066e-06, -3.337782618473284e-05, 5.061267984274309e-06, 8.54787629123166e-07, -1.6555732145207003e-06, 1.5822197383386083e-05, -1.2416279560056864e-06, 5.576817443397886e-07, 1.3163893974876828e-08, -2.044847406068584e-06, 2.474026814525132e-06, 1.7301974821748445e-06, -6.0545611631823704e-05, -3.6870158510282636e-05, -2.5432627808186226e-06, -2.139340267603984e-06, 1.5638859167665942e-06, -9.863743599680674e-09, -1.7078797327485518e-06, 2.8074512101738947e-06, 9.356862392451148e-06, -8.7798451886556e-07, -8.753644920034276e-07, 1.9975307452568813e-07, -1.252864763046091e-06, 1.0576617569313385e-05, -1.8949871218865155e-06, 4.4349394556775223e-07, -1.5275145415216684e-06, -7.996997055670363e-07, -1.0690051794881583e-06, -5.298801952768883e-10, -5.734646492783213e-06, 2.996210241690278e-06, -3.376489303263952e-06, 3.758046659640968e-06, 8.508333166901139e-07, -9.023450502354535e-07, 5.577186357186292e-07, 2.8599165489140432e-06, -2.5373915377713274e-06, 6.02473676281079e-07, -1.2248549865034875e-05, -3.8551178249690565e-07, 2.250181069030077e-06], [-2.529461369249475e-07, 4.432078640093096e-06, 2.0147872703546454e-07, -5.950078616479004e-07, -4.830604666494764e-06, 4.2868218770308886e-06, -4.27710915573698e-08, -1.5388535246074753e-07, 1.274277792617795e-06, 1.8017841512119048e-06, 2.4573688506279723e-07, 2.7446094463812187e-07, -3.716784533480677e-07, -2.1652413124684244e-06, -1.1406843469785599e-07, -2.4365670014958596e-07, 1.5576026726193959e-06, -1.2136383986671717e-07, 5.605193857299268e-45, -1.160873580374755e-06, 1.9672972939588362e-06, 2.0347380313978647e-07, -7.701689952455126e-09, -1.874517181477131e-07, 3.0301262086140923e-06, -2.5037650175363524e-07, 4.220268579047115e-07, 1.4694334637965767e-08, -8.729606406632229e-07, -2.2481185624201316e-07, 6.364754199239542e-07, -4.7902303776936606e-06, -3.074401774938451e-06, -1.240997221430007e-06, 5.02398563639872e-07, 3.4389432812531595e-07, 4.640657302878992e-10, -3.748500603251159e-07, 4.88706248802373e-08, -1.647874512400449e-07, -3.6576025763679354e-08, -2.0167479419797019e-07, 1.2615831224138674e-07, -2.1968066903355066e-06, 1.1335494036757154e-06, -1.2127904938097345e-06, 3.245621016390032e-08, -2.7971591975983756e-07, -3.842022806566092e-07, 3.8730473761461326e-07, -4.609551407241952e-09, -1.2235483382028178e-06, -7.27358724361693e-08, -1.102392161556054e-06, 1.3369841553867445e-06, 3.411676345876913e-07, -1.0091367386166894e-07, -3.0815670015726937e-07, 4.1338950040881173e-07, 1.7283564375247806e-06, -1.9342122925536387e-07, -2.3375910132017452e-06, 8.4591693649827e-09, 1.6621748955003568e-07], [8.582993586969678e-07, 2.062595376628451e-05, 2.293454826940433e-06, -1.689941086624458e-06, -2.178204340452794e-05, 3.558900789357722e-05, -6.777922862966079e-07, -1.620114403522166e-06, 6.974702046136372e-06, 6.055059657228412e-06, 4.818436991627095e-07, 1.0255782854073914e-06, -2.347169640870561e-07, -1.713435267447494e-05, -7.987844696799584e-07, -1.0422451168778935e-06, 8.12394227978075e-06, -1.049359298121999e-06, 5.605193857299268e-45, -1.51534982251178e-06, 1.835295006458182e-05, 4.771572093886789e-06, -6.212948164829868e-07, -1.9856609014823334e-06, 1.491535749664763e-05, -1.317433088843245e-06, 8.229235390899703e-07, 6.3487789248029e-08, -1.077614797395654e-06, -9.735515959619079e-06, 4.959051693731453e-06, -3.2465712138218805e-05, -2.3980897822184488e-05, -4.729144620796433e-06, -4.733287369163008e-06, 1.889272425614763e-06, 1.1150077305899231e-08, -1.1605486633925466e-06, 1.655684400247992e-06, -2.0768070498888846e-06, 7.573120797133015e-08, 7.623399369549588e-07, 8.916691172089486e-07, -1.986105417017825e-06, 1.0358542567701079e-05, -7.976290362421423e-06, 2.260576138723991e-06, -2.715896130212059e-07, -1.416738427906239e-06, 2.8777990337403025e-06, -3.4115156921643575e-08, -7.679747795918956e-06, -4.07905645261053e-07, -1.786078792065382e-05, 1.5234775219141738e-06, 4.83916039684118e-07, -5.212922360442462e-07, 4.794807182406657e-07, 2.6512036583881127e-06, 3.861886398226488e-06, -7.787209597154288e-07, -1.7977125025936402e-05, -1.6796647628325445e-07, 1.3489777757058619e-06], [-1.04030675629474e-06, 7.798900333000347e-05, 4.322118911659345e-06, 8.639543693789165e-07, 3.6068595363758504e-06, 3.2044008548837155e-05, -1.0752646630862728e-05, -5.410057610788499e-07, 5.38112799404189e-05, 2.0204130123602226e-05, -3.6536843253998086e-05, 6.754360128979897e-06, -1.5310791923184297e-06, -3.6004297726321965e-05, -6.921365525158762e-07, -5.85401767239091e-06, 5.624976984108798e-05, 7.477146368728427e-08, -5.605193857299268e-45, -1.1508402167237364e-05, 3.0207702366169542e-05, -7.9111796367215e-06, -2.052841864497168e-06, -2.885748017433798e-06, 7.295210707525257e-06, -2.6576149139145855e-06, 5.343396423995728e-06, 9.098366504645128e-09, -3.301142044165317e-07, -2.4142935217241757e-05, 1.768342735886108e-05, -6.977336306590587e-05, 4.804123818757944e-06, -1.3531666809285525e-05, -2.747910184552893e-05, 1.4927917391105439e-06, 9.87059545209945e-10, -4.2411494405314443e-07, 4.154180260229623e-06, 2.222031616838649e-05, 8.431007358922216e-07, -1.291141779802274e-05, 3.259004188294057e-06, 7.251349416037556e-06, 1.7804681192501448e-05, -7.398739398922771e-08, 3.969550107285613e-06, -2.5408374426660885e-07, 3.2012126212066505e-06, -1.314667497354094e-05, -1.4633767086991156e-08, -1.9054165022680536e-05, -4.563911716104485e-06, -9.365321602672338e-05, -1.2439799320418388e-05, 2.894886392823537e-06, -1.7338871884930995e-06, -5.1564811656135134e-06, -1.065135802491568e-05, -1.784198684617877e-05, -2.246892108814791e-06, 1.7586797184776515e-05, -1.3625136574546559e-08, 6.130201768428378e-08], [-5.14705959631101e-07, 2.0345320081105456e-05, 4.6355216909432784e-07, -4.154656494392839e-07, -1.2819686162401922e-05, -1.353892571387405e-06, 5.732420504500624e-06, -1.0736672493294463e-06, 6.041146662028041e-06, 4.4947141759621445e-06, -1.2943924957653508e-05, 1.4383359712155652e-06, -5.064788410891197e-07, -2.970007244584849e-06, -2.5290842131653335e-07, -2.9601781648125325e-07, 7.325471415242646e-06, 1.756244074613278e-07, -5.605193857299268e-45, -9.230288924300112e-06, 6.050131923984736e-05, 1.6586636775173247e-06, -6.530446512442722e-07, -3.91574474178924e-07, 2.101150585076539e-06, -1.0502590441774373e-07, 3.117541211850039e-07, 3.156418060257238e-08, -3.17452020226483e-07, -5.378723471949343e-06, 1.1816455298685469e-06, -2.3490656531066634e-06, 2.0289577150833793e-05, -2.2201686533662723e-06, 1.577693751642073e-06, 3.9249212591130345e-07, -7.80771358677157e-09, -3.3216559813809e-07, -6.452629577324842e-07, 5.673265150107909e-06, 1.4296034578364925e-07, -3.5946541174780577e-06, 4.6222663740991266e-07, 2.916222229032428e-06, 1.8197766848970787e-06, 1.4346376701723784e-05, 5.365856168282335e-07, -3.000083381721197e-07, 2.7909456434827007e-07, -1.1432499377406202e-05, -1.4728226638283104e-08, -1.0515850590309128e-05, -4.1605687783885514e-07, -2.2479656763607636e-05, -5.262403192318743e-06, 8.820935022413323e-07, -2.677589066024666e-07, -9.123889412876451e-07, -1.0387777820142219e-06, -4.7452949729631655e-06, -7.817256175712828e-08, 1.63596141646849e-05, -2.5418893656592445e-08, -5.671156344533301e-08], [-2.3068378141033463e-06, 0.00010915231541730464, 5.621361651719781e-06, -1.5000450730440207e-06, 1.3110689906170592e-05, -3.332475171191618e-05, 1.2417101970640942e-05, -4.836705102206906e-06, 5.154082100489177e-05, 9.540488463244401e-06, -2.8682061383733526e-05, 3.769470595216262e-06, -1.6786253809186746e-06, -1.6390073142247275e-05, -1.2379639429127565e-06, -2.2417696072807303e-06, 1.632561361475382e-05, -9.575430794939166e-07, -5.605193857299268e-45, -1.704516944300849e-05, -1.121829882322345e-05, 1.1212021490791813e-05, -1.2848105370721896e-06, -1.429870280844625e-06, 1.7662954633124173e-05, 3.905120706804155e-07, 5.3665921768697444e-06, -7.551894753987654e-08, -6.901105962242582e-07, -7.840354555810336e-06, -2.0118968677707016e-05, 1.1741678463295102e-05, 3.2336371077690274e-05, -2.544163362472318e-05, -3.990716322732624e-06, 4.234032530803233e-06, 5.209803699557369e-09, -1.2341508863755735e-06, 2.8366725928208325e-06, 2.270291133754654e-06, 3.2451421816404036e-07, -1.030756720865611e-05, 1.9451654225122184e-06, 2.7842761483043432e-06, 9.495294762018602e-06, 3.487919457256794e-05, -2.103617191551166e-07, -2.144528963299308e-07, 3.885343630827265e-06, -1.4770947927900124e-05, -1.4883638321805392e-08, -4.183793134870939e-05, -2.3793643322278513e-06, -8.865450945449993e-05, -9.37664390221471e-06, 3.9556466617796104e-06, -3.136266286674072e-06, -4.551660822471604e-06, 2.4623943772894563e-06, 3.128766820736928e-06, -7.322836950152123e-07, 5.882091500097886e-05, -3.7459608392964583e-07, -2.4046266844379716e-06], [-1.1634176644292893e-06, 3.628903141361661e-05, -2.0541749563562917e-06, -1.2728869478451088e-06, -6.736558589182096e-06, 1.58695038408041e-05, -3.532700020514312e-06, -1.2437432133083348e-06, 2.3322168999584392e-05, 2.4679429770912975e-06, 3.6263404581404757e-06, 8.857380748850119e-07, -6.127469305283739e-07, -9.668152415542863e-06, -3.205582856935507e-07, -3.1562171898258384e-07, 8.238054761022795e-06, 5.713046675737132e-07, -5.605193857299268e-45, -3.4895319345196185e-07, -6.331366421363782e-06, -5.505790340976091e-06, 1.1613706192292739e-06, -6.805980206081585e-07, 2.914842298196163e-06, -6.138894264040573e-07, 5.927345227974001e-06, 1.8611801522183669e-07, -2.9514376365114003e-07, -1.4240359860195895e-06, -3.266521616751561e-06, -3.5110580938635394e-05, -1.3238682186056394e-05, -4.4933722165296786e-07, 1.6110427623061696e-06, 6.417305939976359e-07, -3.4018153627357606e-08, -1.1919486269107438e-06, -7.311642775675864e-07, -1.8550433651398635e-06, -2.468691775447951e-07, -1.4913608765709796e-06, 8.191222491404915e-07, -9.277532626583707e-06, 7.675675988139119e-06, 1.4789047497743013e-07, 8.333326491083426e-07, 1.2821067230106564e-07, 1.2054774742864538e-06, -1.1096063872173545e-06, -4.5505930756917223e-07, 4.018012077722233e-06, -2.2368033114616992e-07, 3.2915025371949014e-07, 5.273214810586069e-06, 1.44160105719493e-06, -3.530443848376308e-07, -1.322650973634154e-06, -1.7693220115688746e-06, 3.9837453869040473e-07, -3.586559955692792e-07, -4.302906290831743e-06, -6.361461259984935e-07, 4.2877081796177663e-07], [-2.0388642951729707e-07, 7.143750281102257e-06, -4.284249399688633e-08, -1.9238902382312517e-07, 6.639222078774765e-07, 5.054027951700846e-06, -5.911496145927231e-07, -3.881760903823306e-07, 3.244442041250295e-06, 1.6806521898615756e-06, -1.978031320959417e-07, 2.4827443212416256e-07, -2.6487558102417097e-07, -2.744320681813406e-06, -1.5335386649439897e-07, -5.187152485319757e-09, 2.944576635854901e-06, 1.8840315973989163e-08, -5.605193857299268e-45, -6.200354505381256e-07, -2.8445767839002656e-06, -6.783056960557587e-07, -1.8252458744427713e-07, -1.7141577757229243e-07, 9.57532279244333e-07, -9.564537606365775e-08, 4.382611962228111e-07, 4.263500130718967e-08, -6.085845143388724e-07, -1.7571072419286793e-07, -1.8844706062282057e-07, -7.099294634826947e-06, -3.863381607516203e-06, -4.624321263690945e-07, -1.2302758989335416e-07, 7.603693674695933e-09, -6.410810077239759e-11, -1.3986453950565192e-07, -1.918749035212386e-07, -6.083931225475681e-07, -5.292656624078518e-08, -7.668646162528603e-07, 2.124508142742343e-07, -1.972905238289968e-06, 1.686460450400773e-06, 1.5599781022501702e-07, 9.051781546531856e-08, -1.8007446556111972e-07, 2.1143219441910333e-07, -1.3069632132101106e-07, -7.234444865389378e-08, 4.6051530944168917e-07, -4.5314909158378214e-08, -2.368654577367124e-06, 9.857568556981278e-07, 3.582612464470003e-07, -7.280624458871898e-08, -3.639314911652036e-07, -2.301389514514085e-07, -5.135102583153639e-07, -2.4927667041652057e-08, -1.974513907043729e-06, -9.103678166866302e-08, 9.748439566692468e-08], [-6.754750074833282e-07, 3.459517392911948e-05, 1.038299956235278e-06, -1.8839515405488783e-06, -4.295038252166705e-06, 3.136506711598486e-05, -8.984861779026687e-06, -1.0149828995054122e-06, 3.421666406211443e-05, 4.727353825728642e-06, 4.4558129275173997e-07, 1.5668792912038043e-06, -3.862509743157716e-07, -1.911797880893573e-05, -9.235955076292157e-07, -3.4691055361690815e-08, 1.888305996544659e-05, -7.907356689429434e-07, -5.605193857299268e-45, -2.1712776288040914e-06, 8.965403139882255e-07, -6.9515044742729515e-06, -3.726769932654861e-07, -1.5692382930865278e-06, 8.829618309391662e-06, 1.4677583237698855e-07, 2.1440066575451056e-06, 8.379391402968395e-08, -2.471314815011283e-07, 1.0499419431653223e-06, -9.436062100576237e-07, -4.497118789004162e-05, -2.142090306733735e-05, -3.7575493934127735e-06, -4.206500761938514e-06, 1.5711677292529203e-08, 1.2502860080587652e-08, -7.44395606488979e-07, 3.953576310777862e-07, -4.254027771821711e-06, -1.8262437606608728e-07, -2.4389455575146712e-06, 1.4914621715433896e-06, -1.1546864698175341e-05, 9.868489541986492e-06, 1.8628057318892388e-07, -4.552056509510294e-07, -6.985451506125173e-08, 1.4698384802613873e-06, -2.494918760476139e-07, -3.4677700710972204e-08, 2.054840933851665e-06, 2.1354914281346282e-07, -1.5019895727164112e-05, 5.733596935897367e-06, 1.751080276335415e-06, -2.8474514692788944e-06, -1.0898261280090082e-06, -2.325167770322878e-06, -4.708568667410873e-06, -1.090229915234886e-07, -1.5205105228233151e-05, -3.931835692583263e-07, 7.900686682660307e-07], [7.138055480027106e-07, -6.517234396596905e-08, -1.385562995892542e-06, 5.240152489704997e-08, -7.410924808937125e-06, -2.0671777747338638e-06, -1.3011128885409562e-06, 7.720123562648951e-07, -9.870512258203235e-06, 1.8494166624805075e-06, 1.3010254633627483e-06, 7.135042778827483e-09, 2.3118815306588658e-07, 5.21990273227857e-07, 2.4212971538872807e-07, 3.4187655728601385e-07, -1.0647930821505724e-06, 1.0626166613292298e-08, 5.605193857299268e-45, -1.277150118994541e-07, 4.282128429622389e-06, 1.4567043535862467e-06, -4.2567336322463234e-07, -5.7164413647115e-08, 2.9109003207850037e-07, -6.24322865405702e-07, -1.847575845204119e-06, 4.4254566677892626e-10, 2.9747582175332354e-07, -4.169698968325974e-06, 2.5706248152346234e-07, -5.3711742111772764e-06, 4.679529865825316e-06, -2.9236974796731374e-07, 1.387702923238976e-06, -1.0284458795695173e-07, -3.2204289235338024e-10, 1.2321979880880463e-08, 1.1007068678736687e-06, 2.071509015877382e-06, -1.376971852096176e-07, 2.0855583215961815e-07, -5.745659450440144e-07, -1.0125374956260202e-06, -2.285533469148504e-07, 1.2384421665956324e-07, 6.557572760357289e-07, 4.315018031775253e-08, -9.680861694505438e-07, 4.83356132008339e-07, -5.904719380112056e-09, 2.323341050214367e-06, 9.280294648306153e-07, 4.420385266712401e-06, -2.875672748814395e-07, -4.3210610556343454e-07, 6.447973532885953e-07, 5.48643697584339e-07, 3.0239596071623964e-07, -2.0580837372108363e-06, 5.618281306851713e-07, -5.219366357778199e-06, -9.853813054405691e-08, -8.560436981497332e-07], [-4.225326392770512e-06, 6.608467811020091e-05, 4.459896445041522e-06, -3.1269618716578407e-07, 3.6667552194558084e-05, 7.324940725084161e-06, 1.0727149856393225e-05, -4.163957783021033e-06, 2.9519942472688854e-06, 5.451634933706373e-06, -2.230428890470648e-06, -2.1246853521006415e-06, -3.7270037864800543e-06, -7.050548447296023e-06, -1.568570496601751e-06, -5.465235517476685e-06, -3.4681594115681946e-05, -1.7191454162457376e-06, 5.605193857299268e-45, -2.3881853849161416e-05, -3.195826866431162e-05, -1.6216170479310676e-05, 1.402985731147055e-06, -6.278124260461482e-07, 8.83510620042216e-06, 1.5586169865855481e-06, 9.174822480417788e-06, -1.7337430335828685e-07, -5.623222023132257e-06, -6.587064035556978e-06, -1.6795562260085717e-05, -3.378510518814437e-05, 1.5435245586559176e-05, -1.1325002560624853e-05, 1.6885083823581226e-05, 1.0922287856374169e-06, 5.949418735440304e-09, -6.058926942387188e-07, -3.949684469262138e-06, 2.3045752186590107e-06, 3.5372431739233434e-07, -1.721022613310197e-06, 2.0329898688942194e-06, 6.875486178614665e-06, 2.7359640171198407e-06, 3.808824112638831e-05, 1.6826029423100408e-06, 7.101956356336814e-08, 2.225448270110064e-06, -3.967102657043142e-06, -1.2276588634563268e-08, 9.312969268648885e-06, -8.780716598266736e-06, 5.521314960788004e-07, -2.8489494070527144e-06, 2.5231529434677213e-06, -3.243637593186577e-06, -3.212252977391472e-06, 9.680269386080909e-08, -2.3088605303200893e-06, -6.325290087261237e-06, 7.334565452765673e-06, 1.8235597281091032e-06, -1.1915339200641029e-05], [1.424362039870175e-06, 3.621773066697642e-05, -2.9762750273221172e-06, -5.520570312000928e-07, 1.2556996807688847e-05, 2.9022958187852055e-06, 6.311725883278996e-06, 1.0954322533507366e-06, -2.9049433578620665e-06, 8.129685738822445e-06, 2.099237690345035e-06, 1.836495698626095e-06, -3.7342871905821085e-07, -1.6053928675319185e-06, 1.5683435776736587e-06, 6.821021543146344e-07, -2.300805863342248e-05, -5.843345434186631e-07, 5.605193857299268e-45, -8.392185918637551e-06, -3.862092853523791e-05, -9.347568266093731e-06, -2.5138956516457256e-06, -7.228883873722225e-07, 6.892866167618195e-06, -1.7200250113091897e-06, -5.033357865613652e-06, -2.1422724216790812e-07, 2.156619302695617e-06, -5.279459855955793e-06, -2.6625133614288643e-05, -2.3848908313084394e-05, 2.941272668977035e-06, -7.209430350485491e-06, 9.432164006284438e-06, 1.5705081750638783e-06, 4.422067156895082e-09, -3.513586648296041e-07, 4.750039352074964e-06, 5.309050720825326e-06, 2.212382383959266e-07, -3.8047810448915698e-06, -1.2410272347551654e-06, 7.040713171591051e-06, 3.139037971777725e-06, 1.037147558236029e-05, 6.751913588232128e-06, 8.924599370629949e-08, -6.049900775906281e-07, 4.6313716666190885e-06, -1.7547391095718012e-08, -1.0499751624593046e-05, 3.659591129689943e-06, -8.396400517085567e-06, -1.5974989082678803e-06, 1.1845077096950263e-06, 5.832141027894977e-07, -1.5352402442658786e-06, 1.4424279015656793e-07, -2.058888100009426e-07, 5.070708994026063e-06, 3.837956683128141e-06, 7.535056170127064e-07, -5.765316927863751e-06], [2.390884401393123e-05, 3.187742186128162e-05, -1.3279599443194456e-05, 7.270743481058162e-06, -7.79458277975209e-05, -3.6453107895795256e-05, -6.290037708822638e-05, 3.149190524709411e-05, -0.00011872286268044263, 7.886472303653136e-05, 2.2902615455677733e-05, 1.5695535694248974e-05, -8.821208211884368e-06, 1.675866406003479e-05, 2.3045156922307797e-05, -1.4005725461174734e-05, -2.084892912534997e-06, -7.054627531033475e-06, 5.605193857299268e-45, 1.5558427548967302e-05, -0.00019539977074600756, -6.674443284282461e-06, -1.0980970728269313e-05, -2.0988536562072113e-06, 4.174862988293171e-05, -3.263120379415341e-05, -4.1967716242652386e-05, 4.073039008289925e-07, 2.6056519345729612e-05, -0.0001942760864039883, -0.00011333042493788525, -1.904559030663222e-05, -3.7932913983240724e-06, -2.8593638489837758e-05, 5.179589061299339e-05, 1.8917617126135156e-05, 9.102981834985258e-08, -2.7302214675728464e-06, 2.1426307284855284e-05, 2.392274109297432e-05, -2.0274598000469268e-07, -7.560336143797031e-06, -8.44714668346569e-06, -4.893222649116069e-05, 2.063556166831404e-05, 3.0258464903454296e-05, 7.550929876742885e-05, -1.6297406091325684e-06, 4.526144948613364e-06, 6.731951725669205e-05, 4.828682342861157e-09, -7.123133400455117e-05, 2.6930823878501542e-05, 2.5919343897840008e-05, -9.864239473245107e-06, 6.29220357950544e-06, 1.6920057532843202e-05, -3.065728014917113e-05, -2.9379318220890127e-05, -3.819489575107582e-05, 5.586333281826228e-05, -1.808431807148736e-05, 2.4972489427455002e-06, -1.738701030262746e-05], [1.213925497722812e-05, 1.5220597560983151e-05, -1.4303142961580306e-05, -1.0583848961687181e-06, -4.3844494939548895e-05, -3.021647353307344e-05, -2.581564331194386e-06, 1.2916513696836773e-05, -5.047478771302849e-05, -7.648210157640278e-06, 9.817929822020233e-06, 5.3328403737396e-06, 2.0590339318005135e-06, 1.1971274943789467e-05, 8.329789125127718e-06, 5.106579919811338e-06, -2.582244087534491e-05, -1.1156197388118017e-06, 5.605193857299268e-45, -7.389689926640131e-06, -4.5060769480187446e-05, -1.055741358868545e-05, -1.0026865311374422e-05, 2.6829721377907845e-07, 1.0712223229347728e-05, -9.06005698197987e-06, -2.774638051050715e-05, 5.40393159553787e-07, 1.1694660315697547e-05, -2.863970075850375e-05, -3.3267726394115016e-05, -2.835709892679006e-05, 3.1676783692091703e-05, -4.2649048737075645e-09, 1.6525953469681554e-05, 1.464022034269874e-06, 1.2071555977044568e-09, -7.618433528477908e-08, 9.547975423629396e-06, 7.597205240017502e-06, -8.376854907510278e-07, -3.0147843972372357e-06, -7.176240615081042e-06, -6.568396202055737e-06, 3.037371925529442e-06, 1.4119420939096017e-06, 1.012860593618825e-05, -2.9118416478013387e-07, -7.0782889451947995e-06, 2.012548611673992e-05, -1.1723274795372163e-08, -1.723407876852434e-05, 1.873540531960316e-05, 2.424584181426326e-06, -8.196557246265002e-06, -9.881517826215713e-07, 7.1804802246333566e-06, -2.6074619654536946e-06, -6.199027666298207e-06, -2.250100351375295e-06, 2.401202618784737e-05, -8.955549674283247e-06, 1.3375653225011774e-06, -6.964206932025263e-06], [7.114362233551219e-05, 5.379273716243915e-05, -6.982464401517063e-05, -9.801126907404978e-06, -4.515063847065903e-05, -0.0001160129249910824, -1.7878228391055018e-06, 7.197404920589179e-05, -8.119018457364291e-05, -4.0264603740070015e-05, 1.8037129848380573e-05, 3.915022170986049e-05, 1.5918223652988672e-05, 0.00010768412903416902, 5.81957574468106e-05, 5.7955196098191664e-05, -0.00016594660701230168, -1.3372357443586225e-06, 5.605193857299268e-45, -2.5268151148338802e-05, -0.0002746171085163951, 2.661118924152106e-05, -7.554060721304268e-05, -7.786564992784406e-07, 2.7186499210074544e-05, -4.8162255552597344e-05, -0.0001902566000353545, 4.846438059757929e-06, 9.491897071711719e-05, -3.2380656193709e-05, -0.00020314467838034034, -0.00018596930021885782, -0.00015145796351134777, -2.0313585991971195e-05, 9.211155702359974e-05, 6.702662176394369e-07, 2.1551842255274067e-10, -2.4326723178091925e-06, 7.613341585965827e-05, 3.351883060531691e-05, 1.1785183460233384e-06, -3.793081850744784e-05, -3.893155371770263e-05, -0.00018117039871867746, 2.2231877665035427e-05, 1.9531056750565767e-05, 7.09714149706997e-05, -1.5846941096242517e-05, -3.11495823552832e-05, 0.00010589299927232787, -2.075653959821011e-08, -0.00010662231215974316, 0.00014845044643152505, -3.5564295103540644e-05, -2.6232708478346467e-05, 5.118747139931656e-06, 4.341241219663061e-05, -1.2475367839215323e-05, -4.5924516598461196e-05, 2.9162861210352276e-06, 0.00018219351477455348, -4.942588566336781e-05, 9.310614586865995e-06, -1.400272230966948e-05], [-8.372032425540965e-06, 0.00019016691658180207, 2.6477526262169704e-05, -1.1956228263443336e-05, -1.656981794440071e-06, 6.455340917455032e-05, 1.0060715794679709e-05, -1.0381162610428873e-05, 4.050438292324543e-06, 4.839180292037781e-06, -1.9532224541762844e-05, 9.815685189096257e-07, -5.98936503592995e-06, -1.887762118712999e-05, -4.771362000610679e-06, -1.1359310519765131e-05, 3.576952440198511e-05, -1.0158372560908902e-06, 5.605193857299268e-45, -1.272146801056806e-05, 1.4543526049237698e-05, 3.4451938972779317e-06, 1.1395369256206322e-05, -5.530353973881574e-06, -1.4209168512024917e-05, 5.762070031778421e-06, 2.0586410755640827e-05, -1.530382746750547e-06, -6.043727353244321e-06, -1.9054266431339784e-06, -6.374895019689575e-05, -4.850926052313298e-05, -4.348636866779998e-05, -1.1217989595024846e-05, -1.4535653463099152e-06, 1.350766615360044e-05, 4.008996157267575e-08, 3.577273730570596e-07, -6.22362222202355e-06, -8.624676411272958e-06, -1.9354627056600293e-06, -2.675141513464041e-05, 1.2087644790881313e-05, 1.6656515072099864e-05, 3.162913117193966e-06, -3.626992111094296e-05, -1.4822890079813078e-06, 4.9071140892920084e-06, 1.0680048035283107e-05, 3.2678013667464256e-05, -3.5412821119962246e-08, -3.1168765417532995e-05, -1.8711947632255033e-05, -5.436132778413594e-05, 3.568108513718471e-05, 5.622805474558845e-07, 1.5649869965272956e-05, 1.218185843754327e-05, 2.4536762794014066e-05, 1.5748231817269698e-05, -1.3964999197924044e-05, -1.6151841464306926e-07, -9.582562370269443e-07, 1.5332759630837245e-06], [-1.3106382539262995e-06, 3.306217695353553e-05, 2.531392965465784e-06, -1.957567747012945e-06, -9.555579708830919e-06, 2.167936327168718e-05, 1.0699613994802348e-05, -2.954407136712689e-06, -1.1807020200649276e-05, 6.5381677814002614e-06, -1.000444171950221e-06, 2.9283910407684743e-08, -1.6323582485711086e-06, -3.338834176247474e-06, -7.067901606205851e-07, -2.285214122821344e-06, 1.0129800102731679e-05, -4.65863536192046e-07, 5.605193857299268e-45, 8.037909537961241e-07, 1.957871063495986e-05, 2.8200574888614938e-06, 2.7180360575584928e-06, -1.1947363418585155e-06, 5.281360699882498e-07, -4.53163693237002e-07, 3.217388439225033e-06, -5.231001409811142e-07, -9.62670128501486e-07, -2.8068170649930835e-06, 1.461216015741229e-06, -1.208597586810356e-05, -1.0040667802968528e-05, -3.6319202081358526e-06, -2.688891072466504e-06, 1.7245434946744354e-06, 3.3687115319480654e-09, -3.611148429172317e-07, 5.5742716540407855e-06, -2.0245656742190477e-06, -3.2536765957047464e-06, -3.946931428799871e-06, 1.6309064676534035e-06, 1.3419992683338933e-05, 2.4464175112370867e-06, -9.633484296500683e-06, 3.6896003621222917e-06, 1.2555689181681373e-06, 1.8151616814066074e-06, 7.40489986128523e-06, -9.180666005192961e-09, -1.1623626960499678e-05, -2.5281315174652264e-06, 9.884956853056792e-08, 3.5704528045243933e-07, 6.13534666626947e-07, 4.635862751456443e-06, 1.3653614132635994e-06, 6.620488420594484e-06, 3.7489085116249043e-06, -1.8534101400291547e-06, -9.873918315861374e-06, -6.850403906355496e-07, -3.5778771234618034e-07], [1.2173298273410182e-05, 8.424293628195301e-05, -3.4166238037869334e-05, -2.3511017843702575e-07, -8.959932529251091e-06, 5.480572144733742e-05, 6.575210863957182e-05, 6.509568265755661e-06, 3.21750994771719e-05, -2.2586074919672683e-05, 2.0477695215959102e-05, 1.0415377801109571e-05, 4.873831585427979e-06, 6.4464056777069345e-06, 6.551267688337248e-06, 9.72461566561833e-06, -4.610826727002859e-05, 2.8009105790260946e-06, 5.605193857299268e-45, 6.886363280500518e-06, 1.857184906839393e-05, -6.8659910539281555e-06, 6.992219368839869e-06, -8.465876817354001e-07, -1.1095219633716624e-05, -7.63148727855878e-06, -3.131792982458137e-05, -5.3222688620735426e-06, 1.1193473255843855e-05, -1.2007381883449852e-05, -2.9188886401243508e-06, -2.761286305030808e-05, -1.8886970792664215e-05, 2.219459020125214e-06, -2.9057914616714697e-06, 5.904356839891989e-06, 1.3131598919358112e-08, -8.869757266438683e-07, 6.733747432008386e-05, 1.8805003492161632e-06, -2.4714432584005408e-05, -1.170561972685391e-05, -1.3029552064836025e-05, 3.244353865738958e-05, 3.0203516416804632e-06, 1.3937461517343763e-05, 2.2345890101860277e-05, 1.695176433713641e-05, -6.666170975222485e-06, 2.8339942218735814e-05, -2.579020730308912e-08, -3.997065869043581e-05, 2.0177352780592628e-05, -4.205962977721356e-05, 7.692931831115857e-06, -5.0595322136359755e-06, 1.1086845915997401e-05, 5.491637239174452e-06, 6.353537628456252e-06, 2.051824048976414e-05, 2.4265453248517588e-05, -1.8713753888732754e-05, -1.774083813188554e-07, 1.1068909770983737e-06], [2.884379864553921e-05, -5.327742110239342e-05, -5.369318387238309e-05, -5.114965006214334e-06, 4.5050801418256015e-05, 1.6057561879279092e-05, 6.121924525359645e-05, 2.284518450323958e-05, 1.9160577721777372e-05, -1.884700623122626e-06, 5.817463534185663e-05, 2.2560807337868027e-05, 1.3748516721534543e-05, -1.0435113836138044e-05, 1.7928483430296183e-05, 3.283436308265664e-05, -6.550998659804463e-05, 6.942780146346195e-06, 5.605193857299268e-45, 2.1802170522278175e-05, -0.00010677865066099912, -1.8150267351302318e-05, -3.384724914212711e-05, -3.2409484447271097e-06, 2.6814421289600432e-05, -1.4902616385370493e-05, -7.63880816521123e-05, 7.8191611407874e-08, 3.693684993777424e-05, 8.152121040438942e-07, 6.652135198237374e-08, -7.635998190380633e-05, -0.00010948819544864818, 1.8298243958270177e-05, -6.6938905547431204e-06, 2.1870039290661225e-06, -2.5200282749437974e-08, -5.900395763092092e-07, 5.169713040231727e-05, 2.9711243769270368e-05, 1.0481199979039957e-06, -1.9654521565826144e-06, -1.5364068531198427e-05, -5.3102685342309996e-05, 1.593383785802871e-05, -3.830096829915419e-05, 2.1382606064435095e-05, -2.919676660440018e-07, -1.9197372239432298e-05, 6.08842856308911e-06, -3.3425800438635633e-07, -4.7696077672299e-05, 6.366741581587121e-05, -7.273509982042015e-05, -9.338117706647608e-06, -2.0333218344603665e-06, 4.5458091335603967e-07, 2.838793989212718e-06, -1.5757664186821785e-06, 7.724997885816265e-06, 6.794792716391385e-05, -2.4950026272563264e-05, -1.340718398523677e-07, 1.526189225842245e-05], [8.388073183596134e-06, -1.5162327144935261e-05, -1.1647919563984033e-05, -5.500673410097079e-07, 6.532865882036276e-06, 1.7722786651575007e-06, 1.6854284695000388e-05, 8.182212695828639e-06, 3.236227030356531e-06, -1.670244046181324e-06, 1.733102362777572e-05, 6.257031600398477e-06, 3.626337502282695e-06, 2.7636633603833616e-06, 5.669030542776454e-06, 8.966483619587962e-06, -1.7681075405562297e-05, 1.7221265125044738e-06, 5.605193857299268e-45, 8.53142137202667e-06, -2.172910353692714e-05, -1.6272416587526095e-06, -9.709121513878927e-06, -5.440017503133276e-07, 7.637190719833598e-06, -4.65941775473766e-06, -2.247124029963743e-05, 4.399172581770472e-08, 1.2100095773348585e-05, 5.334503043741279e-07, -2.4650728391861776e-07, -1.668384538788814e-05, -2.7445334126241505e-05, 4.022123903268948e-06, 1.6828015532155405e-06, 1.9446120802513178e-07, 1.1982758119088999e-09, 2.7533726409956216e-08, 1.541601523058489e-05, 8.372739102924243e-06, 1.5555988852611335e-07, -5.363692139326304e-07, -4.648911271942779e-06, -1.8833079593605362e-05, 3.996021860075416e-06, -1.082159360521473e-05, 6.468281299021328e-06, 6.78617197991116e-08, -4.326267571741482e-06, 5.153596703166841e-06, -5.158079474654187e-08, -1.5346035070251673e-05, 1.8457525584381074e-05, -1.8602169802761637e-05, -4.767630343849305e-06, -5.908505613660964e-07, 1.8914963675342733e-06, 4.586297563946573e-07, -2.0144391328358324e-06, 7.950404210532724e-07, 2.0529681933112442e-05, -6.5751805777836125e-06, -2.783979269338488e-08, 4.196324425720377e-06], [1.691365469014272e-05, -2.0795561795239337e-05, -2.7825535653391853e-05, -2.842778940248536e-06, 2.7299014618620276e-05, 5.390763362811413e-06, 2.645035056048073e-05, 1.426953349437099e-05, 1.8732566786638927e-06, -7.687279321544338e-06, 3.426057446631603e-05, 1.3444048818200827e-05, 7.568210548924981e-06, 7.711318176006898e-06, 1.097045787901152e-05, 1.893761509563774e-05, -4.228647594572976e-05, 3.7146551221667323e-06, 5.605193857299268e-45, 1.1659807569230907e-05, -4.994545815861784e-05, -5.503127795236651e-06, -2.0004741600132547e-05, -1.1949298368563177e-06, 1.4149793969409075e-05, -8.72372038429603e-06, -4.473482840694487e-05, -1.5872568326358305e-07, 2.327596303075552e-05, 6.780134640393953e-07, 1.3830217540089507e-06, -3.699145599966869e-05, -5.286282976157963e-05, 1.0920789463852998e-05, 9.976561159419362e-07, 5.892948138352949e-07, 1.1549766476548484e-08, -7.440952458637184e-07, 3.0740982765564695e-05, 1.4886765711707994e-05, -5.576944204221945e-07, -3.384097908565309e-07, -9.694173058960587e-06, -1.7045722415787168e-05, 6.445843609981239e-06, -1.3794647202303167e-05, 1.1703977179422509e-05, -6.171601398818893e-07, -9.583478458807804e-06, 1.2185160812805407e-05, -3.4677700710972204e-08, -2.366849730606191e-05, 3.7283058190951124e-05, -4.3066207581432536e-05, -1.0154976735066157e-06, -6.581488491974596e-07, 3.4520724057074403e-06, 5.436938863567775e-07, -5.585882263403619e-06, 4.947885827277787e-06, 4.1178212995873764e-05, 1.6254734873655252e-06, -1.6459686946745933e-07, 9.296052667195909e-06], [6.570769983227365e-06, 3.892335371347144e-06, -2.614267941680737e-05, 5.796221103082644e-08, -2.0542949641821906e-05, -5.595222773990827e-06, -1.8849379557650536e-05, 1.0869782272493467e-05, 3.234198084101081e-05, 1.2703643733402714e-05, -1.3184664567233995e-05, 1.6917041648412123e-05, 2.663344275788404e-06, 2.4401420887443237e-05, 1.0291765647707507e-05, 1.2686000445683021e-05, -5.88834700465668e-06, 4.923140295431949e-06, 5.605193857299268e-45, 6.9965922193659935e-06, 1.4590539649361745e-05, 9.217988917953335e-06, -2.086893073283136e-05, -2.475695055181859e-06, 3.199556886102073e-08, -7.19384024705505e-06, -3.402203583391383e-05, -4.674597846587858e-07, 2.3932921976665966e-05, -1.3347238564165309e-05, -6.120163743617013e-05, 2.6294426788808778e-05, 6.468419451266527e-05, 1.0282794391969219e-05, -4.014195383206243e-06, 3.722694600583054e-06, 1.4711406493006507e-07, 1.6136521026055561e-06, 1.5677391274948604e-05, 4.5645039790542796e-05, 9.410643997398438e-07, -1.2510159649536945e-05, -4.261174581188243e-06, 5.6328699429286644e-05, -3.772276158997556e-06, -3.9607457438251e-06, 7.70255701354472e-06, -2.2423097334467457e-07, 2.0761062842211686e-06, -9.885927283903584e-06, -2.7867880447729476e-08, 2.3426537154591642e-06, 3.0503471862175502e-05, -5.4339790949597955e-05, -1.8314927956453175e-06, 5.400920144893462e-06, 7.723765520495363e-06, -6.359309281833703e-06, -1.2122016414650716e-05, 2.8486689188866876e-05, 3.623274096753448e-05, 2.3716951545793563e-05, 1.9135099194045324e-07, 5.587149189523188e-06], [-2.8245751309441403e-05, 6.916519487276673e-05, 3.7299654650269076e-05, 1.5388800420623738e-06, 4.373917181510478e-05, 2.1585285139735788e-05, -6.554919764312217e-06, -2.6849435016629286e-05, 2.0154673620709218e-05, 2.8399854272720404e-05, -1.7841337466961704e-05, -1.656765743973665e-05, -1.054978110914817e-05, -3.7187463021837175e-05, -1.9100081772194244e-05, -2.6790708943735808e-05, 1.4645259398093913e-05, -4.207476195006166e-06, 5.605193857299268e-45, -2.282820423715748e-05, 4.0016151615418494e-05, -2.1849453332833946e-05, 2.645764652697835e-05, -2.2555013856617734e-07, -5.407973731053062e-06, 1.6872130800038576e-05, 7.188350718934089e-05, -3.767482326111349e-08, -3.60866506525781e-05, -6.316195594990859e-06, 2.1566786017501727e-05, -1.4012131941854022e-05, 8.621141751063988e-05, -1.7239268345292658e-05, -2.2526121483679162e-06, 1.0839764286174614e-07, 1.8031871107382358e-08, 8.664727602081257e-09, -3.624997771112248e-05, -1.2716373021248728e-05, 3.0425189834204502e-06, 9.328493433713447e-06, 1.684026574366726e-05, 8.889555465430021e-05, -1.904637770167028e-06, 3.899161674780771e-05, -2.226676770078484e-05, 5.894727550526113e-08, 1.5179628462647088e-05, -2.8883798222523183e-05, -1.9838066744881644e-09, 5.19055720360484e-05, -5.785270332125947e-05, 5.563227750826627e-05, -1.2447477274690755e-05, 3.7385609630291583e-06, -1.8154425561078824e-05, -2.170545940316515e-06, 8.611843441030942e-06, -1.083820916392142e-05, -6.378030957421288e-05, 2.5733912480063736e-05, 2.423145595287224e-08, -1.3058068361715414e-05], [-0.00012383241846691817, 0.00021802156697958708, 0.00016514069284312427, 8.770846761763096e-06, 0.00023913175391498953, 0.00013274780940264463, -2.519893314456567e-05, -0.00011412930325604975, 4.5996195694897324e-05, 9.787535236682743e-05, -9.897958079818636e-05, -7.420179463224486e-05, -4.9370610213372856e-05, -0.00016281391435768455, -8.472265471937135e-05, -0.00011811826698249206, 8.48814015625976e-05, -1.5598760001012124e-05, 5.605193857299268e-45, -0.0001240019191754982, 0.00019050861010327935, -9.99750554910861e-05, 9.86839149845764e-05, -7.096491572156083e-07, 1.740980223985389e-05, 7.463587098754942e-05, 0.000317188270855695, -1.9751408331103448e-07, -0.00016148670692928135, -8.956394594861194e-07, 0.0001270600623684004, 6.420427234843373e-05, 0.0003142975037917495, -4.6315512008732185e-05, -1.492817227699561e-05, -7.852426051613293e-07, 1.2071291521920102e-08, 1.0144302677872474e-06, -0.0001990941382246092, -3.839489727397449e-05, 2.5828167053987272e-05, 4.470319618121721e-05, 7.502600055886433e-05, 0.00023441367375198752, -1.5523588444921188e-05, 0.000178076108568348, -9.808805043576285e-05, -4.329217162535315e-08, 6.264379771891981e-05, -0.0001781290047802031, -1.3332784654096486e-08, 0.0002266905939904973, -0.0002562489244155586, 0.00014163412561174482, 4.8089914344018325e-06, 1.45710746437544e-05, -7.740778528386727e-05, -1.075709042197559e-05, 4.2101688450202346e-05, -2.518901601433754e-05, -0.0002827468852046877, 0.00011711336992448196, 4.37282153598062e-07, -5.72281023778487e-05], [-4.180938617537322e-07, -7.352945203820127e-07, 4.734837375508505e-07, 2.0965416069884668e-07, 2.623511647925625e-07, 5.780062224403082e-07, 2.2884820793933613e-07, -7.449077656929148e-07, -1.2802897799701896e-06, 3.128328955881443e-07, -9.6652854608692e-07, -3.775858488097583e-07, -2.3365453216683818e-07, 2.3878953925304813e-08, -2.1659381843619485e-07, -4.493110736802919e-07, 5.632176112158049e-07, -4.867132119557027e-08, 5.605193857299268e-45, 4.787986540577549e-07, 1.211550852531218e-06, 2.6282094722773763e-07, 1.1152556567139982e-07, 3.279525628840929e-08, 7.056526101223426e-07, 1.4148375271361147e-07, 9.073821729543852e-07, -2.7639876165608257e-08, -5.449026048154337e-07, -1.6876472841431678e-07, -1.740326354138233e-07, 1.6922972463362385e-06, -2.4284975097543793e-07, -3.4512572710809764e-07, -2.0186499227747845e-07, 9.059672123612472e-08, 7.484859843032154e-09, -1.9359963232545851e-07, -4.3175612063350854e-07, -4.678359744048066e-07, 4.358088006028993e-07, -1.745601423408516e-07, 9.067720441180427e-08, 1.0044575446954696e-06, -1.9806201123628853e-08, 2.0123178501307848e-07, -4.079087148056715e-07, 3.725622477190882e-08, 1.9383728044886084e-07, 2.3145361183196655e-09, -5.145342374390793e-09, -7.19798777026881e-07, -7.85238626122009e-07, -2.0173508801235585e-06, -9.230095088241796e-08, -1.188897300608005e-07, -1.5049005241962732e-07, 6.323218570969402e-08, -6.206180103163206e-08, -2.2836624680167006e-07, -9.859735428108252e-07, 5.04123988775973e-07, -8.649222671408552e-09, -1.299537473187229e-07], [1.2252158398950996e-07, -4.804271043212793e-07, 2.0118389443268825e-07, -7.792488077029702e-08, 6.765625926163921e-08, -1.333890651267211e-07, 6.585598839592421e-07, 7.317319017374757e-08, -5.058948886471626e-07, -2.9542388091385874e-08, 9.68813722579398e-08, 8.056403544287605e-08, 6.043963907131911e-08, 5.175941168999998e-07, 8.53206856277211e-08, 1.396990683133481e-07, 1.0567704578079429e-07, -7.981949323720983e-09, 5.605193857299268e-45, 9.943557444103135e-08, -3.0538370765498257e-07, 8.978064869324953e-08, -6.639572802669136e-08, -7.831973292127259e-09, 3.2737349897615786e-07, 5.5661615760982386e-08, -2.9375681265264575e-07, -2.7113304934545113e-09, 2.0757448737640516e-07, -1.21861731372519e-07, -3.2341318956241594e-08, 6.215400389919523e-07, -5.330019803295727e-07, 4.204602888080444e-09, 2.2328103455038217e-07, 1.4727434916039783e-07, 4.06303923838891e-09, -7.935347490217737e-09, 1.8189379602517874e-07, -1.0410879269784346e-07, 1.149971211589218e-07, -1.4335427067635464e-08, -4.86417377487669e-08, 4.4186656111833145e-08, 8.716701671573901e-08, -1.559859299504751e-07, -1.1758397278072152e-07, -3.355571820407022e-08, 1.8716484362357733e-08, 3.55776990090817e-07, -4.5461012732062045e-09, -5.465603862830903e-07, 2.4155900746336556e-07, -1.5345141264333506e-06, 5.347467890715052e-08, -4.354301097464486e-08, 7.392905132519445e-08, 4.0447165616797065e-08, -6.002717611863773e-08, -1.0034152353455283e-07, 3.3039708569049253e-07, 2.7132222157888464e-07, -2.2842714386683838e-09, 7.848684902000969e-08], [-3.4921831115752866e-07, -1.7303673303104006e-06, 1.214811732097587e-06, 4.0987373495227075e-09, 4.6227054895098263e-07, 1.2791434755854425e-06, 3.643081072368659e-06, -1.3111110774843837e-06, -3.500433876979514e-06, 2.810928378949029e-07, -1.6355750176444417e-06, -3.088520372784842e-07, -1.5321215585117898e-07, 1.5387258827104233e-06, -2.1360636992540094e-07, -2.773523135601863e-07, 5.293826461638673e-07, -1.372632425500342e-07, 5.605193857299268e-45, 7.636846248715301e-07, 1.768057927620248e-06, 8.651135772197449e-07, 3.67918374877263e-07, 1.7916654826422018e-08, 2.3908960429253057e-06, 6.197667516971705e-07, 6.653257287325687e-07, -5.6924687186210576e-08, -2.6143698050873354e-07, -8.177324843927636e-07, 1.9578550336518674e-07, 3.0050086934352294e-06, -1.9001145119545981e-06, -6.547397219947015e-07, 5.43527903573704e-07, 4.670618238833413e-07, 3.1128770672239625e-09, -3.6009780046697415e-07, -2.8020838271913817e-07, -8.385929390897218e-07, 8.103079949250969e-07, -1.4952900073694764e-07, 1.9947623286498128e-07, 2.8090803425584454e-06, 2.7604812657955335e-07, 6.964277190490975e-07, -1.2077091469109291e-06, 5.1481766405458984e-08, 4.118501237826422e-07, 7.689693575230194e-07, -2.5160259653489447e-08, -1.939899448188953e-06, -7.548028975179477e-07, -6.994722753006499e-06, -1.4829026895313291e-08, -2.4145813881659706e-07, 1.579774107085541e-07, 3.253369698086317e-07, -2.143181916380854e-07, -8.515021363564301e-07, -8.149552854774811e-07, 1.2724926818918902e-06, -2.357662332030941e-08, 1.8653085476216802e-07], [5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 1.401298464324817e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 5.605193857299268e-45, 5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45], [1.2566403029268258e-06, 9.033469723362941e-06, 1.1677969702361679e-08, -7.669261208320677e-07, 4.7809185161895584e-06, 1.9965815226896666e-05, 2.658081939443946e-06, 8.820046559776529e-07, 3.5978915548184887e-05, -1.0897691709033097e-06, 4.077144694747403e-06, 1.3196148529459606e-06, 1.4023969470144948e-06, -1.4506217667076271e-05, -2.931820404228347e-07, 6.173700626277423e-07, -1.6578203485551057e-06, -1.7308258293269319e-07, -5.605193857299268e-45, 8.723264727450442e-06, -2.758410482783802e-05, -6.918864073668374e-06, -2.035808677192108e-07, -1.0331986004530336e-06, 1.908357916136083e-07, -6.194237585077644e-07, -1.1316570862618391e-06, -6.428141352543548e-10, 1.4191234640748007e-06, -2.8517479222500697e-06, -1.0303308954462409e-05, -3.011835906363558e-05, -2.432625842629932e-05, 8.635385029265308e-07, -3.6831063425779575e-06, 3.810999515962976e-08, 6.744204639197449e-10, 1.2222000390983462e-15, 1.170952032225614e-06, 1.1339475349814165e-06, 1.0703222415031632e-06, -5.507686182681937e-07, 3.5184808666599565e-07, 2.872739059966989e-06, 5.988676548440708e-06, 9.361845059174811e-07, 1.3500649629349937e-06, 1.0957781348963636e-09, -2.0187147242722858e-07, 1.2976632206118666e-05, 4.254013252226983e-14, -8.641987733426504e-06, 1.538609240014921e-06, -6.650254817941459e-06, 2.4493608634656994e-06, -4.163012761182472e-07, 9.568241665647292e-08, 1.1406360727050924e-06, -3.629572233876388e-07, -9.278061043005437e-06, 2.6660978846848593e-07, -1.4386620023287833e-05, -2.505256269103029e-08, -1.6179080830625026e-06], [5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45], [-9.46596082940232e-06, -7.088001439115033e-07, 7.696276952628978e-06, 7.144982561158031e-08, -2.431503526167944e-05, -9.954756023944356e-06, 1.7453305645176442e-07, -4.381979124445934e-06, 4.344545686763013e-06, -3.361246854183264e-07, -6.669342383247567e-06, -6.406197371688904e-06, -1.2050368241034448e-05, -1.4594496633435483e-06, 9.205564879266603e-07, -1.2842686373915058e-05, -5.4202053433982655e-05, -2.9594002626254223e-06, -5.605193857299268e-45, -4.529767102212645e-05, -1.4491548427031375e-05, -8.240631723310798e-05, -1.0263707963531488e-06, 4.347569415585895e-09, -2.698035132198129e-06, 1.517556370345119e-06, 1.622939271328505e-05, 1.6288481674564537e-08, -9.811547897697892e-06, 1.2945562048116699e-05, 1.0923241461568978e-05, -0.00011057288065785542, 2.2805168555350974e-05, -1.7803608898248058e-06, 4.60859555460047e-05, 5.2987555676509146e-08, 5.4563074058933125e-09, 1.6555053768824157e-12, -1.4331079000839964e-05, -9.000735872177756e-07, 3.940615158626315e-07, -3.4774336654663784e-06, 2.7578628305491293e-06, -1.7758467947714962e-05, 1.39221549488866e-06, 6.125098298070952e-05, -3.9998490137804765e-06, -8.227240222424825e-09, 6.333871624519816e-06, -2.51278979703784e-05, 1.2591999717529527e-22, 8.508704922860488e-05, -1.7210169971804135e-05, 0.00011750132398447022, -3.6380652090883814e-06, 8.11483187135309e-06, -4.166859525867039e-06, -1.2628497643163428e-05, -5.015848728362471e-06, 1.2038472050335258e-06, -4.386625732877292e-06, -5.2882965974276885e-05, 7.629541869391687e-06, -2.068567118840292e-05], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [-3.4164622775278986e-06, 1.4771637324884068e-05, -9.440003623240045e-08, -2.2808502819771093e-07, -8.628132491139695e-06, 8.414913281740155e-07, -1.2245111975062173e-05, -2.091815304083866e-06, -3.012143133673817e-05, 1.4399660358321853e-05, 2.556440676926286e-06, 1.436661250409088e-06, -2.2615886337007396e-06, -1.9686829091369873e-06, -2.162120864568351e-07, -3.3394512684026267e-06, -2.622623651404865e-05, 9.483362646278692e-07, 5.605193857299268e-45, -1.4444209227804095e-05, 2.068533649435267e-05, -1.702663030300755e-05, -6.409858883671404e-07, 1.347775224758152e-07, -1.914360154842143e-06, -1.0059861779154744e-06, 4.4759094635082874e-06, 3.340569776355551e-08, -1.4294820971372246e-07, -4.138044823775999e-05, 1.4762080354557838e-05, -4.6639834181405604e-05, 2.0315277652116492e-05, -6.591787951037986e-06, 2.3472177872463362e-06, -3.0042539833630144e-07, 3.871632792140645e-09, 1.0461754840207504e-07, -4.69323413199163e-06, -9.528394912194926e-06, -7.222269005069393e-07, -2.96530879495549e-06, 1.6347127029803232e-06, -2.762981785053853e-05, 1.8283877807334648e-06, 9.502417015028186e-06, -9.600857993063983e-07, -3.494745044463343e-07, 3.0185974537744187e-06, 1.2322519978624769e-05, -1.3079781702174387e-08, 4.544270723272348e-06, -3.1879701509751612e-06, 4.7763118345756084e-05, 1.3234915741122677e-06, 3.2898333302000538e-06, -1.5259701058312203e-06, -5.684148618456675e-06, 2.4214614313677885e-06, 4.490107585297665e-06, -1.314559767706669e-06, -2.9618595362990163e-06, -1.20051879548555e-07, -5.014701855543535e-06], [1.1164132729390985e-07, 0.00021121623285580426, 2.1644036678480916e-06, -8.242667490776512e-07, 0.00016658485401421785, -4.9088539526565e-06, 4.192602864350192e-05, -1.7467698398831999e-06, 2.5985209504142404e-06, 4.515150976658333e-06, 2.7726797270588577e-05, -7.351477506745141e-07, -1.7804485423766891e-06, -1.2107309430575697e-06, -1.708684322920817e-07, -2.1183961962378817e-06, -7.549345900770277e-05, -2.913581965913181e-06, 5.605193857299268e-45, -3.359449692652561e-05, -0.0001509809953859076, 3.976492735091597e-06, 1.5942110564992618e-07, -7.951985026011243e-07, 2.0379151465022005e-05, 1.8436111304254155e-07, 4.4580929170479067e-08, -8.014383752197318e-07, -3.8159369069035165e-06, -2.4204689452744788e-06, -0.000126190745504573, -6.067490539862774e-05, 2.969544948427938e-05, -2.4574252165621147e-05, 3.6070683563593775e-05, 4.5537362893810496e-06, 1.5703104372377652e-09, -1.4155748431221582e-06, 9.584575309418142e-06, 4.9980149924522266e-05, 4.196224381303182e-07, -2.564501301094424e-06, -1.0468970685906243e-06, 0.00011131074279546738, 8.255568673121161e-07, 7.701309368712828e-05, 1.9534092643880285e-05, 2.671636138984468e-07, -1.4601819202653132e-06, 1.8527107386034913e-05, -2.159797318768142e-08, 7.046019163681194e-06, -2.5557392291375436e-06, -7.712005754001439e-05, -2.2660588001599535e-06, 4.1425693098062766e-07, -9.892046364257112e-07, 5.454245410874137e-07, 2.8578328965522815e-06, -5.3395160648506135e-06, -1.3124821407473064e-06, 3.421441942919046e-05, 2.227989625680493e-06, -2.7319081709720194e-05], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]], [[-1.8448611172061646e-06, -5.704785532689765e-28, 5.605193857299268e-45, -2.899974788306281e-06, 1.4194290997693315e-05, -5.003711294193636e-07, -2.1933731204626383e-06, 1.7187395542350714e-06, -9.62200738285901e-06, 4.0585306562184595e-19, 3.053475552405871e-07, -5.605193857299268e-45, -1.2393401220833766e-06, -7.005987754382659e-06, -3.8541475078091025e-06, 8.33145713841077e-06, -1.1895416491825017e-06, -9.221118380644848e-26, -5.605193857299268e-45, 9.6565781859681e-07, -2.144235168088926e-06, 1.6810499801067635e-06, -1.6910511249079718e-06, 1.106314584831125e-06, 8.934561037676758e-07, -1.4018789897818351e-06, 7.4349823080410715e-06, -2.4856728487065993e-05, -5.605193857299268e-45, -3.558235988992476e-20, -1.590502870385535e-05, 7.629947731402353e-07], [-1.0339679647586308e-05, -5.699209965500764e-28, 5.605193857299268e-45, 2.5210088097082917e-06, 3.517851382639492e-06, -1.285066446143901e-06, -6.12197300142725e-06, 4.876968887401745e-06, 3.3535675356688444e-06, 9.353050093350138e-19, 6.259019613708006e-08, -5.605193857299268e-45, -3.4672652873268817e-06, -3.699035460158484e-06, -4.224572421662742e-06, 4.073480795341311e-06, -3.336935606057523e-06, 3.998828815185772e-38, 5.605193857299268e-45, -2.048209580607363e-06, -5.948658326815348e-06, 4.347607955423882e-06, -4.7199732762237545e-06, 3.0253725071816007e-06, 2.653497858773335e-06, -3.958029992645606e-06, 3.7340478229452856e-06, -5.815223175886786e-06, -5.605193857299268e-45, -1.0104767826161085e-23, -2.966195097542368e-06, 2.1680211830243934e-06], [3.997189924120903e-05, -1.5683322201764124e-32, 5.605193857299268e-45, -2.587497147032991e-05, -2.4413986920990283e-06, 1.071143378794659e-05, 4.964765321346931e-05, -3.9536691474495456e-05, -2.9104283385095187e-05, 5.710522525857433e-19, -3.6359871558033774e-08, -5.605193857299268e-45, 2.8085525627830066e-05, -8.799393924618926e-08, -6.885687980684452e-06, -3.712527177412994e-05, 2.7012751161237247e-05, -3.3444194415532996e-25, -5.605193857299268e-45, -1.1889823644848504e-21, 4.844278373639099e-05, -3.50464106304571e-05, 3.838608608930372e-05, -2.4720007786527276e-05, -2.1471809304784983e-05, 3.204891618224792e-05, -3.1738301913719624e-05, -2.287766255903989e-05, -5.605193857299268e-45, -2.861286461227542e-24, 7.050065505609382e-06, -1.762865940690972e-05], [-2.1784974251204403e-06, -4.2510070473450516e-40, 5.605193857299268e-45, -2.356433014938375e-06, 2.278332431160379e-06, 3.3908617069755564e-07, 1.6499423054483486e-06, -1.2979437542526284e-06, -9.804823548620334e-07, 1.5619287034155622e-28, 2.547281496845244e-07, -5.605193857299268e-45, 9.245341630048642e-07, -2.105028897858574e-06, -8.452072393083654e-07, -1.18721050057502e-06, 9.012768487082212e-07, 5.605193857299268e-45, -5.605193857299268e-45, -1.8152878737964784e-06, 1.5894072475930443e-06, -1.1188157031938317e-06, 1.260965404981107e-06, -8.124728196889919e-07, -7.107104806891584e-07, 1.0648103625499061e-06, 1.4929214842140937e-07, -3.0123953820293536e-06, -5.605193857299268e-45, -6.22145784035844e-27, -9.457502869736345e-08, -5.744180384681385e-07], [-2.227381628472358e-05, -2.178702188445314e-33, 5.605193857299268e-45, -8.332472134497948e-08, 9.3531443781103e-06, -3.348266545799561e-06, -1.581611650181003e-05, 1.2595988664543256e-05, 4.1482780943624675e-06, 1.9182192260061297e-18, -3.1414135737151128e-09, -5.605193857299268e-45, -8.949968105298467e-06, -9.900045370159205e-06, -1.1347749023116194e-05, 1.3881430277251638e-05, -8.616607374278829e-06, -2.5529117358050972e-30, 5.605193857299268e-45, -4.9790824050433e-06, -1.5395995433209464e-05, 1.1359503332641907e-05, -1.2211743523948826e-05, 7.83390350989066e-06, 6.86246403347468e-06, -1.0231538908556104e-05, 1.0234940418740734e-05, -2.436796057736501e-05, -5.605193857299268e-45, -4.142921829409826e-26, -8.848219295032322e-06, 5.614069777948316e-06], [-7.583362275909167e-06, -1.3048830189404615e-28, 5.605193857299268e-45, 1.1075492238887819e-06, 3.5820196444547037e-06, -1.0800567906699143e-06, -5.237165169091895e-06, 4.1729590520844795e-06, -6.316892040558741e-07, 3.404030975872295e-19, -1.862418059772608e-07, -5.605193857299268e-45, -2.9685531899303896e-06, -7.393610303552123e-06, -7.529549293394666e-06, 3.12329939333722e-06, -2.8579863737832056e-06, -5.0067392660279705e-30, -5.605193857299268e-45, -9.479567211201356e-07, -5.080124992673518e-06, 3.809553618339123e-06, -4.033079221699154e-06, 2.5771671516849892e-06, 2.2801450541010126e-06, -3.3977037219301565e-06, 2.3353479718934977e-06, -1.0431492228235584e-05, -5.605193857299268e-45, -1.0616282358543476e-20, -8.545433956896886e-06, 1.860840143308451e-06], [1.730899566609878e-05, 2.323011860863366e-29, 5.605193857299268e-45, -1.0795838534249924e-05, -4.595433438225882e-06, 4.5515375859395135e-06, 2.095471791108139e-05, -1.6736794350435957e-05, -2.5928115064743906e-05, 3.7174458325595157e-19, -3.350438362303976e-07, 5.605193857299268e-45, 1.187104317068588e-05, -8.338590305356774e-06, 1.805788451747503e-05, -1.3774979379377328e-05, 1.1393620297894813e-05, -5.605193857299268e-45, 5.605193857299268e-45, 4.0565993231211905e-07, 2.0494375348789617e-05, -1.474555756431073e-05, 1.624169817660004e-05, -1.0450283298268914e-05, -9.112283805734478e-06, 1.3533764104067814e-05, -8.96543133421801e-06, 7.706811629759613e-06, -5.605193857299268e-45, 2.3354227099068054e-25, -1.0224966899841093e-05, -7.474125595763326e-06], [2.3248223442351446e-05, -1.2737849318319435e-27, 5.605193857299268e-45, -2.3066957510309294e-05, 2.155634865630418e-05, 6.949058388272533e-06, 3.2297652069246396e-05, -2.5707417080411687e-05, -2.071333619824145e-05, 1.4807973109167767e-22, 4.3182382114537177e-07, 5.605193857299268e-45, 1.8260778233525343e-05, 3.111109094788844e-07, 8.122985946101835e-07, -1.7511227270006202e-05, 1.7577398466528393e-05, -1.7472483887525684e-25, 5.605193857299268e-45, 7.657246783310256e-07, 3.1501342164119706e-05, -2.265801958856173e-05, 2.4962373572634533e-05, -1.607167905604001e-05, -1.4013896361575462e-05, 2.0859966753050685e-05, -1.080088441085536e-05, -3.7928995880065486e-05, 5.605193857299268e-45, -1.3802932822064506e-19, -2.110890363837825e-06, -1.146847444033483e-05], [3.009577085322235e-07, -3.076288919911081e-33, 5.605193857299268e-45, -6.151291017886251e-06, -2.9518757855839795e-06, 1.957630956894718e-06, 8.84489872987615e-06, -7.024250407994259e-06, -3.7256122595863417e-06, 9.910079721697941e-19, -7.285998027128926e-09, -5.605193857299268e-45, 4.986753992852755e-06, -5.497684924193891e-06, 2.514147809051792e-06, -5.622370736091398e-06, 4.801913746632636e-06, -5.605193857299268e-45, -5.605193857299268e-45, -2.162780219805427e-06, 8.656266800244339e-06, -6.010728156979894e-06, 6.84753604218713e-06, -4.431519755598856e-06, -3.813795956375543e-06, 5.690510988642927e-06, -4.73669433631585e-06, -1.996235369006172e-06, -5.605193857299268e-45, -2.7773932733247767e-24, -2.4039320578594925e-06, -3.1305230550060514e-06], [1.362110378977377e-05, -1.9214948888371766e-28, 5.605193857299268e-45, -7.974995241966099e-06, -9.912460882333107e-06, 3.679590008687228e-06, 1.690273347776383e-05, -1.350230559182819e-05, -1.045717544911895e-05, 1.0473518965817265e-18, -7.119453471204906e-07, 5.605193857299268e-45, 9.585737643647008e-06, -1.8196994258645738e-11, -3.159093921567546e-06, -1.1064203135902062e-05, 9.187948307953775e-06, -1.2241276054068985e-25, 5.605193857299268e-45, 1.4817426574609271e-07, 1.6535203030798584e-05, -1.19689320854377e-05, 1.3101709555485286e-05, -8.432356480625458e-06, -7.364496013906319e-06, 1.0909770026046317e-05, -1.1629443179117516e-05, -1.3527835108106956e-05, 5.605193857299268e-45, -3.6303898875379685e-21, 4.896945029031485e-06, -6.025563379807863e-06], [-9.640668849897338e-07, -2.0708159689147863e-28, 5.605193857299268e-45, -1.0744811334006954e-05, 1.566711944178678e-05, 1.6815972685435554e-06, 7.692685358051676e-06, -6.119033059803769e-06, -7.146498774091015e-06, 2.5399401426704732e-20, -9.574378054821864e-07, -5.605193857299268e-45, 4.343731234257575e-06, -1.1356043614796363e-05, 4.175004505668767e-06, 1.4400453665075474e-06, 4.181455551588442e-06, -5.605193857299268e-45, -5.605193857299268e-45, 7.672589958929166e-07, 7.5118923632544465e-06, -4.82275345348171e-06, 5.950245395069942e-06, -3.8447110455308575e-06, -3.4234901704621734e-06, 4.951646587869618e-06, 1.1350402928655967e-06, -3.128660682705231e-05, -5.605193857299268e-45, -1.093973243471287e-19, -1.6403815607191063e-05, -2.7224682526139077e-06], [-3.1103292712941766e-05, -6.234076822243557e-28, 5.605193857299268e-45, 1.3673129615199286e-05, 4.0662776882527396e-05, -8.518839422322344e-06, -3.916036439477466e-05, 3.119620305369608e-05, 1.4969655239838175e-05, 1.741817790500368e-18, -5.829418796565733e-07, -5.605193857299268e-45, -2.2174022888066247e-05, -4.243864168529399e-06, -1.847055318648927e-05, 3.1926836527418345e-05, -2.129406129824929e-05, -9.421680102821468e-26, -5.605193857299268e-45, 2.2036447262507863e-06, -3.827466207440011e-05, 2.79474970739102e-05, -3.0318335120682605e-05, 1.953872197191231e-05, 1.687355324975215e-05, -2.527807555452455e-05, 3.188287519151345e-05, -5.829496149090119e-05, -5.605193857299268e-45, -1.138191604831987e-19, -2.2740307031199336e-05, 1.3930464774603024e-05], [-2.431103894195985e-05, -7.570477203241429e-28, -5.605193857299268e-45, 1.025261553877499e-05, 3.212524461559951e-05, -6.395717718987726e-06, -2.9716546123381704e-05, 2.3647840862395242e-05, 1.1642003300949e-05, 6.231216076873117e-23, -1.6094254817744513e-07, -5.605193857299268e-45, -1.680331479292363e-05, -5.5256468840525486e-06, -2.0164392481092364e-05, 2.858380503312219e-05, -1.6171192328329198e-05, -9.247095940032325e-26, -5.605193857299268e-45, 1.3710130133404164e-06, -2.8982251023990102e-05, 2.120430872309953e-05, -2.2963964511291124e-05, 1.478499689255841e-05, 1.2778063137375284e-05, -1.9189603335689753e-05, 2.424284139124211e-05, -3.695552732096985e-05, -5.605193857299268e-45, -7.639268219694366e-20, -1.8230881323688664e-05, 1.05471799543011e-05], [2.135057184204925e-05, -7.5622679268534785e-28, 5.605193857299268e-45, -1.8840688426280394e-05, -3.47633931596647e-06, 6.697328444715822e-06, 3.0933544621802866e-05, -2.460051837260835e-05, -1.486426390329143e-05, 3.3839674516208797e-19, -1.5639439254755416e-07, 5.605193857299268e-45, 1.748625436448492e-05, -2.5041790649993345e-06, -1.173933833342744e-05, -2.0261957615730353e-05, 1.6826073988340795e-05, -5.514066853272919e-26, 5.605193857299268e-45, 5.561570333156851e-07, 3.018894676642958e-05, -2.145429971278645e-05, 2.391292218817398e-05, -1.5416371752507985e-05, -1.3391114407568239e-05, 1.9960622012149543e-05, -1.8030275896308012e-05, -2.265860530314967e-05, -5.605193857299268e-45, -1.4010905415105944e-19, -3.5518435197445797e-06, -1.0971672054438386e-05], [-4.1978955778176896e-07, -1.4212808321753817e-27, 5.605193857299268e-45, -5.883644462301163e-06, 2.4328161089215428e-05, -2.981449256367341e-07, -1.28223427964258e-06, 1.0105954970640596e-06, -1.398955373588251e-05, 2.5036528924205083e-19, 4.5170767748459184e-07, -5.605193857299268e-45, -7.313182095458615e-07, -8.807698577584233e-06, -1.6785701518529095e-05, 6.892255441925954e-06, -6.932356768629688e-07, -2.997726906622243e-25, -5.605193857299268e-45, 1.920438080560416e-06, -1.257713847735431e-06, 9.950514368028962e-07, -9.925597623805515e-07, 6.502503424599126e-07, 5.122931270307163e-07, -8.168049703272118e-07, 8.340687600139063e-06, -3.2409345294581726e-05, -5.605193857299268e-45, -1.211955048215491e-19, -2.031700023508165e-05, 4.4809675614487787e-07], [-3.197387923137285e-05, -1.6945452541946534e-27, 5.605193857299268e-45, 6.944890174054308e-06, 5.227803922025487e-05, -7.722668669885024e-06, -3.5801713238470256e-05, 2.8507520255516283e-05, 1.0547129022597801e-05, 1.837655143065915e-18, 4.0147162394532643e-07, -5.605193857299268e-45, -2.026024230872281e-05, -5.391819286160171e-06, -1.6893982319743372e-05, 3.329587707412429e-05, -1.9477140085655265e-05, -4.2421346467881766e-26, -5.605193857299268e-45, 1.7436619259569852e-07, -3.49343208654318e-05, 2.5373932658112608e-05, -2.7679938284563832e-05, 1.781741411832627e-05, 1.5442150470335037e-05, -2.310943091288209e-05, 3.602473589126021e-05, -3.4084554499713704e-05, -5.605193857299268e-45, -1.823180387075032e-19, -1.7946740626939572e-05, 1.2707225323538296e-05], [4.2250623664585873e-05, -2.7875411304235676e-34, 5.605193857299268e-45, -3.1192757887765765e-05, -4.037789949506987e-06, 1.1337993782944977e-05, 5.236837750999257e-05, -4.1699888242874295e-05, -2.8699118047370575e-05, 2.580501331747923e-19, -9.94129436548974e-07, -5.605193857299268e-45, 2.962594044220168e-05, -4.808443463844014e-06, 3.469827788649127e-06, -3.934058622689918e-05, 2.8482965717557818e-05, -2.584880496179353e-25, 5.605193857299268e-45, -6.384671280557086e-08, 5.112196959089488e-05, -3.690471203299239e-05, 4.0501174225937575e-05, -2.6091911422554404e-05, -2.2697042368235998e-05, 3.378633118700236e-05, -3.6358102079248056e-05, -4.2875060898950323e-05, -5.605193857299268e-45, -4.750445429454937e-24, -1.2948648873134516e-06, -1.8585880752652884e-05], [-4.4922990127815865e-06, 1.9703620509839108e-29, 5.605193857299268e-45, -2.7644682631944306e-06, 9.820111699809786e-06, -1.4403468640011852e-08, -1.2215281230965047e-07, 9.587654403730994e-08, -6.934486918908078e-06, 6.933609357166357e-19, 1.04527160260659e-08, -5.605193857299268e-45, -7.871977913964656e-08, -4.583322152029723e-06, -2.1290123186190613e-05, 8.92647449290962e-07, -6.746302005922189e-08, -1.1799232915447733e-25, -5.605193857299268e-45, 1.3086091144032252e-07, -1.125011976910173e-07, 2.337516775696713e-07, -9.054025440491387e-08, 5.156311999598984e-08, 5.3785271347805974e-08, -8.204551704693586e-08, 3.4183494790340774e-06, -2.20905349124223e-05, -5.605193857299268e-45, -1.4955733082749034e-19, -9.550581125949975e-06, 4.154964017288876e-08], [-5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45], [-2.58853287959937e-05, 1.7399717786069263e-29, -5.605193857299268e-45, 8.368564522243105e-06, 6.513763764814939e-06, -4.920472747471649e-06, -2.291213058924768e-05, 1.824717764975503e-05, 8.466755389235914e-06, 9.808479195009584e-19, -4.5888060640209005e-07, -5.605193857299268e-45, -1.2967650036443956e-05, -6.731576831953134e-06, -7.2951488618855365e-06, 1.8883096345234662e-05, -1.2469952707760967e-05, -5.605193857299268e-45, -5.605193857299268e-45, 1.5088996860868065e-06, -2.2349535356624983e-05, 1.6673086065566167e-05, -1.771174356690608e-05, 1.1393352906452492e-05, 9.915374903357588e-06, -1.4805567843723111e-05, 2.109094384650234e-05, -1.5548825103905983e-05, -5.605193857299268e-45, -9.197240285218119e-20, -1.659308145463001e-05, 8.143660124915186e-06], [4.606004495144589e-06, -1.873964461544252e-33, 5.605193857299268e-45, -1.7673621641733916e-06, -7.889556400186848e-06, 5.542668759517255e-07, 2.6329589672968723e-06, -2.1190526240388863e-06, -1.5110551885300083e-06, -8.237544318694718e-23, -1.4772905565507699e-08, -5.605193857299268e-45, 1.500578264312935e-06, 1.909179445647169e-06, 8.870429155649617e-07, -1.2605323718162253e-06, 1.4325173651741352e-06, -1.6689638046706982e-25, -5.605193857299268e-45, 1.477627279200533e-06, 2.5693448151287157e-06, -1.8911860024672933e-06, 2.0396869331307244e-06, -1.2980044630239718e-06, -1.160056399385212e-06, 1.7027064131980296e-06, -1.2154534942965256e-06, -9.52224581851624e-07, 5.605193857299268e-45, -1.2783100552378172e-19, 2.8269282665860374e-06, -9.403379408468027e-07], [-8.249295206042007e-06, 5.605193857299268e-45, -5.605193857299268e-45, 4.509011887421366e-06, 6.089569978939835e-06, -2.2005929167789873e-06, -1.0016092346631922e-05, 7.99355620983988e-06, 1.8410637494525872e-06, 1.9045776490503924e-23, 2.344194882653028e-08, -5.605193857299268e-45, -5.679809873981867e-06, -5.871549547009636e-06, -8.658184015075676e-06, 6.929821211087983e-06, -5.443208465294447e-06, -5.605193857299268e-45, -5.605193857299268e-45, -7.21483775500964e-11, -9.80617551249452e-06, 7.184122296166606e-06, -7.767126589897089e-06, 5.010369932278991e-06, 4.327527221903438e-06, -6.459754331444856e-06, 5.1961615099571645e-06, -9.63460661296267e-06, -5.605193857299268e-45, -1.292115733114542e-31, -1.3421418771031313e-05, 3.5692623896466102e-06], [-1.2140319540776545e-06, -6.989016804836562e-28, 5.605193857299268e-45, -2.954118826892227e-06, 1.7178492271341383e-05, 1.786195156228132e-07, 5.757073608947394e-07, -4.876972070633201e-07, 1.0490880413271952e-06, 1.2131193049276595e-18, -4.059707237047405e-08, -5.605193857299268e-45, 3.4591079156598425e-07, 2.83924396171642e-06, -1.6627753211650997e-05, 8.972635441750754e-06, 3.00551761256429e-07, -2.697287258716558e-25, 5.605193857299268e-45, 3.3428234473831253e-06, 6.155290748210973e-07, -3.613680803482566e-07, 4.845793455388048e-07, -3.1418045409736806e-07, -2.637189879806101e-07, 3.6286388649386936e-07, 9.815101293497719e-06, -1.9757146219490096e-05, 5.605193857299268e-45, -2.3636838515128205e-19, -5.105027867102763e-07, -2.219176451490057e-07], [2.5359605615449254e-07, -8.053486482229016e-40, -5.605193857299268e-45, -2.1263485905365087e-06, -1.1877523320436012e-07, 1.3131603964211536e-06, 5.910977051826194e-06, -4.737207746075001e-06, -3.978671429649694e-06, -1.818913335911426e-27, -1.4196375275332684e-07, -5.605193857299268e-45, 3.357432660777704e-06, 7.030193387436157e-07, 5.259018053038744e-06, -1.4093767504164134e-06, 3.2087484669318656e-06, 2.5458173928528974e-39, -5.605193857299268e-45, 6.353635058076179e-07, 5.80953656026395e-06, -4.048252776556183e-06, 4.600814008881571e-06, -2.967482259919052e-06, -2.5933479719242314e-06, 3.8165098885656334e-06, 2.9657795153070765e-07, 2.9265613648021827e-06, -5.605193857299268e-45, -1.4188146794362617e-21, -1.501519193425338e-07, -2.123499598383205e-06], [2.2384203930414515e-06, -1.932909062735723e-40, -5.605193857299268e-45, -4.427580734045478e-06, -4.375833213998703e-06, 2.2234155494516017e-06, 1.0258996553602628e-05, -8.191117558453698e-06, -9.342848898086231e-06, 1.4917032920802857e-18, 2.711061313220853e-07, -5.605193857299268e-45, 5.804615739180008e-06, -2.213194875366753e-06, 8.795072972134221e-06, -2.739177944022231e-06, 5.579235676123062e-06, -5.605193857299268e-45, -5.605193857299268e-45, 6.537836156894627e-07, 1.0029897566710133e-05, -6.979828867770266e-06, 7.948620805109385e-06, -5.1166798584745266e-06, -4.454614099813625e-06, 6.630206371482927e-06, -1.5351133697549812e-07, 5.555476036533946e-06, -5.605193857299268e-45, -6.014112932559968e-20, -1.5521121667916304e-06, -3.6622809602704365e-06], [1.1645534868875984e-05, -1.1212594413646138e-28, 5.605193857299268e-45, -1.525462357676588e-05, 2.769592174445279e-05, 4.62605794382398e-06, 2.1505034965230152e-05, -1.7096177543862723e-05, -2.115751340170391e-05, 2.300731736283567e-18, 9.378502419110646e-09, -5.605193857299268e-45, 1.2138043530285358e-05, -5.410239282355178e-06, -3.8538699300261214e-05, -1.57633148774039e-05, 1.1703466952894814e-05, -4.152482453802555e-25, -5.605193857299268e-45, 1.7374917149481917e-07, 2.0958255845471285e-05, -1.4931532859918661e-05, 1.6604135453235358e-05, -1.070041525963461e-05, -9.276850505557377e-06, 1.3878823665436357e-05, -7.552459464932326e-06, -4.8612877435516566e-05, -5.605193857299268e-45, -1.7748537815032992e-19, -1.1725016520358622e-05, -7.618612016813131e-06], [-4.918690137856174e-06, -4.716401174125152e-28, 5.605193857299268e-45, -7.161685061873868e-06, 2.3104954379959963e-05, 6.891610837556073e-07, 3.0848957521811826e-06, -2.514522293495247e-06, -2.1533505787374452e-05, 1.7054475119964182e-19, -5.967262950434815e-07, -5.605193857299268e-45, 1.759685233082564e-06, -1.4220529919839464e-05, -2.7568763471208513e-05, 7.841117621865124e-07, 1.671972313488368e-06, -2.872084290690594e-25, -5.605193857299268e-45, 4.5386494207377837e-07, 3.0537530619767494e-06, -2.0558086362143513e-06, 2.4227240373875247e-06, -1.5502060932703898e-06, -1.3945771115686512e-06, 1.997488197957864e-06, 1.007601349556353e-05, -4.083538442500867e-05, -5.605193857299268e-45, -2.2214134390446454e-19, -2.160721123800613e-05, -1.1308119383102166e-06], [-2.010410298680654e-06, 5.605193857299268e-45, -5.605193857299268e-45, -1.231419446412474e-07, 4.4009323119098553e-07, -4.25401935899572e-08, -1.8845472027351207e-07, 1.4839184814263717e-07, 5.733239216709762e-09, -1.0289094875649174e-27, -1.1255066878490538e-09, -5.605193857299268e-45, -1.0653304371999184e-07, -1.3779938399238745e-06, -9.189604384118866e-07, 8.111243801067758e-07, -1.0190508703544765e-07, -5.605193857299268e-45, 5.605193857299268e-45, -1.0872336133616045e-06, -1.8526891665260337e-07, 1.9826983077564364e-07, -1.4603043041461206e-07, 9.417446733550605e-08, 8.670735951454844e-08, -1.2115761194309016e-07, -2.59042650441188e-07, -1.5358648397523211e-06, 5.605193857299268e-45, -1.5269111104049602e-20, -5.219187073635112e-07, 6.602854085713261e-08], [-1.550470187794417e-05, -6.732243157966106e-28, 5.605193857299268e-45, -2.9146692668291507e-06, 3.7435293052112684e-05, -1.9794363197433995e-06, -9.369124200020451e-06, 7.4634563134168275e-06, 3.48193088939297e-06, 5.358296291219918e-28, -2.381868426937217e-07, -5.605193857299268e-45, -5.303073976392625e-06, -5.540503480006009e-06, -2.414832852082327e-05, 1.3904968909628224e-05, -5.1063784667348955e-06, -1.57604129019487e-25, -5.605193857299268e-45, -5.432319198916957e-07, -9.116771252593026e-06, 6.9809593696845695e-06, -7.231325525935972e-06, 4.63908281744807e-06, 3.98588190364535e-06, -6.06202002018108e-06, 1.561102908453904e-05, -5.41313856956549e-05, -5.605193857299268e-45, -7.723930155389168e-20, -1.4648990145360585e-05, 3.326947762616328e-06], [7.3988703661598265e-06, -5.605193857299268e-45, -5.605193857299268e-45, -3.038765726159909e-06, -1.413644895364996e-06, 1.956582764250925e-06, 9.199533451464958e-06, -7.311728040804155e-06, -5.217464149609441e-06, -5.605193857299268e-45, -4.96284302542449e-09, -5.605193857299268e-45, 5.1894248827011324e-06, -5.239476763563289e-07, 3.550145720510045e-06, -6.949299859115854e-06, 5.0118369472329505e-06, -4.7581076107754455e-26, -5.605193857299268e-45, -5.607067612100923e-21, 8.952283678809181e-06, -6.481001037172973e-06, 7.096573426679242e-06, -4.565421477309428e-06, -3.9773431126377545e-06, 5.945685188635252e-06, -6.249053512874525e-06, 2.24963105210918e-06, -5.605193857299268e-45, 1.1670997882938418e-37, -4.651784024645167e-07, -3.259730647187098e-06], [-2.8082354219804984e-07, 1.2603467992793319e-30, 5.605193857299268e-45, 1.6840192529343767e-07, -7.369159220615984e-07, -7.303123084057006e-08, -3.5305811252328567e-07, 2.783676791295875e-07, 2.055501227005152e-07, -6.519214929778066e-26, -1.440608808460364e-12, 5.605193857299268e-45, -1.98222210201493e-07, -1.6401350763639577e-11, -6.302103429334238e-06, 2.405943178018788e-07, -1.9162337139277952e-07, -5.848770674596879e-26, 5.605193857299268e-45, -9.448678553730447e-22, -3.423122052481631e-07, 2.5016470317495987e-07, -2.709950877033407e-07, 1.7281081454711966e-07, 1.5034004263725365e-07, -2.2845017610961804e-07, 2.1496168756129919e-07, -5.401127964432817e-06, -5.605193857299268e-45, -2.7744125652342984e-20, -4.110739837415167e-08, 1.2368701618470368e-07], [3.982746056863107e-05, -5.605193857299268e-45, -5.605193857299268e-45, -2.2476953745353967e-05, -5.681908533006208e-06, 1.064373464032542e-05, 4.935543256578967e-05, -3.92944275517948e-05, -3.359863330842927e-05, 3.2209310167830464e-28, -4.2928821386567506e-08, 5.605193857299268e-45, 2.7910969947697595e-05, -7.109342732292134e-06, 8.500393050780986e-06, -3.9044498407747597e-05, 2.685404797375668e-05, -1.117764503479818e-25, -5.605193857299268e-45, -3.2937847315721394e-20, 4.8154710384551436e-05, -3.4777538530761376e-05, 3.815732998191379e-05, -2.4574401322752237e-05, -2.1336063582566567e-05, 3.1865743949310854e-05, -3.363247014931403e-05, -2.7800524549093097e-05, -5.605193857299268e-45, -4.187563098257734e-25, -8.954573786468245e-06, -1.7526719602756202e-05], [6.7927294367109425e-06, -4.2040615061678455e-33, 5.605193857299268e-45, -7.76726324147603e-07, 5.929003236815333e-06, 8.787513934294111e-07, 4.169866315351101e-06, -3.352968178660376e-06, -2.277463863720186e-06, 2.009947290060168e-27, -2.114617103643468e-07, -5.605193857299268e-45, 2.370451966271503e-06, 2.8186086638015695e-06, -1.1275576980551705e-05, -8.996427141028107e-07, 2.2697677195537835e-06, -2.485022538491951e-25, -5.605193857299268e-45, 2.4805415250739316e-06, 4.07128482038388e-06, -3.0047444852243643e-06, 3.23084259434836e-06, -2.0581737771863118e-06, -1.8358430224907352e-06, 2.7024902919947635e-06, -3.317484242870705e-07, -7.864029612392187e-06, 5.605193857299268e-45, -1.427904893536208e-19, 2.0938921352353645e-06, -1.4951281173125608e-06], [8.017706932150759e-06, -6.383652726926933e-28, 5.605193857299268e-45, -4.89970716444077e-06, 1.5037157936603762e-05, 2.1322571228665765e-06, 1.0006739103118889e-05, -7.922447366581764e-06, -7.092456144164316e-06, 3.7410680429024987e-19, 2.657370430370065e-07, -5.605193857299268e-45, 5.640366453008028e-06, -9.633434672196017e-08, 5.738334039051551e-06, -6.282112735789269e-06, 5.4521333368029445e-06, -2.5347704799208795e-26, -5.605193857299268e-45, 1.1166746105573111e-07, 9.729336852615234e-06, -7.00029431754956e-06, 7.708473276579753e-06, -4.968335815647151e-06, -4.342874490248505e-06, 6.463410954893334e-06, -5.095569122204324e-06, -1.6056260392360855e-06, -5.605193857299268e-45, -5.3833289081166104e-20, 9.409018275619019e-07, -3.530592039169278e-06], [2.653964293131139e-05, -2.393277647220355e-41, -5.605193857299268e-45, -1.9007327864528634e-05, -1.0588981240289286e-05, 7.12219070919673e-06, 3.315555295557715e-05, -2.6388019250589423e-05, -2.0116356608923525e-05, -1.2106191019620873e-25, -4.05831684702207e-07, 5.605193857299268e-45, 1.874296140158549e-05, -1.9487272311380366e-06, 8.013754268176854e-06, -2.488784048182424e-05, 1.8044907847070135e-05, -5.605193857299268e-45, 5.605193857299268e-45, 1.917249392136e-06, 3.232939343433827e-05, -2.323914122825954e-05, 2.5621189706726e-05, -1.6486206732224673e-05, -1.4325448319141287e-05, 2.141123877663631e-05, -2.1291805751388893e-05, 4.967347194906324e-06, -5.605193857299268e-45, -4.998499283997653e-20, 1.975790837605018e-06, -1.1763906513806432e-05], [1.4916452073521214e-07, -5.605193857299268e-45, -5.605193857299268e-45, 1.5539874311798485e-06, 4.407042524690041e-06, -1.733673400394764e-07, -7.309731699933764e-07, 5.818682211611304e-07, -4.34051656839074e-07, -2.384330356525641e-38, -6.563817009919148e-07, -5.605193857299268e-45, -4.1447145804340835e-07, 3.283420483057853e-06, 9.952444770533475e-07, -2.874916447126452e-07, -3.956575937991147e-07, -5.605193857299268e-45, 5.605193857299268e-45, 2.159390533051919e-06, -7.22109803064086e-07, 6.745443101863202e-07, -5.700604788216879e-07, 3.7478287140402244e-07, 2.9743620189037756e-07, -4.675543721077702e-07, 1.714424797683023e-06, -1.5465956266780267e-06, -5.605193857299268e-45, 9.62328552205243e-34, 7.700584205849736e-07, 2.6080471116074477e-07], [-1.9944430107443623e-08, -5.605193857299268e-45, -5.605193857299268e-45, 1.345749200964974e-08, -1.8615143204669948e-08, -5.376035172588445e-09, -2.4682021759758754e-08, 1.9692688368877498e-08, 9.469805582057456e-13, -1.8216880036222622e-44, 2.2403596755538047e-09, -5.605193857299268e-45, -1.3974880808120815e-08, -1.7717768918679155e-10, -1.1046761727584453e-08, 4.5144897597992895e-08, -1.3426516787262699e-08, -5.605193857299268e-45, -5.605193857299268e-45, 5.605193857299268e-45, -2.4139332310824102e-08, 1.7446829758682725e-08, -1.912474623111393e-08, 1.2322172615597538e-08, 2.2068686433840412e-08, -1.5932892338810234e-08, -3.052918806645266e-09, -1.2102654878276553e-08, -5.605193857299268e-45, 1.6555134640017578e-31, -1.2606491850419843e-08, 8.793625383418657e-09], [-6.593731995963026e-07, -7.883537004475702e-40, 5.605193857299268e-45, 2.4715754420867597e-07, 5.952136916675954e-07, -1.8698349890655663e-07, -8.357479828191572e-07, 6.694875196444627e-07, -3.9455483324957186e-09, -4.3758347145471063e-41, 3.7419513965613282e-34, 5.605193857299268e-45, -4.751939854941156e-07, -9.801766509554e-08, -1.78346084567238e-07, 6.448899512179196e-07, -4.530143087322358e-07, -5.605193857299268e-45, -5.605193857299268e-45, 5.499000150496541e-15, -8.221701364163891e-07, 5.923990897827025e-07, -6.507299303848413e-07, 4.1991501120719477e-07, 3.6383147516971803e-07, -5.387088322095224e-07, 3.630734113357903e-07, -3.9073821511692586e-08, -5.605193857299268e-45, 2.0811867590890213e-38, -6.388286237779539e-07, 2.9956873959235963e-07], [1.765512570273131e-05, -1.0203442030267468e-27, 5.605193857299268e-45, -1.9772705854848027e-05, 6.853237209725194e-06, 4.765202447742922e-06, 2.184787990699988e-05, -1.7443842807551846e-05, -1.2429037269612309e-05, 2.582874278067444e-28, -4.0019534708335414e-07, 5.605193857299268e-45, 1.2382542081468273e-05, -3.2693542380002327e-06, 8.697665180079639e-06, -8.328462172357831e-06, 1.1875466952915303e-05, -1.164285433731129e-26, -5.605193857299268e-45, 1.6944844105637458e-07, 2.1374366042437032e-05, -1.538509786769282e-05, 1.6934811355895363e-05, -1.0906187526416034e-05, -9.562503691995516e-06, 1.409704600519035e-05, -8.80543939274503e-06, -2.950263296952471e-05, -5.605193857299268e-45, -5.172747141853936e-20, -1.1673153039737372e-06, -7.78392768552294e-06], [6.50936271995306e-06, -3.540658017228174e-28, 5.605193857299268e-45, -3.993039626948303e-06, -3.10280279336439e-06, 1.3628002761834068e-06, 6.286501047725324e-06, -5.006780156691093e-06, -4.7200533117575105e-06, 3.135354441108946e-19, 1.7907427718455438e-07, 5.605193857299268e-45, 3.5589032449934166e-06, -1.8583712062536506e-06, 6.261514045036165e-06, -2.962872486023116e-06, 3.4193453757325187e-06, -3.5187091373576655e-26, 5.605193857299268e-45, 1.8196999462816166e-06, 6.137690434115939e-06, -4.332651769800577e-06, 4.863311005465221e-06, -3.1307154131354764e-06, -2.7135702111991122e-06, 4.050060852023307e-06, -1.2857317415182479e-06, -3.84337863579276e-06, -5.605193857299268e-45, -1.2134956586010724e-24, -3.3880671708175214e-06, -2.2244348656386137e-06], [-4.44444913227926e-06, 5.605193857299268e-45, 5.605193857299268e-45, 2.192847503579287e-08, 6.014698556100484e-06, -1.2025052456010599e-06, -5.497503480000887e-06, 4.385874945000978e-06, 3.0514102036249824e-06, 5.605193857299268e-45, -1.8695331505114154e-08, -5.605193857299268e-45, -3.1147415029408876e-06, -7.394607148825116e-09, -2.4798191589070484e-06, 4.291339337214595e-06, -2.987599600601243e-06, -2.704506036146897e-43, -5.605193857299268e-45, 5.144776227368385e-39, -5.380916263675317e-06, 3.887123057211284e-06, -4.261582944309339e-06, 2.7462770049169194e-06, 2.3814693577151047e-06, -3.5482391922414536e-06, 4.384926342027029e-06, -1.2556180990941357e-05, -5.605193857299268e-45, -4.7043069509738356e-30, -3.804621950820319e-09, 1.9596650417952333e-06], [-5.954193056822987e-06, -3.2328467453489702e-28, -5.605193857299268e-45, 3.936615030397661e-06, 2.033953023783397e-05, -1.5956140941852937e-06, -7.367986199824372e-06, 5.902200882701436e-06, 3.0312280614452902e-06, 1.8949324630441879e-28, 7.075131147615821e-09, -5.605193857299268e-45, -4.1851271816994995e-06, 1.8379488153641432e-08, -1.1499538231873885e-05, 5.860190412931843e-06, -4.006112249044236e-06, -4.96410107169282e-26, -5.605193857299268e-45, -5.0341688682599564e-26, -7.2044199441734236e-06, 5.231147042650264e-06, -5.711484391213162e-06, 3.671324748211191e-06, 3.2162533898372203e-06, -4.7542825996060856e-06, 4.660785634769127e-06, -9.001716534839943e-06, 5.605193857299268e-45, -2.347945876777189e-24, -1.8991950128111057e-06, 2.628607717269915e-06], [2.1076177290524356e-05, -8.089312619127142e-29, 5.605193857299268e-45, -1.9544782844604924e-05, 8.459131095150951e-06, 5.792318006569985e-06, 2.676686563063413e-05, -2.1331368770916015e-05, -2.4620316253276542e-05, 1.5603762401247444e-18, -2.692496536838007e-07, -5.605193857299268e-45, 1.514097039034823e-05, -8.565887583245058e-06, -1.3896894415665884e-05, -1.8325159544474445e-05, 1.4557722352037672e-05, -3.189898846552805e-25, -5.605193857299268e-45, -1.0145608797529349e-08, 2.613425749586895e-05, -1.8813690985552967e-05, 2.070640039164573e-05, -1.3333807146409526e-05, -1.1583539162529632e-05, 1.7270360331167467e-05, -1.286179667658871e-05, -4.2675528675317764e-05, -5.605193857299268e-45, -4.7517949281257e-20, -1.3090011634631082e-05, -9.506293281447142e-06], [-5.096266704640584e-06, -7.622724793737738e-29, 5.605193857299268e-45, 3.906639449269278e-06, 5.797773155791219e-06, -1.3114853345541633e-06, -5.982795300951693e-06, 4.761172476719366e-06, -7.856347110646311e-06, 1.924966401636059e-27, 2.508224072883536e-09, 5.605193857299268e-45, -3.39114444614097e-06, -5.812767085444648e-06, -1.8096325220540166e-06, 4.120344783586916e-06, -3.250086365369498e-06, -6.146210827568179e-30, -5.605193857299268e-45, 1.6926079524637316e-06, -5.8493487813393585e-06, 4.239027930452721e-06, -4.630998773791362e-06, 2.989984977830318e-06, 2.582405613793526e-06, -3.853462203551317e-06, 5.981939011689974e-06, -2.5844778974715155e-06, -5.605193857299268e-45, -1.77225410793441e-19, -1.101623729482526e-05, 2.122022124240175e-06], [1.923815034388099e-06, -5.605193857299268e-45, 5.605193857299268e-45, -2.427688968964503e-06, 6.239998128876323e-06, 9.651661230236641e-07, 4.5165629671828356e-06, -3.607301096053561e-06, -6.640670108026825e-06, 1.1970046892217842e-18, -1.0514792592175581e-07, -5.605193857299268e-45, 2.554094180595712e-06, -2.454500872772769e-06, 4.736203663924243e-06, -1.431272721674759e-06, 2.45855403591122e-06, -5.605193857299268e-45, -5.605193857299268e-45, 1.0449405181134352e-06, 4.406099833431654e-06, -2.9516311315092025e-06, 3.493580379654304e-06, -2.24382392843836e-06, -1.9831190911645535e-06, 2.9218008421594277e-06, -1.1760812412831001e-07, -2.7753353606385645e-06, -5.605193857299268e-45, 2.25105356023294e-38, -3.599250703700818e-06, -1.6108513136714464e-06], [-2.0865312762907706e-05, -6.3711519971404015e-28, -5.605193857299268e-45, 1.2740796591970138e-05, 2.030610448855441e-05, -5.517350018635625e-06, -2.556038998591248e-05, 2.0368137484183535e-05, 4.885890575678786e-06, 1.0330172701564888e-18, 1.7371016269862594e-07, -5.605193857299268e-45, -1.4477475815510843e-05, 9.521323818262317e-07, -7.652909062016988e-07, 2.07793327717809e-05, -1.3903605577070266e-05, -1.9367625438295145e-35, 5.605193857299268e-45, 3.2178925266634906e-06, -2.494484760973137e-05, 1.820011493691709e-05, -1.9765040633501485e-05, 1.272216559300432e-05, 1.1071202607126907e-05, -1.6491327187395655e-05, 2.24526029342087e-05, -3.6057083434570814e-06, -5.605193857299268e-45, -2.441922471257207e-19, -7.488791652576765e-06, 9.071864951692987e-06], [3.5493656014295993e-06, -5.766618476519289e-28, -5.605193857299268e-45, -4.432232344697695e-06, 2.033932105405256e-05, 8.920456480154826e-07, 4.308363713789731e-06, -3.4314441563765286e-06, -1.7486865544924513e-05, 9.436453680538095e-19, 5.865799721505027e-07, -5.605193857299268e-45, 2.4225378183473367e-06, -8.358477316505741e-06, -6.7596733970276546e-06, -1.8380881101620616e-06, 2.353413492528489e-06, -1.6420555126745766e-25, -5.605193857299268e-45, -4.777381873924614e-24, 4.183640157862101e-06, -3.0756827982258983e-06, 3.320867335787625e-06, -2.128122559952317e-06, -1.8557014982434339e-06, 2.800153652060544e-06, 9.184790314975544e-07, -2.2853257178212516e-05, -5.605193857299268e-45, -1.788675443842153e-24, -1.471861560276011e-05, -1.5378707303170813e-06], [-2.517983375582844e-06, 5.605193857299268e-45, 5.605193857299268e-45, -1.449987621526816e-06, -1.407549802934227e-06, 4.3581579234341916e-07, 1.9773453914240235e-06, -1.5754004607515526e-06, -1.8440829308019602e-06, -1.8125681671166476e-27, -1.2053031905878697e-09, -5.605193857299268e-45, 1.1195528486496187e-06, -1.124486402659386e-06, 1.9384214056117344e-07, -9.92842956293316e-07, 1.0742661515905638e-06, -5.605193857299268e-45, 5.605193857299268e-45, -9.11648612600402e-07, 1.9349763533682562e-06, -1.2776513358403463e-06, 1.5319048998208018e-06, -9.903970976665732e-07, -8.569309670747316e-07, 1.2737517636196571e-06, -1.3803768297293573e-06, -1.912213889454506e-07, -5.605193857299268e-45, -4.385530460048765e-22, 3.9036919474710885e-07, -7.03102102761477e-07], [8.493781933793798e-06, -7.043830215501281e-28, 5.605193857299268e-45, -1.352439539914485e-05, 2.1863443180336617e-05, 3.286239916633349e-06, 1.5213381630019285e-05, -1.2102264918212313e-05, -1.01402756627067e-05, 2.1517415347012097e-20, 1.4456509234150872e-07, -5.605193857299268e-45, 8.593879101681523e-06, -5.553501409849559e-07, -1.3243484318081755e-05, -7.463386282324791e-06, 8.276699190901127e-06, -4.0658771128038336e-25, -5.605193857299268e-45, 5.644099587698292e-07, 1.4841126358078327e-05, -1.063136642187601e-05, 1.1758058462874033e-05, -7.575875315524172e-06, -6.57672353554517e-06, 9.815710654947907e-06, -3.3153871754620923e-06, -3.912007014150731e-05, -5.605193857299268e-45, -2.0275984299279647e-19, -3.664545602077851e-06, -5.39287566425628e-06], [2.5387997084180824e-05, 4.292398307959823e-30, 5.605193857299268e-45, -2.2698230168316513e-05, -4.613518285623286e-06, 8.293734936160035e-06, 3.836877294816077e-05, -3.057064168388024e-05, -2.1961024685879238e-05, 1.5562889339229667e-18, -5.358450607673149e-07, 5.605193857299268e-45, 2.1710038708988577e-05, -5.419952685770113e-06, -6.046811904525384e-07, -2.7100435545435175e-05, 2.08734654734144e-05, -5.465064010866787e-44, -5.605193857299268e-45, -1.5224835578919738e-06, 3.7462035834323615e-05, -2.6997151508112438e-05, 2.9682669264730066e-05, -1.9111676010652445e-05, -1.661905480432324e-05, 2.477240195730701e-05, -2.0551880879793316e-05, -2.1273912352626212e-05, -5.605193857299268e-45, -1.9760407793354173e-20, 1.6140861589519773e-06, -1.3638466043630615e-05], [-2.106249574751473e-08, 5.605193857299268e-45, 5.605193857299268e-45, 9.296392988744628e-09, -7.162156978601786e-10, -3.782265167728838e-09, -1.7374889083043854e-08, 1.3878780791287681e-08, 2.7573212602050035e-09, -1.5035388455279777e-22, -1.8722157697992564e-15, 5.605193857299268e-45, -9.848924342747978e-09, -9.044310846041334e-14, -8.534245310443112e-09, 1.3002008358853345e-08, -9.445198401181187e-09, -5.605193857299268e-45, 5.605193857299268e-45, -5.605193857299268e-45, -1.7001015706341605e-08, 1.2320999331905114e-08, -1.347129874318398e-08, 8.67108518320947e-09, 7.54808038294641e-09, -1.1222519802345232e-08, -8.714334809312163e-11, -8.512931692905568e-09, 5.605193857299268e-45, 5.605193857299268e-45, -4.2674286326871425e-09, 6.202293789669966e-09], [-7.905579877842683e-06, -8.236356888898622e-28, 5.605193857299268e-45, 5.988436896586791e-06, 1.578297269588802e-05, -2.2485764930024743e-06, -1.049375714501366e-05, 8.340980457433034e-06, -4.076951881870627e-06, 1.1945421725382139e-18, -5.09745746057888e-07, -5.605193857299268e-45, -5.933535248914268e-06, 7.267133241839474e-07, 4.034537596453447e-06, 9.161813068203628e-06, -5.708816388505511e-06, -5.904801369282948e-26, 5.605193857299268e-45, 3.1114454941416625e-06, -1.0218011084361933e-05, 7.383742740785237e-06, -8.095556950138416e-06, 5.211889401834924e-06, 4.517318757280009e-06, -6.765271791664418e-06, 9.365818186779507e-06, 2.6383322619949467e-06, -5.605193857299268e-45, -2.449739586539775e-19, -1.2281268482183805e-06, 3.7062955016153865e-06], [-3.939510861528106e-05, -1.6531880271618764e-27, 5.605193857299268e-45, 1.3638326890941244e-05, 6.373749056365341e-05, -1.027589496516157e-05, -4.7667486796854064e-05, 3.793417999986559e-05, 1.6881240298971534e-05, 1.023949095896223e-18, -6.06361027166713e-07, -5.605193857299268e-45, -2.6959061870002188e-05, -5.4859065130585805e-06, -3.1916515581542626e-05, 4.4334374251775444e-05, -2.5936895326594822e-05, -1.2485815539116512e-25, -5.605193857299268e-45, 1.8117410718332394e-06, -4.6502533223247156e-05, 3.382165959919803e-05, -3.684491093736142e-05, 2.3725589926471002e-05, 2.0489371308940463e-05, -3.0776271159993485e-05, 4.323631219449453e-05, -6.674415635643527e-05, -5.605193857299268e-45, -9.617060941717776e-20, -2.139254502253607e-05, 1.6918093024287373e-05], [-2.3533881176263094e-05, -6.669519953019789e-28, 5.605193857299268e-45, 1.747130954754539e-05, 2.2199974409886636e-05, -6.596886578336125e-06, -3.073676271014847e-05, 2.443622361170128e-05, 2.0744251742144115e-05, -2.319239698363103e-27, -1.8379830635240069e-07, -5.605193857299268e-45, -1.736607009661384e-05, 5.184700512472773e-06, -1.3522988410841208e-05, 2.9538487069658004e-05, -1.6731646610423923e-05, -9.101889492615435e-33, 5.605193857299268e-45, 4.724065092887031e-06, -2.9950957468827255e-05, 2.1673398805432953e-05, -2.3729904569336213e-05, 1.5280931620509364e-05, 1.3256532838568091e-05, -1.9843488189508207e-05, 2.6164956580032595e-05, -1.2570706530823372e-05, 5.605193857299268e-45, -1.4562758960770697e-19, -4.213676220388152e-06, 1.0889493751164991e-05], [-4.143533260503318e-06, 3.7638876751764587e-42, 5.605193857299268e-45, -2.9606678708660183e-07, 8.89014074800798e-07, -4.806542364121924e-08, -2.3736939169793914e-07, 1.9388616578908113e-07, -6.255341304495232e-06, 1.3534401560896237e-19, -2.4807460530240633e-09, -5.605193857299268e-45, -1.463409233792845e-07, -4.6744207793381065e-06, 3.046792016903055e-06, 9.31910449253337e-07, -1.2957288220150076e-07, -5.605193857299268e-45, -5.605193857299268e-45, 5.680811341335357e-07, -2.3045674879540456e-07, 3.6623140431402135e-07, -1.8341620489081834e-07, 1.1561336066279182e-07, 1.0271358519275964e-07, -1.5389674956622912e-07, 2.3076165689417394e-06, -1.229172539751744e-06, -5.605193857299268e-45, -4.64544664321523e-20, -6.275222858675988e-06, 8.592814282337713e-08], [-8.716826414456591e-06, -2.00788753205877e-28, 5.605193857299268e-45, 3.1456768283533165e-06, 8.441377758572344e-06, -1.6775967424109695e-06, -7.802818799973466e-06, 6.2163885559129994e-06, 1.352437152490893e-06, 3.596401391597334e-19, -6.213893044559882e-08, -5.605193857299268e-45, -4.421262929099612e-06, -2.247060365334619e-06, -1.133919522544602e-05, 6.352043328661239e-06, -4.246179742040113e-06, -4.7303390906140837e-26, -5.605193857299268e-45, 1.0411877156002447e-06, -7.609663953189738e-06, 5.629099632642465e-06, -6.0300772020127624e-06, 3.881333668687148e-06, 3.367499175510602e-06, -5.038823019276606e-06, 7.467621344403597e-06, -1.3175907952245325e-05, -5.605193857299268e-45, -7.186744848430454e-20, -6.518855116155464e-06, 2.7720984689949546e-06], [-1.4461778846452944e-05, -1.673302704316424e-28, 5.605193857299268e-45, 8.168047315848526e-06, 2.2796521079726517e-05, -3.857016963593196e-06, -1.7921491235028952e-05, 1.4291292245616205e-05, 9.314348062616773e-06, 8.967819674375005e-19, 1.090521521973642e-07, -5.605193857299268e-45, -1.0148749424843118e-05, -3.1632912396162283e-06, -4.4391552364686504e-05, 1.3097184819343966e-05, -9.755172868608497e-06, -3.651956372415645e-26, -5.605193857299268e-45, 2.551597377831172e-09, -1.7494823623565026e-05, 1.277353112527635e-05, -1.3869692338630557e-05, 8.91924173629377e-06, 7.769496733089909e-06, -1.1582351362449117e-05, 1.1963555152760819e-05, -4.1102743125520647e-05, -5.605193857299268e-45, -2.7719643325750457e-24, -1.4220216144167352e-05, 6.3803699958953075e-06], [-3.145661685266532e-05, -2.8328120773415405e-28, 5.605193857299268e-45, 1.4669705706182867e-05, 5.2220653742551804e-05, -8.421893653576262e-06, -3.8943027902860194e-05, 3.1006788049126044e-05, 1.7225482224603184e-05, 5.996684107806505e-19, 2.5046352902791114e-07, -5.605193857299268e-45, -2.203453732363414e-05, -3.639784722508921e-07, -4.649124093702994e-05, 3.1517854949925095e-05, -2.118465636158362e-05, -3.2869703996115465e-25, -5.605193857299268e-45, 2.82622623221096e-12, -3.8015485188225284e-05, 2.7480587959871627e-05, -3.0119870643829927e-05, 1.9398174117668532e-05, 1.6832593246363103e-05, -2.5136672775261104e-05, 3.1554882298223674e-05, -5.1126287871738896e-05, -5.605193857299268e-45, -2.791049558421698e-20, -1.71282281371532e-05, 1.3828263035975397e-05], [9.44291241466999e-06, -7.826878182667646e-28, 5.605193857299268e-45, -5.9541639529925305e-06, 1.5012018593552057e-05, 2.5344065761601087e-06, 1.1746086784114596e-05, -9.344853424408939e-06, -8.695247743162327e-06, 9.63256786401676e-19, -4.170359488853137e-07, -5.605193857299268e-45, 6.639815183007158e-06, 7.351037822900253e-08, -9.35132266022265e-06, -8.352742952411063e-06, 6.39345262243296e-06, -6.723273524436111e-27, 5.605193857299268e-45, 2.762975555015146e-07, 1.1460386303951964e-05, -8.285209332825616e-06, 9.081551070266869e-06, -5.852108188264538e-06, -5.116398369864328e-06, 7.586704668938182e-06, -8.017002983251587e-06, -7.558453489764361e-06, -5.605193857299268e-45, -4.106894226423816e-20, 3.1866579774941783e-06, -4.172195986029692e-06], [-4.19760317527107e-06, -6.247024849259672e-28, 5.605193857299268e-45, 1.0563096566329477e-06, 1.621056071599014e-05, -1.1514961215652875e-06, -5.168367806618335e-06, 4.14684791394393e-06, 1.6861517906363588e-06, 0.0, 2.1285629259182315e-07, -5.605193857299268e-45, -2.9396562695183093e-06, 1.4102303680374462e-07, -1.2884148645753157e-06, 4.9159257287101354e-06, -2.8033796297677327e-06, -1.7159657765507047e-30, -5.605193857299268e-45, -3.845598062213185e-09, -5.078964022686705e-06, 3.6620135688281152e-06, -4.022514076496009e-06, 2.593888893898111e-06, 2.2309877749648876e-06, -3.3297244499408407e-06, 5.160871296538971e-06, -2.5398745492566377e-05, -5.605193857299268e-45, 3.7116221135010694e-25, -1.8767848359857453e-06, 1.8526075109548401e-06], [-4.799662292498397e-06, -1.6690938973865817e-27, 5.605193857299268e-45, -1.3392958862823434e-05, 3.9702397771179676e-05, 3.22014045650576e-07, 1.4343263501359615e-06, -1.150880507339025e-06, -6.384414973581443e-06, 1.3067397100539877e-18, -1.8390774414456246e-07, -5.605193857299268e-45, 8.090115102277196e-07, -7.419306712108664e-06, -4.0861257730284706e-05, 6.647542249993421e-06, 7.76048807438201e-07, -2.098512249369864e-25, -5.605193857299268e-45, 1.595243190877227e-07, 1.4099001646172837e-06, -7.625568514413317e-07, 1.1143043820993626e-06, -7.207871703940327e-07, -7.041243748062698e-07, 9.212054692397942e-07, 1.2001279174000956e-05, -8.078554674284533e-05, -5.605193857299268e-45, -2.529835743747226e-19, -1.7228663637069985e-05, -5.12421081566572e-07], [1.1744860785256606e-05, -8.115685031544372e-36, 5.605193857299268e-45, -7.452776117133908e-06, -1.3006922472413862e-06, 3.1503686841460876e-06, 1.4670985365228262e-05, -1.1673073458950967e-05, -1.0389957424195018e-05, -7.140377275454091e-31, 5.223038712642847e-08, -5.605193857299268e-45, 8.287941454909742e-06, -2.943974550362327e-06, 3.891575033776462e-06, -1.0493239642528351e-05, 7.985724550962914e-06, -6.277795759389237e-26, -5.605193857299268e-45, -5.0910564826367466e-12, 1.4300414477474988e-05, -1.03108450275613e-05, 1.1334806913509965e-05, -7.302031008293852e-06, -6.338345428957837e-06, 9.475018487137277e-06, -9.97111783362925e-06, -5.925011464569252e-06, -5.605193857299268e-45, -2.4024104052324823e-27, -5.184568635741016e-06, -5.207451977184974e-06], [1.1310959280308452e-06, 5.605193857299268e-45, 5.605193857299268e-45, -1.032494765240699e-06, -2.2559414958323032e-07, 3.068334990530275e-07, 1.3994604159961455e-06, -1.1159842188135372e-06, -5.862103193976509e-07, -5.605193857299268e-45, -2.8925871475848908e-08, 5.605193857299268e-45, 7.928989589345292e-07, -9.236524305816785e-13, -2.5020366933858895e-07, -8.729292630960117e-07, 7.604511438330519e-07, -5.605193857299268e-45, 5.605193857299268e-45, -2.4011528876322075e-10, 1.369433107356599e-06, -9.871197335087345e-07, 1.0846715667867102e-06, -6.9964352178431e-07, -6.063102659936703e-07, 9.024986411532154e-07, -1.2891674714410328e-06, -3.139987825306889e-07, 5.605193857299268e-45, 5.605193857299268e-45, 4.798731083610619e-07, -4.9807749746833e-07], [6.395418949978193e-07, -8.791332861673248e-28, -5.605193857299268e-45, -1.5640364381397376e-06, 1.5693503883085214e-05, 1.824145385853626e-07, 7.590599579998525e-07, -6.263755949476035e-07, -1.4998417100287043e-05, 4.382506799870393e-19, -1.2566783880174626e-07, -5.605193857299268e-45, 4.326350904193532e-07, -8.777498806011863e-06, 5.505534772964893e-06, 1.7628111663725576e-06, 4.1022803998203017e-07, -1.72746671547802e-27, -5.605193857299268e-45, 2.2228556417758227e-07, 7.702177526880405e-07, -5.742000439568073e-07, 6.103911118771066e-07, -3.943885076296283e-07, -3.688564902404323e-07, 5.00956559790211e-07, 4.603447450790554e-06, 5.607994353340473e-07, -5.605193857299268e-45, 3.1900104041189038e-27, -1.3481172572937794e-05, -2.960051688205567e-07]], [[-4.8004962991399225e-06], [8.528789128689407e-28], [5.605193857299268e-45], [-4.3318090320099145e-05], [-2.1136504074092954e-05], [7.807911606505513e-05], [-1.8721746528171934e-05], [1.0724650564952753e-05], [7.965461554704234e-05], [-2.240297972429231e-19], [1.1011704827978974e-06], [-5.605193857299268e-45], [-1.0280295100528747e-05], [8.515949957654811e-06], [-4.44491597590968e-05], [0.00011410430306568742], [-5.9389712987467647e-05], [-1.1428984747367744e-25], [5.605193857299268e-45], [1.228306558687109e-07], [6.525972275994718e-05], [2.0678824512287974e-05], [1.680758396105375e-05], [-2.0335955923656e-05], [2.5274322979385033e-05], [-4.5423068513628095e-05], [8.435740892309695e-05], [-0.00010938043124042451], [5.605193857299268e-45], [3.481644557266321e-20], [6.954925993341021e-06], [-4.492092557484284e-06]]], "v_w": [[[2.6329502467170585e-10, 1.536087239628614e-07, 7.523664358188853e-09, 1.6816977810307776e-09, 1.576161281491295e-07, 5.323059681927589e-08, 3.034529072465375e-08, 2.8579957844776516e-10, 6.791786688609136e-08, 1.1900354479621456e-08, 5.801555147399995e-08, 1.6300114036305047e-10, 1.9408405438348098e-10, 2.1283221851575718e-09, 3.617173574554933e-11, 4.714729162635933e-10, 1.1967890145569982e-07, 3.103763634992873e-10, 3.5125333631286226e-12, 2.3233823753798788e-08, 9.287534652457907e-08, 3.2351032075439434e-08, 3.477404197926859e-10, 1.3930431252973108e-09, 7.45700212689826e-09, 5.501227251514251e-10, 2.40357045377948e-09, 7.703103432898928e-11, 4.1246700499542044e-10, 1.7532574503320575e-08, 6.052029277725524e-08, 2.3878132537902275e-07, 5.2657924243249e-08, 3.687023575338344e-09, 8.126777473194124e-09, 1.5290704813430978e-10, 5.7949312015637133e-11, 2.4127091990955307e-10, 1.3576729074316063e-08, 1.9008508544970937e-08, 4.968712663533381e-10, 1.5597022562374718e-09, 5.720504070438892e-10, 1.265635063418813e-07, 2.9115818089842094e-10, 3.874397691561171e-08, 3.3518113284891626e-10, 1.4196993580739559e-10, 1.0788425708341265e-09, 4.2779667808190425e-08, 1.3121086162026785e-10, 8.635581849603113e-08, 7.61281648831158e-10, 9.73274154603132e-08, 9.384169885606752e-09, 2.3486057543209427e-10, 3.668077230845057e-10, 4.687450982920893e-10, 5.776882305852382e-10, 8.533993067771917e-09, 1.0176885723023332e-10, 5.690323945373166e-08, 3.3559190149023976e-11, 2.8366953230829495e-09], [2.780952412795301e-10, 1.5735572844732815e-07, 8.403015172575579e-09, 1.7494193871314678e-09, 1.6165253668987134e-07, 5.4314078568040713e-08, 3.202085352427275e-08, 3.4169919671533933e-10, 7.171203719735786e-08, 1.2591854670063185e-08, 6.066235869184311e-08, 1.7123065465529663e-10, 3.661955461087274e-10, 2.911308749631303e-09, 3.616673627249156e-11, 4.921717478012511e-10, 1.2318544406753063e-07, 3.272595250347621e-10, 3.4324097383797714e-12, 2.3334497001314958e-08, 9.789879129584733e-08, 3.389579461554604e-08, 4.141147702529935e-10, 1.4458559904895196e-09, 7.734700879780121e-09, 5.727364138508051e-10, 2.5399311542884107e-09, 7.788222844418158e-11, 6.475505132108594e-10, 1.8911277877009525e-08, 6.258913032297642e-08, 2.4440919332846534e-07, 5.6587190044865565e-08, 3.812847371165162e-09, 8.514237315182527e-09, 1.8028731285646415e-10, 6.897312582188064e-11, 2.5144422655110077e-10, 1.3943390442250347e-08, 1.9859248467923862e-08, 5.652501799957577e-10, 1.719844822112293e-09, 5.96059646085223e-10, 1.2848235542151087e-07, 4.677608300696079e-10, 3.948012050614125e-08, 3.737506415468772e-10, 1.5096064676090037e-10, 1.130951554628723e-09, 4.348382276475604e-08, 1.3147778699096335e-10, 8.741233159526018e-08, 8.084278801945288e-10, 1.003084477702032e-07, 9.833446945606283e-09, 2.4511645491109846e-10, 4.2559672452924246e-10, 5.199988217796658e-10, 6.169253441434819e-10, 8.87566020679742e-09, 1.0054796578673475e-10, 5.9028447907394366e-08, 3.864812983533916e-11, 2.9010380764304955e-09], [7.717736172363487e-11, 3.5195576231217274e-08, 3.273108228896149e-09, 3.051670305342924e-10, 3.228994316373246e-08, 1.0561235441741701e-08, 9.026099867526227e-09, 1.5748510828750284e-10, 2.406854981984452e-08, 3.1563309743631862e-09, 1.2648238012502588e-08, 5.2688315516080664e-11, 3.161141626240038e-10, 2.0467509909138926e-09, 2.0077233278681383e-11, 2.0742962902886575e-10, 2.1625625734600362e-08, 9.056322358702573e-11, 4.844965140887725e-12, 2.1965782526223165e-09, 2.527534448404367e-08, 7.865937234896592e-09, 1.787140990749947e-10, 3.8512065758666836e-10, 2.0813841761224694e-09, 1.7983464717374886e-10, 1.2694655326939142e-09, 1.5172474387981083e-11, 7.663177314931602e-10, 5.96406080077827e-09, 1.2207347133141866e-08, 3.4498413015171536e-08, 1.825856088544242e-08, 7.224088549584451e-10, 1.8604796592214257e-09, 1.1608037447929931e-10, 6.879553177130404e-11, 8.48960554633571e-11, 2.897372564092393e-09, 3.779993651420455e-09, 2.539817245406084e-10, 6.698912535796353e-10, 1.7898639514957182e-10, 2.2710564095973496e-08, 4.550725074548012e-10, 6.479710545903572e-09, 1.4738450737628028e-10, 4.953377291672112e-11, 3.234781331684644e-10, 5.2506292647080954e-09, 2.2393821172417283e-11, 1.1826884360743861e-08, 2.6464155866712247e-10, 1.8782712274401092e-08, 2.5071296150258604e-09, 5.742175832046392e-11, 2.934024689871251e-10, 2.2745727523698633e-10, 2.310227009694188e-10, 1.6934575963745147e-09, 7.004201385552022e-11, 1.0718432363887587e-08, 1.267958221057297e-11, 3.0245975168874395e-10], [7.717736172363487e-11, 3.5195576231217274e-08, 3.273108228896149e-09, 3.051670305342924e-10, 3.228994316373246e-08, 1.0561235441741701e-08, 9.026099867526227e-09, 1.5748510828750284e-10, 2.406854981984452e-08, 3.1563309743631862e-09, 1.2648238012502588e-08, 5.2688315516080664e-11, 3.161141626240038e-10, 2.0467509909138926e-09, 2.0077233278681383e-11, 2.0742962902886575e-10, 2.1625625734600362e-08, 9.056322358702573e-11, 4.844965140887725e-12, 2.1965782526223165e-09, 2.527534448404367e-08, 7.865937234896592e-09, 1.787140990749947e-10, 3.8512065758666836e-10, 2.0813841761224694e-09, 1.7983464717374886e-10, 1.2694655326939142e-09, 1.5172474387981083e-11, 7.663177314931602e-10, 5.96406080077827e-09, 1.2207347133141866e-08, 3.4498413015171536e-08, 1.825856088544242e-08, 7.224088549584451e-10, 1.8604796592214257e-09, 1.1608037447929931e-10, 6.879553177130404e-11, 8.48960554633571e-11, 2.897372564092393e-09, 3.779993651420455e-09, 2.539817245406084e-10, 6.698912535796353e-10, 1.7898639514957182e-10, 2.2710564095973496e-08, 4.550725074548012e-10, 6.479710545903572e-09, 1.4738450737628028e-10, 4.953377291672112e-11, 3.234781331684644e-10, 5.2506292647080954e-09, 2.2393821172417283e-11, 1.1826884360743861e-08, 2.6464155866712247e-10, 1.8782712274401092e-08, 2.5071296150258604e-09, 5.742175832046392e-11, 2.934024689871251e-10, 2.2745727523698633e-10, 2.310227009694188e-10, 1.6934575963745147e-09, 7.004201385552022e-11, 1.0718432363887587e-08, 1.267958221057297e-11, 3.0245975168874395e-10], [2.7337740404753674e-10, 1.5855705726153246e-07, 8.102762016903853e-09, 1.7228478643716016e-09, 1.641686964148903e-07, 5.543087056025797e-08, 3.2791852788705e-08, 3.2570643404561395e-10, 7.304957705400739e-08, 1.2619516098766326e-08, 6.137425856422851e-08, 1.6851871287304476e-10, 2.9617483465749217e-10, 2.6858226753745384e-09, 3.232051085100274e-11, 4.5927581182603205e-10, 1.2455718945147964e-07, 3.2413724482260875e-10, 1.1800723159066662e-12, 2.3473448962363364e-08, 9.92937714272557e-08, 3.417997973542697e-08, 3.7506045491575435e-10, 1.4812002735453689e-09, 7.465537521511578e-09, 5.817812342989725e-10, 2.3583157648943143e-09, 7.791686740254988e-11, 3.763318823235551e-10, 1.9185101507446234e-08, 6.25690219635544e-08, 2.4686195843059977e-07, 5.7095203231938285e-08, 3.881344134981646e-09, 8.509241311571714e-09, 1.5623272120457443e-10, 6.004581554197586e-11, 2.4105259455176054e-10, 1.3682873500897585e-08, 1.9963472652761993e-08, 4.6222792260408596e-10, 1.724287934656843e-09, 6.035502653212177e-10, 1.312708093337278e-07, 4.2551942525115294e-10, 4.0023920178100525e-08, 3.5037225898371105e-10, 1.4676236614885596e-10, 1.1227685448034208e-09, 4.354637894721236e-08, 1.31965882665952e-10, 8.858047095827715e-08, 8.009853336155004e-10, 1.017892614640914e-07, 1.002470462196925e-08, 2.459032422130747e-10, 3.6625547039648154e-10, 4.6237261241977023e-10, 6.211165470837443e-10, 8.840495446804653e-09, 8.56833076712249e-11, 5.963777027773176e-08, 3.446043797539211e-11, 2.9000810641832686e-09], [1.0736286165657916e-10, 6.76245193176328e-08, 4.063475333992983e-09, 7.048016059663098e-10, 6.826732601439289e-08, 2.7611397612758992e-08, 1.256204296140595e-08, 1.2746807775965152e-10, 2.82645746807475e-08, 5.590178098202614e-09, 2.7694522231058727e-08, 6.241501759873813e-11, 1.0478198864127819e-10, 9.60585722076246e-10, 1.4003006219842629e-11, 1.6067870645120053e-10, 5.091138532975492e-08, 1.2494597023682275e-10, 1.1445078825639277e-12, 4.232183048458182e-09, 4.325078961642248e-08, 1.6769257982218733e-08, 1.3009789079365675e-10, 7.373805455124227e-10, 3.719736740848134e-09, 2.429760559419236e-10, 1.0710026199234335e-09, 2.2471044122673867e-11, 1.9622432845256554e-10, 7.572125149124531e-09, 3.228291589607579e-08, 8.064382228667455e-08, 2.2602907989721643e-08, 1.906334867740611e-09, 3.606989373849956e-09, 6.58760337945985e-11, 2.5578855006314072e-11, 8.509109389320813e-11, 6.384338391285382e-09, 1.0069436839899026e-08, 2.2709223390648958e-10, 6.284908149467583e-10, 2.4169141688012985e-10, 5.157702887004234e-08, 1.3574284751793897e-10, 1.9532008010969548e-08, 1.4561486738617901e-10, 5.3463487109661756e-11, 4.487367699645972e-10, 1.1834670132770952e-08, 4.583875987118624e-11, 2.9616101571150466e-08, 2.901685836054213e-10, 4.7899870736500816e-08, 4.310008794305986e-09, 9.458924615790565e-11, 1.5594951718878036e-10, 1.879586208897166e-10, 2.372936291905603e-10, 3.853991792368561e-09, 3.792842429017895e-11, 2.5076984044858364e-08, 4.492074680978453e-12, 9.931566680165815e-10], [6.493506427007745e-11, 3.7335730951326696e-08, 1.7100085791810216e-09, 4.822565680129287e-10, 4.076953885601142e-08, 1.3532111431402427e-08, 6.951806685862039e-09, 7.016748293509067e-11, 1.4470860953963438e-08, 2.7605397967533918e-09, 1.4427224748203571e-08, 4.0841031945237916e-11, 3.7179811313015065e-11, 3.796671033118315e-10, 6.650501330196512e-12, 1.005132505005335e-10, 3.151474459173187e-08, 7.6025380435496e-11, 1.8908983265893825e-13, 6.5349770039802024e-09, 2.2704492508296426e-08, 7.866812978818416e-09, 7.794331152721767e-11, 2.9596899930872667e-10, 1.7538637209213448e-09, 1.255649612064147e-10, 4.3552031425697635e-10, 1.6406469932617185e-11, 3.238299559060742e-11, 3.909839563220885e-09, 1.490956336169802e-08, 6.69455175739131e-08, 1.1341037442491597e-08, 9.370545450693157e-10, 2.0587440641151034e-09, 2.5853199789316328e-11, 5.752619301052642e-12, 4.59273001574001e-11, 3.655679092773312e-09, 4.974593181827913e-09, 1.1367132235484689e-10, 3.2008037886832597e-10, 1.3111857433134588e-10, 3.345251542441474e-08, 4.012237764250415e-11, 1.036374364105086e-08, 6.781965961044634e-11, 2.8244732941384854e-11, 2.5054608387975463e-10, 1.2452341380253529e-08, 2.7874261926408295e-11, 2.3192074039002364e-08, 1.7407944530312136e-10, 2.5090551858397703e-08, 2.0687362933813347e-09, 5.5460993436673434e-11, 6.71466909851759e-11, 1.056017565059797e-10, 1.2925556458487364e-10, 2.174627145024033e-09, 1.6102865568745628e-11, 1.5105703354834077e-08, 8.117320184075627e-12, 8.463796885571639e-10], [1.0365303754200639e-10, 4.051218738254647e-08, 2.2437873781200324e-09, 6.304831656755994e-10, 4.219349847289777e-08, 1.44449083805398e-08, 7.187246353623777e-09, 1.0877400369313506e-10, 1.806204252829957e-08, 3.2519476000913983e-09, 1.571763519336855e-08, 6.061464524753646e-11, 8.314497007555488e-11, 6.83171630377899e-10, 1.0109640555255872e-11, 1.6127599256066105e-10, 3.760145617093258e-08, 1.0717386006442453e-10, 3.822041966770884e-13, 8.963707998077552e-09, 2.9638105303320117e-08, 8.449073440885968e-09, 1.2003037452856802e-10, 3.7797204255340944e-10, 2.2392856457997823e-09, 1.52050760870992e-10, 5.444300010815084e-10, 3.2768461555310324e-11, 8.234249393446191e-11, 5.4779762947987365e-09, 1.4257330427369652e-08, 9.29061769738837e-08, 1.3720516278681316e-08, 1.0903992153643571e-09, 2.6735660352272816e-09, 2.754932566795265e-11, 1.1243679598482714e-11, 1.1878512062857283e-10, 4.456006674757873e-09, 5.287307036638822e-09, 2.028929663167034e-10, 4.681001142259333e-10, 1.7087201098497928e-10, 3.6765463562460354e-08, 7.971484583535471e-11, 1.1694530677175408e-08, 1.165268298519706e-10, 5.268736488761583e-11, 3.5224409500322906e-10, 1.732093224404707e-08, 6.664568896752598e-11, 3.3381244435304325e-08, 2.5623983490596913e-10, 2.7962983040197287e-08, 3.000391712859596e-09, 9.965249458954162e-11, 1.021540074752636e-10, 1.757756995512949e-10, 1.5679955944758461e-10, 2.4042434709770077e-09, 2.8564846668577282e-11, 1.7628092763288805e-08, 1.7512073388625815e-11, 1.0743016476411071e-09], [3.273296911299184e-10, 6.3177649778367595e-09, 2.4449093416478718e-08, 7.706126403661528e-09, 4.880897019887698e-09, 5.224547905413601e-08, 2.556824307831107e-09, 1.030736718199421e-09, 2.428135248422336e-09, 7.833796389355996e-10, 1.5932239971760964e-09, 3.253018132642893e-10, 2.1657256543683445e-10, 1.775135149983953e-09, 3.0513835902468145e-09, 7.890514353015021e-10, 2.9002535928412954e-09, 8.856441968685402e-11, 2.032529309789477e-12, 1.3331452386466935e-08, 7.204574359320759e-08, 2.8031548193752087e-09, 7.016085046274156e-09, 3.641789647623739e-10, 1.8667760670609823e-09, 6.710610955806828e-10, 3.353571642605857e-08, 1.8092988218754158e-10, 1.4489427713204606e-10, 1.932852455865941e-08, 4.812618636940158e-10, 7.991737049906078e-08, 6.571957644752047e-09, 1.8546979230205096e-10, 1.987539466341559e-09, 3.4934668491359844e-09, 9.863224820216843e-12, 2.3899585435693815e-11, 4.2745409989386474e-10, 4.03704731866128e-08, 1.9476045665101083e-08, 3.2044739084469143e-10, 8.49040782124888e-10, 1.2996910214724267e-08, 7.251700906429903e-10, 5.988609164120362e-09, 3.0683338092529766e-09, 6.425528165099337e-11, 8.316202726454947e-10, 3.614222809922296e-10, 2.0047413382129342e-11, 3.624892741527219e-08, 9.754979046761036e-10, 4.598099678787548e-08, 2.452761882487664e-10, 4.343230636250084e-11, 1.512693081906491e-08, 7.093690079784665e-10, 1.8561469028455235e-09, 4.6303769152267193e-10, 1.8107053356697378e-10, 2.2707014046829954e-09, 2.9715122029649876e-10, 3.092310019159328e-10], [3.109661183067769e-12, 2.7006355485248434e-10, 1.983155445417495e-10, 5.610863162974766e-11, 2.9147853575217653e-10, 6.56688259326188e-10, 1.2824441508740847e-10, 7.555333095266015e-12, 2.6011956477667297e-10, 3.0892888941425056e-11, 4.6414642962400166e-11, 3.9450461127021885e-12, 2.8142150068632965e-12, 4.512899776099033e-11, 3.419206584531764e-11, 1.1431869340050582e-11, 8.883849905716446e-11, 3.079629867092093e-12, 2.285456708866346e-13, 2.6897953309124034e-10, 5.574874450964273e-10, 1.0834861480235602e-10, 4.152267418788824e-11, 4.170812133164059e-12, 3.4339770610403164e-11, 1.4336870232667387e-11, 4.0247055688169553e-10, 2.139964420944107e-12, 3.381017037520917e-12, 3.849056906535253e-10, 2.9403819656881325e-11, 5.657758705979177e-10, 1.7359819137752197e-10, 4.683599428428886e-12, 2.8097272772309445e-11, 3.929912645306288e-11, 4.78389897140552e-13, 1.0371757706156837e-12, 5.175331517504045e-12, 4.90155638299683e-10, 9.493377611802245e-11, 1.2161710874480924e-11, 1.6018139939455445e-11, 3.5456926283927714e-10, 1.4103640130769257e-11, 1.695839579873848e-10, 2.4981797880352374e-11, 9.134820721026782e-13, 1.1258032700522946e-11, 1.8765067624770815e-11, 8.275330832911709e-13, 2.5260230018808727e-10, 1.7742822835953298e-11, 2.768302531652722e-10, 8.685674575403812e-12, 9.389497642939282e-13, 2.358123418755298e-10, 7.956500042149983e-12, 2.7965697466103556e-11, 1.018491280896372e-11, 4.192364771310464e-12, 6.429220350545606e-11, 2.7898221927058486e-12, 3.428369784244656e-12], [5.056547194848271e-12, 2.866054282790742e-09, 4.093113625813771e-10, 3.792750141728973e-11, 2.1877430977923495e-09, 9.903073916461835e-10, 1.114723646722382e-09, 1.5376085821250385e-11, 2.389979103512019e-09, 2.2557838930126195e-10, 9.103317544223444e-10, 5.734802823592622e-12, 1.1827680328202472e-11, 1.2172708674373922e-10, 5.896781327119349e-12, 1.2956569844790877e-11, 1.6418624237957147e-09, 1.1371631067347288e-11, 2.161175969087048e-12, 4.395142305657629e-10, 3.292098815776967e-09, 7.16984638327034e-10, 6.659948287301987e-11, 2.994381131937729e-11, 3.083386046487391e-10, 2.514092753425068e-11, 2.0523442667563785e-10, 4.54703419014435e-12, 4.533562761310783e-11, 5.907349054368183e-10, 8.580668398039393e-10, 1.338361088620843e-09, 2.1987052178928934e-09, 4.677936510377734e-11, 1.0121215671121675e-10, 1.897279035267818e-11, 4.5488751654332304e-12, 1.6832674143429927e-11, 2.11150610884836e-11, 1.9757009916965274e-10, 9.162580416610666e-11, 9.493236752255996e-11, 3.549465582564082e-11, 2.360973194726057e-09, 2.7037512853600454e-11, 7.756995046293014e-10, 3.072109233670517e-11, 9.407083619017431e-12, 3.470516929393597e-11, 4.1608422263195166e-10, 1.0777400673289694e-11, 1.1590248760739996e-09, 2.79794503538211e-11, 1.1529793786380083e-09, 2.636889873119941e-10, 1.0889451666773464e-11, 4.3756723938637165e-11, 1.545440338202031e-11, 8.797386430448029e-12, 4.374389739325579e-11, 1.62112771123768e-11, 6.542875130577386e-10, 5.9180381949131e-12, 1.546147931907882e-11], [1.7993474488164907e-09, 1.640319311491112e-07, 2.2078719297269345e-08, 1.299180674152467e-08, 1.7202361757284734e-09, 4.164462552580517e-08, 4.648105456084295e-09, 2.5519208968205476e-09, 1.3233951712265934e-08, 1.5145957821260936e-09, 1.8521838507368216e-09, 7.297378812332056e-10, 1.4518414248598788e-09, 8.56374882118871e-09, 1.304913538335839e-10, 1.0776056713623916e-09, 2.9200704076970396e-08, 6.977544236841382e-11, 5.833387836358742e-14, 1.431620266778566e-09, 8.68246772256498e-08, 2.153372946622767e-08, 8.914156524042482e-09, 1.1408981537286422e-09, 7.134429580446522e-08, 1.4324926800313165e-09, 1.6709501338141308e-08, 6.322167095396125e-11, 1.997290111077632e-10, 3.979839124923501e-09, 4.868015435199879e-10, 1.8599040174649417e-07, 1.0618214218993671e-07, 8.083879676767936e-10, 1.2039972352440032e-09, 3.073302723421989e-09, 4.68751730139938e-12, 7.20412770237322e-13, 2.1341755029880005e-09, 7.679416214045887e-09, 1.741405242228211e-08, 3.73267727837856e-09, 7.754240805013524e-09, 9.64326285490813e-10, 1.6227604815455265e-09, 6.989872236573547e-09, 1.0034532316183231e-08, 3.712123664012523e-11, 1.3848742153044213e-09, 2.0495891650540443e-09, 6.587641131379496e-13, 4.407379350368501e-08, 6.713389844037465e-10, 6.338136415706686e-08, 1.5906335970594654e-10, 1.0058399668722018e-09, 2.386267183851487e-08, 1.3162471113048468e-10, 7.705102667010522e-10, 5.25615417856784e-09, 2.4538551746111636e-10, 6.1346705493292575e-09, 2.5609312448438004e-09, 3.7431971411372444e-10], [2.091494165357144e-11, 1.5456768087673822e-09, 2.562218770485458e-10, 9.888429658433395e-11, 4.106936665748684e-11, 3.6345773613000176e-10, 4.1386363086592937e-11, 2.3341223051587257e-11, 1.277440098146343e-10, 2.7111538708490812e-11, 2.5969171257855805e-11, 5.580715143477244e-12, 6.714779340194488e-12, 8.717827154614e-11, 1.1049360211512482e-12, 9.452444903190749e-12, 3.587413421879404e-10, 2.589274281095122e-12, 1.5503073568214824e-15, 1.934636131850631e-11, 8.078442914616346e-10, 1.6830183080518424e-10, 5.269281538877735e-11, 1.358348850066804e-11, 7.086704001402211e-10, 1.2438942237347206e-11, 1.6446630168864829e-10, 3.816043618251608e-13, 3.4041474066687227e-12, 2.1163194460771528e-11, 1.5309727444123844e-11, 1.2751133482424848e-09, 9.575483739254764e-10, 8.930335637646891e-12, 1.754780348806051e-11, 2.9413603497285834e-11, 5.085647614838651e-13, 2.1398891502082823e-13, 2.694860133656274e-11, 7.193511064595981e-11, 1.0866303690182377e-10, 4.175504386694229e-11, 9.603746270459013e-11, 4.67278819804573e-11, 3.1026542446355165e-11, 9.902270670103519e-11, 1.000799165762345e-10, 2.737074889652691e-13, 1.766936597036306e-11, 2.926447278950306e-11, 1.2785199331524777e-13, 2.990973579919398e-10, 7.262275850128397e-12, 5.01546970621547e-10, 3.2388948294215236e-12, 1.2409825771164673e-11, 1.82665715886543e-10, 2.740006789167526e-12, 8.54250177539928e-12, 5.040141567991263e-11, 2.7287833451183907e-12, 3.712592039351037e-11, 1.866742871392546e-11, 3.5101791265312876e-12], [6.927554883906506e-12, 7.854085715131021e-10, 3.4081146238484905e-10, 5.086874324544688e-11, 3.861735375920716e-10, 5.260994417888298e-10, 1.884560701936877e-10, 9.26714434357212e-12, 6.974739674703301e-10, 8.337713852668571e-11, 1.6078516296147427e-10, 2.985272402541983e-12, 8.246910966624998e-12, 7.770410009877438e-11, 2.0746490463074974e-12, 7.254579315746357e-12, 7.43475947473371e-10, 8.446006914686333e-12, 9.334154000943673e-14, 4.333331957151465e-11, 8.545186225283885e-10, 2.3273620530783745e-10, 6.004929192782171e-11, 1.290569387468743e-11, 1.375715652507381e-10, 1.877164049202129e-11, 1.9048086719042345e-10, 1.575359309148594e-12, 1.7759585468901662e-11, 1.9171193799127906e-10, 1.843263319756261e-10, 1.2692744633113762e-09, 1.0079136414375967e-09, 1.717234861253747e-11, 5.911170164463186e-11, 1.6548014694639512e-11, 1.110116339131384e-11, 7.898615789203589e-12, 2.1988280987650377e-11, 9.21657403174514e-11, 6.880658542929297e-11, 4.8907131816600113e-11, 2.317054707823285e-11, 5.626946131265242e-10, 2.5381231838483842e-11, 2.6268912045601667e-10, 5.000415706502004e-11, 2.0926034342838573e-12, 2.0289615473845224e-11, 4.153299232312335e-11, 5.5814025276546e-12, 3.7059064150746224e-10, 2.514839551881476e-11, 8.268981055437052e-10, 4.584440813082402e-11, 3.841470978122041e-12, 5.890710835787516e-11, 8.776653882824892e-12, 5.182156353339407e-12, 7.488581282855122e-11, 6.9874245278711555e-12, 1.8904165732802625e-10, 1.0261274469014481e-11, 3.985708030979085e-12], [1.9724898797646162e-11, 2.8637243687512637e-09, 8.100061954507964e-09, 3.8355343207063797e-11, 6.20003881568465e-10, 2.7348618925060464e-09, 6.492666404511738e-10, 1.9584738344957664e-11, 2.3035651164349247e-09, 1.709602875932248e-10, 4.5040490781467213e-10, 4.3125582965819476e-11, 2.300449934711235e-11, 1.7382117967201793e-09, 1.0848991149892129e-10, 2.602066132006975e-11, 4.28271906827149e-09, 3.5325850578082907e-10, 1.8133672664041693e-14, 7.472722995949255e-10, 4.2202579209060787e-08, 1.1587613535368746e-08, 2.2645714470304057e-10, 8.612535684626721e-11, 2.0480053417037958e-11, 2.556242717499657e-10, 1.3376996399472318e-08, 6.516562289782257e-10, 3.9701444909390204e-10, 7.084421937975094e-11, 2.408017396593465e-10, 1.7233844573638635e-08, 3.154922101344937e-09, 5.520181534102164e-11, 4.629273631095998e-10, 3.340848986344014e-10, 2.754046324326964e-09, 1.579996029843489e-11, 2.6350917975426214e-11, 2.4238191315140156e-11, 2.822659467272004e-11, 1.4672532078208178e-09, 1.2782991332116467e-09, 1.7180001421479574e-08, 6.398563623388753e-11, 2.166180124163475e-09, 9.398206518573815e-11, 6.766994742335442e-10, 2.8727925593940995e-10, 3.0873725798130636e-10, 2.2369088525930891e-10, 1.6359303245394585e-08, 6.179009387485834e-11, 2.536026277866199e-09, 5.1197277528558516e-09, 4.2888020912457137e-10, 4.2502716623982195e-11, 1.4062580266926972e-10, 7.781244398818998e-11, 3.193716402449809e-10, 3.201443971034834e-11, 1.988227360527617e-09, 2.1798019986252193e-11, 2.6641862327370092e-11], [2.3426852363388206e-13, 5.579194398142029e-11, 6.984056388770199e-11, 4.258177469483593e-13, 3.8158406989730054e-11, 2.6301539071682534e-11, 7.779748199820968e-12, 4.1554547346514537e-13, 2.264104875804307e-11, 1.4633082072446069e-12, 5.019027728148107e-12, 3.856124133113509e-13, 2.3336294376931355e-13, 9.592822196313744e-12, 8.921385223452372e-13, 2.733115383318774e-13, 2.7676534675169506e-11, 2.0352847011906317e-12, 1.502826633795567e-16, 6.208681138653027e-12, 3.552506344650652e-10, 1.0411518175379442e-10, 2.4278873182737026e-12, 1.4957871096246689e-12, 5.623682942934582e-13, 3.697591711981918e-12, 9.04974636894984e-11, 5.338970585078151e-12, 5.07157423695892e-12, 1.9351766283176586e-12, 9.027219943780196e-12, 1.6933514312977849e-10, 2.9217472191644944e-11, 8.874811692829998e-13, 4.825526696977667e-12, 2.884743008704782e-12, 2.3870660656455378e-11, 1.2890339837201559e-13, 3.8982296665830696e-13, 2.522752189440536e-12, 4.5318179005444936e-13, 1.3968281392662263e-11, 1.202669300953696e-11, 1.457988313413594e-10, 9.915901650128789e-13, 1.7135031241122256e-11, 1.6510245861439676e-12, 7.432624828107581e-12, 3.3758573193820585e-12, 5.3207633611551675e-12, 1.844355180732893e-12, 1.601197785472408e-10, 6.299963805841968e-13, 2.7745942696166814e-11, 4.534993561233769e-11, 3.3063306866670805e-12, 2.188469674577198e-12, 1.2826663559409313e-12, 1.2223155430521326e-12, 1.853518206973437e-12, 2.917345998023485e-13, 1.7559818182855125e-11, 1.961739283387956e-13, 2.7331617329616475e-13], [1.8564154120187526e-12, 7.370756782698606e-10, 7.031489279718528e-11, 7.25574201415613e-12, 5.837143546294499e-10, 3.6445715889676933e-10, 4.033679987247574e-11, 3.800484666555137e-12, 3.040827034617166e-10, 1.620205358765503e-11, 1.3018441880063847e-10, 1.5956240235343033e-12, 9.536712782323709e-13, 3.463770589795523e-11, 4.803789744461939e-12, 1.96109860121918e-12, 1.8801181445038395e-10, 4.337548549504522e-12, 1.8067142884716078e-15, 1.2601922977362179e-11, 3.7901243254978567e-10, 1.7082489589537175e-10, 1.3350013802759797e-11, 1.534039041628521e-11, 1.4332891644375234e-11, 7.192607186928823e-12, 9.483275970056937e-11, 2.1930499950750804e-12, 2.912340854588358e-11, 3.638371895431369e-11, 1.0759924201630966e-10, 2.907377394389954e-10, 3.024359096492901e-10, 6.538993305160723e-12, 4.292665875538226e-11, 7.06066715511211e-12, 1.4595156680452526e-11, 3.5164976399520986e-12, 1.5083526441750372e-11, 2.954615024863827e-11, 8.733143548600442e-12, 1.2568249392608255e-11, 1.294891537745313e-11, 1.5987482171464507e-10, 1.0870844155408399e-11, 2.263091623821989e-11, 5.986156882686888e-12, 3.6122636999647018e-12, 8.203902834846843e-12, 4.342542297974816e-11, 2.2983193039699534e-12, 1.3894198291897197e-10, 4.299343433350478e-12, 1.1185246479028521e-10, 4.233204758952169e-11, 3.5198324289942295e-12, 2.4793861408412e-11, 9.461575620206553e-12, 6.144806018182347e-12, 1.46815511137266e-11, 1.4906233799377722e-12, 1.4003516402016913e-10, 1.1719324512562967e-12, 2.8904942675489487e-12], [2.6197422703377882e-11, 3.153182825954559e-09, 8.168151155452108e-10, 5.274325420856485e-11, 6.066226188039536e-09, 1.7887404890615244e-09, 1.7602110879977317e-09, 1.2887128864047526e-10, 5.766332300538579e-09, 1.7092570414600772e-10, 3.779428436878618e-10, 4.309269607816191e-11, 3.226615155615953e-11, 1.0589557009055284e-09, 2.547326412305484e-11, 6.157684778740347e-11, 4.553278643015801e-09, 2.2752479067467135e-10, 2.6879897613296677e-11, 7.159445258864139e-10, 1.1097443852747801e-08, 2.1521624482545576e-09, 1.2324395670670896e-10, 1.4541780279930805e-10, 2.9785163224715916e-10, 9.671134726385588e-11, 8.090942138494484e-09, 6.313789074896548e-11, 4.566427791452554e-11, 1.6884132980621303e-09, 1.4844170337369178e-09, 4.306342393789464e-09, 3.3039706526238888e-09, 5.206595918294532e-11, 3.648228247277174e-11, 2.2741719965524432e-11, 7.472165247657259e-11, 1.1342220565535577e-11, 8.378732430092128e-11, 2.9151192570964213e-10, 6.731563917394823e-11, 1.6776929845363497e-10, 8.846577637111608e-11, 5.108747647142309e-09, 1.8165853543639088e-10, 2.100539742144747e-10, 4.8043617695281426e-11, 1.0350972301509387e-09, 1.3430935530411858e-10, 3.7011008147125324e-10, 2.4721982794240205e-10, 2.0942230172238396e-09, 1.2620736400403842e-10, 2.3406829807726126e-09, 7.014406833150133e-10, 2.709180102478115e-10, 1.5413420539900358e-09, 2.1797175175919392e-10, 2.0482052165426978e-10, 8.845964516446259e-10, 3.943744983359032e-11, 1.0766949554152916e-09, 4.331230252924145e-12, 2.3972243634595714e-10], [9.824606406194647e-13, 4.2137024425237257e-10, 1.278914196767289e-10, 8.36473078302813e-12, 5.00277652637493e-10, 1.440729757717918e-10, 1.895674034413375e-10, 3.0729817562108463e-12, 4.899663452739844e-10, 2.787881731025621e-11, 7.960894443659328e-11, 1.245424336576706e-12, 8.12995558461399e-13, 3.759317510065863e-11, 4.232539611761371e-13, 2.7548137382371607e-12, 3.1318941884350693e-10, 3.785072082151952e-12, 2.06574937277465e-13, 2.0282669641047413e-11, 6.579445321897026e-10, 7.55400256235994e-11, 5.3352725883082375e-12, 9.259660746496756e-12, 4.6675614762126116e-11, 9.88111155397764e-12, 1.927979997873308e-10, 1.7553061868597064e-12, 1.908926142157874e-12, 1.447547637312141e-10, 1.2711413865940102e-10, 3.445070895224944e-10, 2.8255070505522895e-10, 5.917019912232702e-12, 7.18066925364802e-12, 1.1014234229528297e-12, 2.1402346041254905e-12, 5.354937413631911e-13, 3.424366259302536e-12, 4.419568183644529e-11, 5.1639864259711565e-12, 2.767767091904627e-11, 8.082054990532495e-12, 3.8189271189814633e-10, 9.627267733014477e-12, 3.8920078965221094e-11, 2.1795603516450157e-12, 1.3992679410990139e-11, 1.0718147723520755e-11, 4.970630851364177e-11, 3.0823403725233067e-12, 2.1957576035180892e-10, 9.159685163129261e-12, 3.401132153690867e-10, 3.996958319874011e-11, 3.0135241090717413e-12, 2.5851848439728542e-11, 3.59893235005182e-12, 5.136077327327904e-12, 1.2967601818736352e-11, 8.801693640418662e-13, 1.3926461372992804e-10, 3.511782444703959e-12, 5.20289453881384e-12], [1.2526833736981047e-11, 8.2966202796797e-09, 1.7312631328536554e-09, 9.500921577254573e-11, 7.634526788535823e-09, 2.825841116660399e-09, 2.968356227484037e-09, 2.5788175414542813e-11, 8.298361997560733e-09, 6.213186076742261e-10, 1.8080784647267478e-09, 1.069275744336462e-11, 5.229419328123264e-12, 3.235262058254307e-10, 4.3022759833866164e-12, 2.5189640304179584e-11, 4.742611636743277e-09, 2.840421994831921e-11, 1.2532650698476866e-13, 3.491677780242952e-10, 8.597420553257962e-09, 1.7643528860133983e-09, 5.231115540738074e-11, 1.233482760376603e-10, 6.686992626292465e-10, 8.840998072523476e-11, 8.861748557187354e-10, 4.693086197438134e-12, 3.197055467585308e-11, 1.4433979567129995e-09, 2.556368228212591e-09, 8.922832250846113e-09, 5.02918862110846e-09, 1.1297649621377914e-10, 2.0562390679046416e-10, 2.7967798216232964e-11, 1.1707189905008075e-11, 1.1917016852491802e-11, 8.015835217811684e-11, 1.1294979396225813e-09, 1.5680223786063152e-10, 3.018480465577511e-10, 8.366906473211699e-11, 7.337288998598979e-09, 9.594781219535164e-11, 1.050435405325345e-09, 2.501852718050923e-11, 1.2597252234403111e-11, 1.2000256344180116e-10, 8.418299946022501e-10, 6.764788382240816e-12, 4.58521043356086e-09, 8.758685443588377e-11, 5.435747407744884e-09, 5.805786962298498e-10, 9.824019202298029e-12, 4.5572715740016534e-11, 2.036734669808027e-11, 2.984782906945149e-11, 2.1854258680509275e-10, 9.102775824776366e-12, 2.557093869981486e-09, 6.412193692684198e-12, 9.760862951235794e-11], [8.681733175246176e-13, 1.0230084140916418e-10, 4.9681066552342834e-12, 6.92523024602848e-13, 4.1895781982548286e-11, 8.779524329760591e-11, 1.157498749626562e-11, 5.429503201204167e-12, 1.2704230896443125e-11, 7.105461509969435e-13, 1.2840165129063275e-12, 2.108562022901106e-12, 5.1513515675338795e-12, 4.673441755115304e-12, 1.7141718816962581e-12, 3.045115201660842e-11, 1.5422486204785812e-11, 2.4123721683450006e-12, 2.0970700761839545e-13, 1.5005899084083452e-12, 3.583126850781326e-11, 1.1309141123572175e-11, 2.4474262894091936e-11, 2.5038100932850416e-12, 1.9397502267620714e-12, 5.400339463806914e-13, 1.0515596726712317e-10, 4.550036562800397e-12, 4.699146453901459e-12, 7.476879358703226e-12, 2.7438842864491164e-11, 2.4666196168920962e-11, 3.822981167744821e-11, 2.4767121947072424e-12, 1.1432343786921262e-12, 6.411457302568646e-12, 1.6530611515047644e-12, 1.7786213474257906e-11, 4.357236359914252e-12, 1.5116891028885138e-12, 4.028086891816329e-12, 1.0750689401206603e-11, 3.068476896184169e-12, 4.768749631289815e-11, 1.49504388903543e-12, 2.793184780691682e-11, 1.814100627529902e-12, 1.2659814602883346e-12, 2.049258766151363e-12, 3.260208422672939e-11, 8.158034144056803e-12, 1.7587879069802526e-11, 3.138230343993631e-12, 2.5664305750017213e-11, 4.347312440589057e-12, 6.976446872454523e-13, 2.4598409247011954e-12, 9.437630364705907e-12, 5.801743634126222e-13, 5.648257469376139e-12, 3.1760603261959952e-12, 8.764777965908355e-12, 7.26285554592497e-14, 4.075751888765744e-12], [7.432618566840035e-14, 5.450295163106356e-12, 4.399969158550704e-13, 7.035330976644383e-14, 3.72419890065645e-12, 1.872940171010473e-12, 3.560436450875115e-13, 3.28177128484583e-13, 1.5598567359650928e-12, 7.946598159233945e-14, 9.080601125633497e-14, 7.108661668206798e-14, 3.8918148489042875e-14, 4.3833803232105895e-13, 3.715329435706634e-14, 1.5019702061941365e-12, 2.6705558337641877e-12, 1.1065952163933843e-13, 1.3038639890266147e-14, 5.1154569404195105e-14, 1.747054215704702e-12, 7.257105615228465e-13, 3.3924040876778805e-13, 1.1331339105956698e-13, 1.3181244832606576e-13, 5.3271223424220665e-14, 1.8095239933194063e-12, 6.755055228287871e-14, 2.4078840050317796e-13, 1.0342098271526323e-12, 1.8082897375662488e-12, 1.6854767364779533e-12, 2.3405938645582047e-12, 1.056087658188147e-13, 1.458799308564837e-13, 1.450659389704359e-13, 8.122509961719718e-14, 1.5923991725924624e-13, 9.434625389964646e-13, 1.5821972367251885e-13, 1.988795142026517e-13, 1.9577492838679378e-13, 8.364491689344042e-14, 1.3824059084954765e-12, 7.708678801624652e-14, 3.8417760726133787e-13, 1.3875222314423813e-13, 6.355288203249015e-14, 1.5131963065385945e-13, 5.829235206512851e-13, 1.3256782553216356e-13, 5.576371612733833e-13, 4.2454191204188696e-13, 1.9001100606125254e-12, 2.2341523975896033e-13, 3.442150129382218e-14, 2.539486362081872e-13, 4.0641857826199945e-13, 3.3773443162141495e-14, 1.9179493063181674e-13, 2.7708458899718125e-13, 1.1770181183867745e-12, 1.2088727168271286e-14, 1.4241929304718154e-13], [2.198127747529699e-12, 3.0106722670453223e-10, 2.5825929936273972e-11, 4.591892838190503e-12, 2.2518571729523984e-10, 3.258480291146171e-11, 3.293064432252635e-11, 9.784498732068325e-12, 1.0829324936789675e-10, 4.971347552368277e-12, 4.968118798298615e-12, 1.1402132493384953e-12, 2.1309102486016807e-12, 2.2297247381786178e-11, 1.8679194475901273e-12, 1.1359114170106377e-11, 1.6325325813415503e-10, 3.0853047981033166e-12, 7.735855142229631e-13, 2.6337155113048683e-12, 1.2658536718834767e-10, 4.744652587485021e-11, 5.198484004376169e-12, 4.727154431782843e-12, 8.188927834440474e-12, 2.90901287433587e-12, 7.264407131390982e-11, 1.709847649751517e-12, 1.253098059345037e-11, 6.610568342724221e-11, 7.909373850312207e-11, 1.2828574313950014e-10, 1.7513947236924565e-10, 2.4931539038125505e-12, 8.996452020848533e-12, 4.1131932929094894e-12, 3.6229428745232495e-12, 3.281168088967168e-12, 4.485206303583844e-11, 1.2794152022543859e-11, 4.789688177325724e-12, 6.572417957095844e-12, 4.215198936424747e-12, 5.573888572918406e-11, 3.6149969736415377e-12, 1.4434667003349055e-11, 8.266492525221825e-12, 3.761971636984107e-12, 5.086818986865804e-12, 2.248053306008746e-11, 4.0862617109449495e-12, 3.124305675283878e-11, 9.222456132107482e-12, 1.038153729648883e-10, 8.498059027306493e-12, 1.3569653213585386e-12, 1.9079729116078248e-11, 1.4171165109433392e-11, 1.652359564278949e-12, 1.0003423436821812e-11, 1.1663428035879608e-11, 6.886158310237533e-11, 6.23784173186398e-13, 3.037528995691874e-12], [1.6689449822138158e-09, 1.1206131489416293e-07, 1.4348249699480675e-08, 1.91757809631099e-08, 1.8928029987819173e-07, 2.0694892910455565e-08, 7.607630436723412e-08, 1.875552602115249e-09, 7.350551101126257e-08, 8.672988549562888e-09, 2.397895570993569e-08, 1.5413793574836632e-09, 1.9844201837315723e-09, 4.971884237647828e-09, 1.2656127257315575e-09, 1.0075829948164028e-08, 1.5204022929538041e-07, 3.5520364427554796e-09, 4.164838179193664e-12, 1.4800256575853155e-09, 3.9486849345848896e-07, 4.817907850451775e-08, 2.6198010427691543e-09, 3.721173813531209e-09, 4.361284222653694e-09, 3.819392802029142e-09, 3.704275997051809e-09, 5.028070737544965e-10, 1.976216523758012e-09, 2.7802775193208618e-08, 1.0607860367883859e-08, 1.1217511541872227e-07, 1.6276814562843356e-07, 1.281566630595421e-09, 8.225254255478376e-09, 2.4278448140790942e-09, 1.774839303303466e-10, 4.594418179237891e-09, 7.587942718600971e-08, 7.878109720138582e-09, 4.4896969475516357e-10, 1.774265734333369e-09, 5.588338236606205e-09, 4.2201669714359014e-08, 4.367741279764914e-09, 1.1751934536619046e-08, 3.718089836013405e-09, 4.618505133890949e-09, 9.07253205895131e-09, 1.3658322473020235e-08, 1.0652588533499596e-10, 5.3233506491778826e-08, 5.479517284356916e-09, 9.623310859296907e-08, 5.960421489703549e-09, 3.871903908603258e-10, 4.681963972075209e-08, 4.211120341324204e-09, 4.928423003036642e-09, 4.739205916592937e-09, 3.666015047087967e-09, 4.3941533078850625e-08, 1.675974636849986e-11, 3.326491748723015e-09], [3.454405164693419e-11, 6.36272456944198e-09, 6.381638550934099e-10, 2.2845478286903642e-10, 6.639610639069815e-09, 1.6704969629799393e-09, 2.603185889071824e-09, 3.121529423832925e-11, 4.341401460550287e-09, 5.584635531796778e-10, 2.450224689809488e-09, 2.6783899750859597e-11, 2.3712573571366136e-11, 1.6227033605709096e-10, 2.5770699810245823e-11, 1.7539572572111695e-10, 5.558640658875902e-09, 5.181402182308226e-11, 1.142901691255499e-13, 2.2483126471684045e-10, 6.121680495851933e-09, 1.853977527055406e-09, 4.614472692843208e-11, 9.659890248814307e-11, 2.6357827032086334e-10, 6.812817671120186e-11, 1.8309052884912802e-10, 8.780386140383456e-12, 5.608333936146792e-11, 1.02046948668999e-09, 1.5191523594637601e-09, 5.833486138584476e-09, 4.472918480047383e-09, 1.0121230936688264e-10, 3.2834029939365905e-10, 4.072959677858812e-11, 4.029320713888618e-12, 6.015569986583813e-11, 1.4771353029630063e-09, 5.758171717218374e-10, 8.414581531557275e-12, 1.178706438009769e-10, 8.991608152486563e-11, 4.1047765186874585e-09, 8.489651343035476e-11, 1.017024686689183e-09, 4.990360208401157e-11, 5.6343870541430974e-11, 1.5541617992553824e-10, 8.813862972800734e-10, 5.373754826537569e-12, 2.0462451733038733e-09, 1.1011788703108039e-10, 3.785672220146807e-09, 3.3897040729868877e-10, 1.112610264336622e-11, 5.075442843782696e-10, 6.107043343250851e-11, 8.539208229407791e-11, 3.2433009056198614e-10, 7.891414605110114e-11, 2.3848591990116574e-09, 6.947501927055677e-13, 9.730279082464932e-11], [2.0132405464945435e-10, 1.3169064061457902e-07, 8.451276123366824e-09, 8.5301105068325e-10, 1.196372068079654e-07, 3.743738830053189e-08, 3.026825012852896e-08, 2.6777657868848337e-10, 6.723588086288146e-08, 1.1945029854132372e-08, 5.744744413505032e-08, 1.0241958670054174e-10, 3.47493450680858e-10, 2.7487874199039197e-09, 2.937770166022702e-11, 3.363683498402992e-10, 8.469600487615025e-08, 1.9137572082605914e-10, 1.114930847298523e-12, 5.884106535347655e-09, 7.7103585738314e-08, 3.239991386294605e-08, 2.5476071252583665e-10, 8.377040172646844e-10, 4.736160796880995e-09, 4.3940318050772476e-10, 1.8442856131173357e-09, 4.0923452127028526e-11, 7.293396997454238e-10, 1.7785991346386254e-08, 4.2473860872860314e-08, 1.266102600538943e-07, 4.780596185582908e-08, 2.8380746641687438e-09, 8.00455790539445e-09, 1.9437948473033373e-10, 5.247250203788134e-11, 1.2502875124109636e-10, 4.5231765000153246e-09, 1.508830926866267e-08, 3.399370507306543e-10, 1.6817209846919923e-09, 4.368761741257998e-10, 7.101327526015666e-08, 5.029551775059815e-10, 2.8399542273405132e-08, 2.9309873972316325e-10, 7.986891009670316e-11, 8.096263659496117e-10, 1.9744531343235394e-08, 6.145885189656752e-11, 3.980662199865037e-08, 5.758171717218374e-10, 7.744064589587651e-08, 8.588473932036322e-09, 1.7636110627439194e-10, 3.73537922815359e-10, 4.1709649623022926e-10, 5.620175991261078e-10, 7.069569818440868e-09, 7.917608235707974e-11, 4.3833694007844315e-08, 1.307822600216113e-11, 1.5558017096850563e-09], [6.639014671350196e-09, 3.777399342652643e-06, 1.5314363110974227e-07, 1.553317474645155e-08, 7.943960866896305e-08, 6.397522867018779e-08, 1.6943577207939597e-08, 6.879844249851885e-09, 8.730863214623241e-07, 2.8398761120485005e-09, 2.3980332386486225e-08, 7.261649503931267e-09, 5.0214810087823025e-09, 7.458007189597993e-08, 5.062222641072367e-09, 9.33777783984624e-08, 3.9188759615171875e-07, 6.569740751416475e-09, 3.218441409647693e-13, 1.0811231909713115e-08, 6.425186427350127e-08, 3.162623229968631e-08, 1.0689490181903238e-08, 2.277698918362603e-08, 2.8274877195144654e-07, 8.846681609497864e-09, 7.67522756461858e-09, 2.0160663069535012e-11, 1.3676205412593845e-07, 4.3365194102307214e-08, 4.548066101506265e-07, 3.939211268289e-08, 2.005165278262666e-08, 8.798632933348927e-09, 5.1263664424539e-09, 2.6932154284509124e-08, 3.1290401381056654e-08, 1.4453013896797984e-08, 5.684706820829888e-07, 1.9168012954651203e-08, 1.195929826280917e-07, 9.310052284661197e-09, 5.841117811655749e-09, 3.10950731829962e-08, 4.933004671414665e-09, 2.3667362825108285e-07, 3.033187034873208e-09, 4.086838867323195e-09, 2.54295677848404e-08, 1.2659170067763625e-07, 6.6904867063177775e-12, 5.931135049763725e-08, 1.3125864839480528e-08, 2.2165573909660452e-07, 2.6429862742816113e-08, 1.488371759172935e-09, 5.167566285990688e-08, 3.0670722850345555e-08, 1.0964791741230329e-08, 8.982289045889047e-08, 1.9627359293394875e-08, 1.9586812172178725e-08, 3.659352768720092e-12, 3.0720801458272717e-09], [7.542699104190476e-11, 3.1864992422470095e-08, 1.5431446120928172e-09, 6.196709811945311e-11, 2.7807933733470236e-09, 1.0906647807118475e-09, 1.1352901951866556e-09, 9.632385167268609e-11, 1.535193838719806e-08, 1.7469438395867343e-10, 8.688260666467329e-10, 7.230810394887044e-11, 5.462572755243755e-11, 7.749542119128705e-10, 5.656982868251781e-11, 5.904028932413041e-10, 2.5348378951406403e-09, 6.372507382890191e-11, 2.812527330985342e-14, 1.758849177413424e-10, 2.3818371719386278e-09, 5.974850614265392e-10, 1.0230383207243676e-10, 1.0981838355350604e-10, 2.605363258467719e-09, 1.1639875868718619e-10, 1.6046426687399418e-10, 9.102683884432139e-13, 9.021975944101257e-10, 7.342998431525416e-10, 6.467587798653085e-09, 1.8042339844370758e-09, 1.6188683726880981e-09, 1.445095015872866e-10, 1.2557371809052142e-10, 2.46329623365682e-10, 3.1207453288217835e-10, 1.5321961754910518e-10, 2.8536721874417026e-09, 2.5939408954123166e-10, 1.3917437202692895e-09, 1.2798791193535664e-10, 6.569272209544508e-11, 1.426629814282876e-09, 5.476595218989466e-11, 2.420953659765246e-09, 3.6328915570260634e-11, 1.1285890624823658e-11, 1.692595091862259e-10, 2.565147427802117e-09, 1.1453698232910536e-12, 1.3505423446247278e-09, 1.511571146028956e-10, 1.8579556781972428e-09, 4.4412290511886e-10, 1.9242807000607876e-11, 3.8852171480030506e-10, 2.310541619143791e-10, 9.121965682812316e-11, 8.654327254831173e-10, 2.1731343113895463e-10, 6.985256262304063e-10, 3.05286232491625e-13, 4.1537599748675547e-11], [8.844634746818514e-11, 4.515050378017804e-08, 4.097285177806498e-09, 2.209556010379643e-10, 4.4104993435212236e-08, 1.135649085881596e-08, 2.184614089628667e-08, 1.6101439626048375e-10, 5.0373326843100585e-08, 3.987629781931901e-09, 1.734247234708164e-08, 5.923526946727264e-11, 3.174269180838962e-10, 2.4308266510786325e-09, 1.886427646036193e-11, 2.342433191859783e-10, 2.877581728455425e-08, 1.0188162119506572e-10, 2.3365094581340173e-12, 1.66311975302591e-09, 3.924446900782641e-08, 9.088432229020782e-09, 1.993784581877378e-10, 3.535916837105191e-10, 2.666202369994153e-09, 2.4764729156245835e-10, 1.1340789418667896e-09, 1.7820056194550737e-11, 7.218832198674363e-10, 8.640334669962613e-09, 1.6095118127168462e-08, 3.6889506560555674e-08, 3.015211902379633e-08, 8.287784902805129e-10, 2.056381731563306e-09, 1.68686800638973e-10, 6.55098336688198e-11, 9.349427482208128e-11, 1.4604518705496616e-09, 3.045730556650028e-09, 2.80142631314817e-10, 1.1068235217237543e-09, 2.409270005720998e-10, 2.377873542513953e-08, 4.741241288463982e-10, 6.59196919272631e-09, 1.2229138535158057e-10, 3.923927849314168e-11, 4.364021088942849e-10, 7.223272202594444e-09, 3.7351167297972054e-11, 1.3967222045607741e-08, 3.2131208804742073e-10, 2.429912981938287e-08, 4.485115390195915e-09, 7.476510383019885e-11, 2.9151192570964213e-10, 2.5105600931496497e-10, 3.517966473687295e-10, 1.5067337377772105e-09, 6.405598274028534e-11, 1.3684687161230613e-08, 8.154824905626246e-12, 3.07698033719106e-10], [1.5876100434297769e-09, 2.6851092016499933e-08, 3.028078765510145e-08, 4.698387456869568e-09, 4.922254603911824e-08, 2.15658584323819e-08, 4.94839103026834e-09, 2.862284409488325e-09, 5.642773714953364e-08, 3.5999501157846225e-09, 1.0218870194478313e-08, 1.4227743427852602e-09, 7.020246606259661e-09, 1.4348199073310752e-08, 1.8438797155795328e-09, 5.157018811985381e-09, 5.39258877552129e-08, 1.2298021490053657e-09, 2.748052674306223e-09, 1.4398153780348366e-09, 2.4291463773806754e-07, 3.6116905022254286e-08, 1.903237567546512e-09, 2.4244115603977434e-09, 3.534299963803278e-09, 9.71552949202703e-10, 3.1466169048144366e-07, 6.991806439371473e-11, 1.2016336370379577e-07, 1.3116711272687098e-08, 6.106545491491033e-09, 1.706273451418383e-07, 1.9491860570042263e-08, 1.0004649331207816e-09, 6.664953033919119e-09, 1.97595584339183e-09, 2.663578246853149e-09, 5.7552838050867194e-09, 3.568305118051285e-08, 1.4714342633226352e-08, 1.0220027046869973e-09, 4.035900058596553e-09, 1.2631443668809084e-09, 2.954100253305114e-08, 2.2322770298899286e-09, 5.6578985940802795e-09, 1.4017081939599052e-09, 2.2240547181695547e-09, 3.1103328801407315e-09, 3.276558757647763e-08, 3.6327357788579206e-10, 1.8228789144814073e-08, 1.6126145752082266e-08, 3.0048560972772975e-08, 2.7315882888956367e-09, 7.375076660487423e-10, 8.331610956702207e-09, 8.966950737487878e-09, 1.2362927348519293e-09, 7.773127030930027e-09, 9.78825820396878e-09, 5.8946856285047033e-08, 4.692790600557828e-11, 1.11755804610425e-09], [1.437641238694054e-11, 1.0079200807311395e-09, 3.53921836282467e-10, 3.901217196511375e-11, 1.1688982004542936e-09, 2.41470010653444e-10, 2.55497234480373e-10, 4.74766961855444e-11, 1.1072942562861954e-09, 1.0653634918700305e-10, 2.5201871145519306e-10, 1.1590662457594547e-11, 6.57719573249338e-11, 1.923731868247458e-10, 1.4788028440682055e-11, 9.989519628161858e-11, 8.1749496061434e-10, 1.0837462871560177e-11, 3.409974386192616e-11, 5.3114446868507414e-11, 2.057575443359383e-09, 4.2260911436997617e-10, 1.9194699649172087e-11, 4.436771783300486e-11, 1.095082358126831e-10, 1.794508465435829e-11, 2.288467859656862e-09, 1.3963960196483605e-12, 9.468775763465942e-10, 3.495170264322667e-10, 2.495517126277491e-10, 2.078385019643747e-09, 5.678209014092772e-10, 1.9914719179281448e-11, 5.1384729804482276e-11, 1.5992972571265973e-11, 1.8356118708373614e-11, 6.018506526483947e-11, 2.6697702382172395e-10, 1.1851909731408483e-10, 2.0511056395000615e-11, 4.950748491716617e-11, 1.7815620506622665e-11, 6.840973898469827e-10, 5.172533582009642e-11, 1.503634716737423e-10, 1.6506629396673134e-11, 1.4101377183994845e-11, 3.830036288121619e-11, 2.9390836986387114e-10, 1.863119250891665e-12, 2.684544808673195e-10, 9.754678315099241e-11, 4.985398205370473e-10, 7.376987909424315e-11, 8.918838757809855e-12, 6.63223226338161e-11, 8.666144885038918e-11, 1.5110185672129184e-11, 1.1014714834667316e-10, 6.37669708702937e-11, 5.603178476754067e-10, 7.188270161398447e-13, 1.1725732364242791e-11], [5.172136330333643e-11, 1.3871857440506119e-08, 2.7014575021411247e-09, 1.611718258853756e-10, 1.320582843078455e-08, 3.348190613650104e-09, 5.547246662018779e-09, 1.3560637335263692e-10, 1.5965223809644158e-08, 1.5580934320524875e-09, 5.117425150302779e-09, 4.198173059188903e-11, 3.3171629332251484e-10, 2.3033117635407052e-09, 1.0390677034066709e-11, 1.692509882245119e-10, 8.942344642548505e-09, 7.466170043324283e-11, 5.511331842289469e-12, 9.386836863356507e-10, 1.8267325430088022e-08, 4.1509369275161134e-09, 1.7468620994165462e-10, 3.714157037482124e-10, 1.3645966578934576e-09, 1.241751423908255e-10, 1.7350133552085367e-09, 2.068095694696126e-11, 7.724008099785351e-10, 4.972432243732783e-09, 5.198332431177732e-09, 1.2391764059316301e-08, 1.190976028908608e-08, 3.1450719806258576e-10, 9.578143833621766e-10, 6.251995449124692e-11, 6.602608043637659e-11, 8.852098221101556e-11, 1.098932611576231e-09, 1.7292467457963312e-09, 1.2171293140017525e-10, 4.4062964388302817e-10, 1.2026843410062327e-10, 8.065260459488854e-09, 5.407226333353776e-10, 1.655370285291724e-09, 1.3934632614454046e-10, 4.2642250841495866e-11, 2.3896590262140194e-10, 1.5842217537809233e-09, 2.6202026659483124e-11, 2.5318425134202016e-09, 1.9780477256148288e-10, 7.824098702258198e-09, 1.7006207553293962e-09, 5.401648225933364e-11, 2.4315757740644983e-10, 1.8666873602413148e-10, 1.6400253377568674e-10, 7.435318472026609e-10, 5.022176077784657e-11, 3.7963787669070825e-09, 1.3121333013177416e-11, 7.902008214433209e-11], [2.0039134795979407e-09, 1.2478915323299589e-07, 1.2203350330253215e-08, 6.721711520718543e-10, 1.0903153935259979e-07, 4.4482217020913595e-08, 3.470286102924547e-08, 6.012975117819508e-10, 1.0833056762749038e-07, 1.0584230381027737e-08, 3.5447182966663604e-08, 4.109206586111469e-10, 2.9301732151765236e-09, 8.33468138949911e-09, 2.979424207349979e-10, 2.8978475175023277e-09, 7.090373799201188e-08, 7.320584138881259e-10, 6.836528305270706e-12, 9.126688738092525e-09, 7.70462875721023e-08, 4.119909746691519e-08, 1.0142967576953765e-09, 2.6962430066390652e-09, 5.837913263917471e-09, 7.005233060297655e-10, 6.251856632388808e-08, 9.354773899961089e-12, 2.3279778105234072e-09, 3.026049100185446e-08, 3.3987056724527065e-08, 1.1094254404042658e-07, 8.074289326032158e-08, 1.8350770902841873e-09, 2.505721186096821e-09, 1.1989745307694477e-10, 5.507560518758225e-10, 4.257623142933653e-10, 1.935009130704657e-08, 1.057441956220373e-08, 8.751165070375322e-11, 1.6747863096355786e-09, 9.560831015775761e-10, 1.0708565412187454e-07, 2.9388167455124403e-09, 2.195151793671357e-08, 3.9525666073458865e-10, 1.4879186771565855e-09, 1.3969129186719442e-09, 1.0220621682321962e-08, 1.1559832951979487e-11, 3.125420988681071e-08, 1.9703334519505233e-09, 4.291141664225506e-08, 1.0286287377425651e-08, 2.313563923772577e-10, 1.3825143252432781e-09, 9.443533732778064e-10, 1.6065133667808595e-09, 9.617878937717705e-09, 5.146400194888656e-09, 4.7266098590625916e-08, 2.9667193181259766e-12, 5.805773639622203e-10], [2.6382217591103263e-11, 8.386511041180711e-09, 4.80397999158555e-10, 6.29301472043764e-11, 7.628249143465382e-09, 2.494566331279202e-09, 1.9818966467965993e-09, 2.214501845787531e-11, 6.370724392468219e-09, 5.529641189383483e-10, 2.2078785466561612e-09, 1.8522660835684768e-11, 3.73992850577487e-11, 2.2006874100810592e-10, 5.169174550206934e-12, 1.0011982909396977e-10, 5.529801061499029e-09, 2.2151225298472355e-11, 1.743040797417758e-13, 7.082410768965985e-10, 4.993185420687496e-09, 1.6488755916199693e-09, 3.0788767368949976e-11, 1.572845464981043e-10, 5.568387972942901e-10, 5.430532759587159e-11, 1.040993402590118e-09, 7.523946743415166e-13, 1.0356522583965244e-10, 1.2109955260797278e-09, 4.0862859762569315e-09, 8.246989757765277e-09, 4.373459816520153e-09, 1.5401432906791968e-10, 1.4244083690329035e-10, 9.380112138412944e-12, 1.0090705181153847e-11, 1.3728733427864626e-11, 1.1323056936518583e-09, 8.620383851187796e-10, 5.658789409279663e-12, 1.288232437390846e-10, 4.759188529379621e-11, 7.307495497599348e-09, 5.289428270383034e-11, 1.9422081720676942e-09, 1.3091365665129917e-11, 1.581603424616329e-11, 9.899784464417749e-11, 1.1518977993674184e-09, 9.661715871800425e-13, 3.2988380915810467e-09, 7.306693444730783e-11, 3.5924663244202293e-09, 5.737753605572493e-10, 8.057592787436008e-12, 4.3778761865675975e-11, 3.4652954117309065e-11, 6.262153295910622e-11, 2.789050657092673e-10, 6.108370059765278e-11, 2.6822379872726287e-09, 2.394696311906752e-13, 2.161966265734616e-11], [1.3475701110543525e-10, 1.1052593151816836e-07, 4.892799054800889e-09, 6.232647731252428e-10, 9.603145656456036e-08, 4.225371341703976e-08, 2.3764233247902666e-08, 2.447489155787963e-10, 5.573837569272655e-08, 7.628036868823074e-09, 3.596947451001142e-08, 1.0556364116176553e-10, 3.5862440794787176e-10, 2.7815436620670653e-09, 2.7447823527926296e-11, 3.717894880850281e-10, 7.394014289729967e-08, 2.0195882466378379e-10, 3.2678586399381704e-12, 7.230170240291045e-09, 6.120112061580585e-08, 1.759552503699524e-08, 2.6976454403637717e-10, 1.1442994329868839e-09, 5.5290558798049005e-09, 4.3708969776901085e-10, 1.8528971690301432e-09, 1.250891664555942e-11, 7.873232621413706e-10, 1.6458377771755295e-08, 3.7228311100534484e-08, 1.1261980148447037e-07, 4.248931162464942e-08, 3.105317336604685e-09, 4.242655116115657e-09, 1.6780926648252148e-10, 7.451684408410486e-11, 9.555353730483773e-11, 1.0019245877401772e-08, 1.2619906009092574e-08, 1.1737047445059545e-10, 1.4741308174137657e-09, 4.10633110847769e-10, 9.751477847430579e-08, 5.550847559376848e-10, 2.40598385659041e-08, 1.6940998603942603e-10, 7.115971700777379e-11, 7.080771524670126e-10, 2.031102042110433e-08, 2.1633516159025312e-11, 4.9019476477951685e-08, 5.696577098923683e-10, 6.247161365990905e-08, 7.759342501856281e-09, 9.977448728326621e-11, 3.666462689011496e-10, 3.2834421292982086e-10, 5.758735155403372e-10, 3.9873873092233225e-09, 8.845234267251811e-11, 3.2111771020026936e-08, 9.820882822253463e-12, 2.1487109314044517e-10], [1.0128908822792937e-10, 7.807940072268593e-09, 4.335271697186727e-09, 2.5872684550343195e-10, 1.0582021481297943e-08, 5.711799033747411e-09, 1.2949360472802596e-09, 7.439346916271461e-10, 1.2010064942558074e-08, 2.680314858949373e-09, 9.202417494691417e-09, 7.524287443105848e-11, 1.2423845285880475e-09, 5.593960406002907e-09, 8.251408584181164e-11, 1.267541210880907e-10, 1.1540911337704074e-08, 8.316522470686039e-11, 5.5080488781111825e-12, 1.5167059275178474e-10, 2.032819956809817e-08, 1.0335213573853252e-08, 3.4623370837039147e-10, 1.4182034713261515e-10, 4.2544273659572696e-10, 1.0948982692715603e-10, 9.814774548644323e-10, 6.751477849009646e-11, 3.5335281367565585e-09, 6.236556604477528e-09, 5.9250822026513106e-09, 1.7949687958207505e-08, 8.346483504340085e-09, 3.8779462974147805e-10, 1.8046398819748788e-09, 1.1511935155139597e-10, 2.508115659605181e-10, 4.077580634254119e-11, 3.5294136502272977e-09, 4.657909613570155e-09, 3.2146663109244855e-10, 9.546328172405083e-10, 8.564612213879386e-11, 7.056274231587167e-09, 1.2124375947664134e-09, 8.096938119983577e-10, 2.252140696157312e-10, 5.239309680549198e-11, 3.1521329990624736e-10, 3.271785897762669e-10, 8.450125599246405e-10, 1.5861937319172625e-09, 2.5706847761597373e-10, 8.337889489951067e-09, 1.682080252862761e-09, 6.715100697718412e-11, 6.876613167783319e-10, 3.009758831051812e-10, 1.0042720821612505e-10, 9.012251500628565e-10, 1.103098792865076e-10, 3.233374679112444e-09, 3.832327163943994e-11, 6.296192733845629e-11], [2.018591023500438e-12, 2.1838929276096763e-10, 4.996077510033281e-11, 3.1294188160974068e-12, 3.8577224747982086e-10, 1.346343730945776e-10, 6.194281892968334e-11, 4.420336492672039e-12, 3.56424140202094e-10, 3.860793629240078e-11, 1.246384939701528e-10, 1.3266437644612883e-12, 1.5411678877530477e-11, 7.10627737210423e-11, 1.6559433945600999e-12, 3.335122542719171e-12, 2.3252889891356432e-10, 2.366554651897501e-12, 2.1295902460092067e-14, 1.2301163559991224e-11, 2.836408885542596e-10, 1.5874725145526014e-10, 5.62026033351648e-12, 6.4210754768811995e-12, 2.8367032681164694e-11, 2.862127201908038e-12, 3.4587121361395745e-11, 2.073838930444216e-12, 8.162090447960679e-11, 1.0310781395350688e-10, 1.1282252215805144e-10, 4.918167539891272e-10, 2.5527038816086645e-10, 1.2770430546371614e-11, 4.6541121651033635e-11, 1.0048087578998222e-12, 6.751958801093361e-12, 1.9803039416621537e-12, 6.758182902188992e-11, 6.514280087577262e-11, 1.7197818689973499e-12, 2.114626529436947e-11, 2.9836699517310494e-12, 3.7651207152045174e-10, 1.4616164181746605e-11, 6.391481094381035e-11, 4.159498700334607e-12, 1.051030356497007e-12, 7.125733596929917e-12, 1.9476571397336606e-11, 1.7169651117532325e-11, 7.33977323363888e-11, 4.310523292472279e-12, 3.369647894047034e-10, 1.8045509531106063e-11, 1.9570753437975208e-12, 1.6093341936862515e-11, 8.438389743903318e-12, 3.4520431218404424e-12, 2.5425276467538893e-11, 2.0679549652541374e-12, 1.3297501988418503e-10, 4.3147026207966677e-13, 2.4827407924671308e-12], [3.3848823050020016e-11, 6.323870760382988e-09, 1.8233483611851398e-09, 1.2491795098323877e-10, 8.518933114487481e-09, 2.3606605559223226e-09, 1.9224346559099104e-09, 1.0317482285193691e-10, 7.552154457357574e-09, 1.0435696751187606e-09, 3.062005760057218e-09, 2.811013748160729e-11, 2.7563296089994083e-10, 1.6274971370577873e-09, 1.0203055414437223e-11, 9.968404574012268e-11, 5.412577941399377e-09, 4.865474689808025e-11, 9.121712716761432e-13, 5.036002170832887e-10, 8.65748983613912e-09, 2.423331979528598e-09, 1.469757093808255e-10, 1.7609595726053584e-10, 1.0570574415780243e-09, 7.81845282959992e-11, 7.434191040545102e-10, 9.753493152020454e-12, 6.723539502928588e-10, 2.5440014539412914e-09, 2.5724087304723753e-09, 8.356527914088474e-09, 6.294727405986578e-09, 1.9533981376884668e-10, 7.408629265626132e-10, 4.826541250002592e-11, 5.0983599286791303e-11, 5.922495133203753e-11, 1.0624832125216699e-09, 1.1444822867190396e-09, 9.668939954243783e-11, 3.0230473679893066e-10, 7.79385722626813e-11, 3.886944099917855e-09, 3.8370226440598287e-10, 8.196419654105114e-10, 9.947046658576042e-11, 2.8269903779021277e-11, 1.5300284650354712e-10, 6.684975351056721e-10, 1.8452120040257647e-11, 1.4482293142492608e-09, 1.2663524395772896e-10, 4.416675469798292e-09, 7.710497240687175e-10, 3.4751125588261544e-11, 1.9228858783026936e-10, 1.3252907105076872e-10, 7.501041454638369e-11, 5.143070969104713e-10, 2.6669498207065878e-11, 2.2471509097954367e-09, 1.1762151148897448e-11, 6.345886316427851e-11], [1.2978813856978633e-10, 2.1688614793013983e-10, 1.289937184845158e-10, 5.715020037072582e-12, 1.4932013958635082e-10, 1.7003193297782104e-10, 1.1715536873957433e-10, 4.786990248639711e-11, 2.2055303416923522e-10, 2.921567501812383e-11, 1.675061755967988e-10, 6.808689723136752e-11, 5.0810630009001656e-11, 1.1634031932272748e-10, 5.77335713958238e-11, 1.1401907890062901e-10, 2.5817351034795877e-10, 7.55269631558253e-12, 4.2465174172195974e-13, 7.788808487063648e-11, 3.314159502387781e-10, 1.2091805334790706e-10, 4.393825234205728e-11, 9.346689221201299e-12, 7.720216133044744e-11, 3.684651889157564e-11, 4.1679135143191104e-10, 1.2153932374414644e-12, 1.7120010964433163e-10, 4.653656279773877e-11, 1.1338684852146841e-10, 1.7755663606067174e-10, 2.432061496637772e-10, 9.409424628348262e-12, 1.9730344094637253e-11, 7.491660070080286e-12, 1.903195699995419e-12, 6.113467804907957e-12, 2.2287034717738408e-10, 4.053480467947068e-11, 5.5362433387662335e-12, 1.6206064268331488e-11, 3.255662753276489e-11, 2.9254768052489055e-10, 6.5078350694469655e-12, 7.548309199911785e-11, 4.783426085785969e-11, 3.412502268609896e-12, 3.428698297502919e-11, 9.160978919897644e-11, 2.564556423126363e-12, 1.61091209816e-10, 5.1487736296707e-10, 1.645556330087672e-10, 2.522840096552681e-11, 3.5999467296043974e-12, 3.807472392924893e-11, 8.02254096488042e-12, 1.726525866718731e-11, 5.495327110027759e-11, 4.4585879432901265e-10, 7.963446568837185e-11, 1.930979681707967e-12, 4.2139187972356495e-11], [8.173302035174856e-10, 1.2027060236619036e-08, 1.7085376446956957e-09, 9.768674064103422e-11, 1.4042559115523545e-08, 5.519149581800775e-09, 3.3495604068178864e-09, 3.06811936967577e-10, 6.165531640789368e-09, 1.1857482773436345e-09, 4.501304662340999e-09, 4.4515249819632174e-10, 3.6703923234071567e-10, 9.908780462808409e-10, 3.4719266350791145e-10, 8.204900647790225e-10, 1.1521200882214089e-08, 6.720975859186851e-11, 1.413415825352038e-13, 1.5562859889683978e-09, 1.099973623297501e-08, 3.5594296399210634e-09, 2.8360866433096987e-10, 1.9974435994107864e-10, 1.1697819379818952e-09, 4.0295916603483306e-10, 2.8504032467679963e-09, 4.8437937688605714e-12, 1.146011174846251e-09, 1.509302016700076e-09, 6.331905222367595e-09, 1.8683666169749813e-08, 7.294377990518797e-09, 2.8666588547388017e-10, 4.546993337406491e-10, 1.2346237747429267e-11, 6.598931037021805e-12, 3.001502865696004e-11, 2.288698786045984e-09, 1.8902031051482027e-09, 4.971974915113364e-11, 2.786638697571675e-10, 3.2238758884695073e-10, 1.131931792741625e-08, 5.65688329512426e-11, 2.957368128164717e-09, 3.0611066459407255e-10, 1.6908417374561502e-11, 3.528043135414549e-10, 2.97915780933522e-09, 1.5007642698017243e-11, 6.612125069693775e-09, 3.6672911374324713e-09, 7.591653528038478e-09, 6.68904376333046e-10, 2.1611769665530467e-11, 2.831881951159687e-10, 7.048947536780759e-11, 1.8422045833244027e-10, 9.541422096859264e-10, 2.613742111634565e-09, 5.243432354973265e-09, 2.052995360518617e-12, 4.34598357301752e-10], [1.0928338789462089e-10, 8.066294299169385e-09, 6.369901828229274e-10, 7.206232832679405e-11, 7.3363182195862464e-09, 2.8750888336759317e-09, 2.3943749205557197e-09, 5.483504969538977e-11, 5.9593152634818125e-09, 7.167475502001253e-10, 3.0903553049910215e-09, 6.949510411580206e-11, 6.482045455946661e-11, 3.4567212980896045e-10, 4.927657240583194e-11, 1.1507585856440627e-10, 5.518608237053968e-09, 2.1503958336221984e-11, 6.581931180638101e-14, 6.384659467784104e-10, 6.1856364474977e-09, 1.8444499261249803e-09, 7.533831891670673e-11, 9.245098436805321e-11, 4.2808034894648017e-10, 6.162177712543127e-11, 5.748405640382259e-10, 4.052358709011328e-12, 1.7905710247845263e-10, 1.2722745079685183e-09, 2.864747994379968e-09, 8.250523819697264e-09, 4.231663908171868e-09, 1.9204293710828324e-10, 3.820768423867804e-10, 3.035541262796926e-11, 1.671238668288222e-11, 1.4421823110732923e-11, 6.656530882054312e-10, 8.880620128159933e-10, 3.029433648382707e-11, 1.5564176336635427e-10, 6.073985064913856e-11, 6.5027223605795825e-09, 6.115258993633077e-11, 1.7170328492355225e-09, 5.373151229504103e-11, 9.770653904006554e-12, 7.992160405700943e-11, 1.3882152094524258e-09, 7.081283476262357e-12, 3.559508465755812e-09, 4.4666897958123286e-10, 4.985229118403822e-09, 6.389266338224786e-10, 1.1643544635397962e-11, 6.590564205488647e-11, 2.5893951913213975e-11, 6.551816034150448e-11, 3.8022726633890613e-10, 4.0851333427127656e-10, 2.647761343510524e-09, 5.969674841260764e-12, 9.867684447328884e-11], [1.0044632148265009e-07, 1.365785067264369e-07, 1.324975471561629e-07, 1.4218232813334453e-08, 1.786706604889332e-07, 1.773553748307677e-07, 1.520127312915065e-07, 4.4187370207282584e-08, 2.388443647305394e-07, 3.660523972826013e-08, 2.4462946157655097e-07, 5.982151662919932e-08, 4.263706898655073e-08, 1.2645897129459627e-07, 4.9667580270806866e-08, 9.956828961321662e-08, 3.227662546123611e-07, 2.148847100258422e-09, 2.7906002161848242e-12, 9.681823343044016e-08, 1.1008077649421466e-07, 1.1727235005309922e-07, 2.7995833207228316e-08, 2.428849787960985e-09, 5.271988356980728e-08, 2.5263938496777882e-08, 4.09525284794654e-07, 9.101331910343902e-10, 1.5808308262421633e-07, 8.603733903100874e-08, 4.040266077254273e-08, 4.0389940636487154e-07, 1.09850056162486e-07, 1.0889894319632276e-08, 3.6403942971219294e-08, 9.578587700787011e-09, 9.419665047971648e-11, 6.41106057130969e-10, 2.1394846783096e-07, 7.940150936747159e-08, 3.461495268197723e-08, 4.446699897187045e-09, 2.509653818094648e-08, 1.4854362007099553e-07, 9.561110125844152e-09, 3.659430447555678e-08, 3.016764438257269e-08, 2.6432493971384474e-09, 1.889250889064442e-08, 1.2664267501349968e-07, 6.541792663128376e-10, 4.018034971409179e-08, 4.330692888743215e-07, 1.4156289473987727e-08, 1.1306211966655155e-08, 8.460490086292793e-10, 5.1324104077821175e-08, 2.7099231747484964e-09, 1.645776848135938e-08, 4.354092908442908e-08, 4.4557285150403914e-07, 1.1375699671134498e-07, 1.1911979735934608e-10, 1.8707270399431764e-08], [4.97590546544302e-09, 1.296861285027262e-08, 7.880570862539571e-09, 2.2556810586049636e-10, 1.1537798272343025e-08, 7.772245069759265e-09, 3.297542461311309e-09, 2.457167580516284e-09, 1.2897550583090833e-08, 1.6346876074990746e-09, 1.3442313928635485e-08, 2.9550535352029783e-09, 1.8995367501162264e-09, 6.88957380035049e-09, 2.3633595080951864e-09, 4.951012932963295e-09, 1.7910561922462875e-08, 1.7886901682029333e-10, 4.3935184266749583e-13, 5.469556807469189e-09, 1.594676390936911e-08, 7.579404659452393e-09, 2.5481028398388617e-09, 1.2514096703331035e-10, 2.843011159825437e-09, 1.88277660129188e-09, 2.2658724674329278e-08, 2.860178240082778e-11, 8.505300463923504e-09, 3.636243528504224e-09, 4.035106915267761e-09, 2.0816333545781163e-08, 1.5330087421716598e-08, 3.8720321393626023e-10, 1.7047060429931093e-09, 1.4793870295459755e-10, 5.262624103857805e-12, 7.418708702910948e-11, 1.1532654831114542e-08, 4.160658484408941e-09, 3.831007733268166e-10, 6.297086740936209e-10, 1.5102089578888922e-09, 1.708028740665668e-08, 1.9687182439831474e-10, 2.1421244777997117e-09, 1.9766677183952197e-09, 1.133619725868229e-10, 1.2191879728007393e-09, 7.184417949446242e-09, 6.028923887901882e-11, 6.04622396593868e-09, 2.3506625979052842e-08, 2.3979143115582247e-09, 7.913534272319112e-10, 5.7596281910488045e-11, 2.4701043432884262e-09, 1.3629002093562548e-10, 1.0535002870071253e-09, 1.8314224581317262e-09, 2.2859492077031973e-08, 7.333038176682294e-09, 3.5274743195867764e-12, 1.0092950919471377e-09], [4.578646439767908e-08, 9.375514764542459e-08, 6.941513674973976e-08, 8.179480981418408e-10, 1.0123438443088162e-07, 7.001325030842054e-08, 1.4228748845823702e-08, 1.9195814715544657e-08, 6.75928291116179e-08, 1.5306762080058434e-08, 7.250236677691646e-08, 2.5534395931003928e-08, 1.815463512855331e-08, 5.177455619786997e-08, 2.1041120845666228e-08, 4.3929713200441256e-08, 1.4209931009645516e-07, 2.1569876995641835e-09, 7.965373152729605e-12, 3.362816514140832e-08, 1.8533349077642924e-07, 6.393104712287823e-08, 2.044149205460144e-08, 1.3201668647155884e-09, 2.215161920560149e-08, 1.925409875980222e-08, 1.8384294264706114e-07, 1.0605407524399979e-10, 7.005665025872077e-08, 1.7320781253715722e-08, 6.868226876122208e-08, 1.7000539287437277e-07, 1.5628060623384954e-07, 2.7170647953767e-09, 9.759776986584257e-09, 2.752295891195189e-10, 8.063088391407902e-11, 4.3921011272374244e-10, 8.797910311386659e-08, 2.5546787796315584e-08, 5.856523599412355e-10, 8.425146802437666e-09, 1.454472453588096e-08, 1.4971071493619093e-07, 7.848420802147871e-10, 1.9928481975739487e-08, 1.7522513218182212e-08, 5.65530622331778e-10, 1.3371628249103651e-08, 4.59989593082355e-08, 2.373100049801735e-10, 6.009386055438881e-08, 2.111582659836131e-07, 3.104130286146756e-08, 5.220799792482467e-09, 4.1778289161520377e-10, 1.6948053627174886e-08, 1.8433611304047304e-09, 8.401920936762508e-09, 2.0467739503260418e-08, 1.8039463611785322e-07, 6.335562829917762e-08, 3.9434240595159764e-11, 1.238137414816265e-08], [1.4654953872650367e-07, 2.913331798026775e-07, 1.516518040034498e-07, 1.1216203965602745e-08, 1.7887321845933002e-08, 2.6076673975694575e-07, 3.389599498859752e-07, 5.376417178126758e-08, 1.4263392245084106e-07, 5.353127008334013e-08, 2.902276889926725e-07, 7.704095139615674e-08, 5.96858100720965e-08, 1.6496480270689062e-07, 6.20008933083227e-08, 1.2759811340856686e-07, 4.439629890384822e-07, 5.271777236970365e-09, 9.583394191062244e-13, 1.0085356194622364e-07, 6.304929343059484e-07, 1.1509686004274045e-07, 7.230690357573621e-08, 8.50785841777224e-09, 1.7410010855201108e-07, 2.853931135859966e-08, 5.525605502043618e-07, 1.7588264178414192e-11, 2.0196377192860382e-07, 4.9892916464955306e-09, 7.251374967154334e-08, 2.3528994574917306e-07, 3.3063193427551596e-07, 1.2181166297864365e-08, 4.883511550701769e-08, 1.5343191606120854e-08, 3.078138854917256e-10, 3.3677043376201254e-09, 2.9647557653333934e-07, 1.0631064384369893e-07, 1.0379256565329342e-08, 1.5146433440804685e-08, 3.451682673016876e-08, 3.1332857020061056e-07, 1.3813638233273196e-08, 5.852323425870054e-08, 5.092869415079804e-08, 1.4521795987931796e-09, 2.3596221865318512e-08, 1.5979760803475074e-07, 5.29859966666435e-12, 2.924332704878907e-07, 5.655487598232867e-07, 4.1628646840763395e-07, 2.981773761234763e-08, 1.9672730111608416e-09, 5.374755218667815e-08, 2.780555341530544e-09, 1.680255401481645e-08, 5.847185136076405e-08, 5.754913559030683e-07, 2.6721945545205017e-08, 7.496272047546881e-09, 2.9607221563310304e-08], [5.386062706946859e-09, 6.000743457690305e-09, 6.318132683702515e-09, 1.1351553724781027e-10, 1.7330378243585187e-09, 6.627074000675748e-09, 1.2973671914551232e-08, 1.9343200374777325e-09, 5.651474843659798e-09, 2.001297572107319e-09, 1.2097348012218845e-08, 3.0566593700598332e-09, 2.224362027902771e-09, 6.2265139710859785e-09, 2.3282196170981706e-09, 4.936418385170782e-09, 1.5787911422648904e-08, 1.6767534583017607e-10, 1.0418956550382191e-13, 4.476111037376995e-09, 2.2227490958925955e-08, 4.7608517128594485e-09, 2.391935760570618e-09, 2.1017787510402286e-10, 4.403925668583497e-09, 1.5760829308320012e-09, 2.1264282779043242e-08, 9.820279355324257e-13, 8.02579158687422e-09, 3.5618180627139395e-10, 3.975536344569264e-09, 5.966048988170769e-09, 1.2228911216993765e-08, 4.971461020630841e-10, 1.5850916135207171e-09, 4.0501993425756666e-10, 6.288925109843024e-12, 9.387053634402065e-11, 1.1346913630916333e-08, 4.2022709756395216e-09, 1.1357510071308141e-10, 6.443234279451815e-10, 1.3433922863015368e-09, 1.6514334788553242e-08, 4.2037143210826855e-10, 2.5470052733567172e-09, 1.8937793555551252e-09, 8.37321253999157e-11, 1.0990766075025249e-09, 5.756146226332248e-09, 7.889702888404238e-13, 1.0250235327191604e-08, 2.301313450914222e-08, 1.1629680329861003e-08, 1.144002781394704e-09, 4.906784353830851e-11, 1.8479994201570094e-09, 1.2656403702848706e-10, 7.2101324910534e-10, 2.478685479090359e-09, 2.1989025711377508e-08, 1.5423109456236261e-09, 9.925913563302302e-11, 1.1389374998671542e-09], [3.204956655622482e-08, 4.626762617476743e-08, 4.1331098543651024e-08, 1.7588076828278787e-10, 4.017483234974861e-08, 3.2574771324789253e-08, 5.4871101440312486e-08, 9.898800001906238e-09, 5.3377043229829724e-08, 9.827982871968288e-09, 5.007342451790464e-08, 1.6485358855788945e-08, 1.2745166699801302e-08, 3.408845827834739e-08, 1.364281398963385e-08, 2.7547532255312035e-08, 8.401911344435575e-08, 1.262515869626668e-09, 4.8203082150810594e-12, 2.2464121229859302e-08, 1.1779006570122874e-07, 4.426054189821116e-08, 1.0528365734785439e-08, 8.486955027642296e-10, 1.9473906931466445e-08, 1.303116636819368e-08, 1.202948283207661e-07, 3.3434113116959097e-11, 4.381777429784961e-08, 5.234277455912206e-09, 4.931897024107457e-08, 5.976455241807344e-08, 8.856473243668006e-08, 1.9921801985844922e-09, 6.274124775274004e-09, 3.7853783996233403e-10, 1.0084817009259339e-10, 1.3102410267862297e-09, 6.05731713676505e-08, 2.4157127853641214e-08, 9.584049109889747e-10, 4.796903763093496e-09, 8.95625262842259e-09, 1.1517111886405473e-07, 2.886731520490571e-09, 2.5269679682082824e-08, 1.2544157712568449e-08, 1.1135248279003918e-09, 8.526227723848478e-09, 2.5212152365838847e-08, 3.611798360392271e-11, 5.4641887459183636e-08, 1.4070401732624305e-07, 3.8124614576418026e-08, 8.27381718693232e-09, 2.9503718912415877e-10, 1.197832766308693e-08, 9.520774169047286e-10, 4.713669454758929e-09, 1.5817620990787873e-08, 1.1642720920690408e-07, 2.1617179157829014e-08, 1.5389337373883372e-11, 7.211390595784906e-09], [6.531119822739129e-08, 5.123395396822161e-08, 3.985030971875858e-08, 8.316756172632722e-09, 2.8186459388734875e-08, 2.4762282890833376e-08, 8.534673412441407e-08, 2.2500126206637105e-08, 2.132337684201957e-08, 1.8622645647781155e-09, 7.951062741540227e-08, 3.042408636133587e-08, 2.228173556773072e-08, 5.715976136855261e-09, 2.944127963644405e-08, 5.0967294384918205e-08, 4.1068467737659375e-08, 4.321087043734906e-09, 1.1025991751567599e-11, 3.452308305895713e-08, 1.7129238472080033e-07, 2.6946102238412095e-08, 4.391726982078126e-09, 1.1143678868563711e-08, 5.771433109202917e-08, 1.06955297951572e-08, 1.8477895480373263e-07, 1.2368825963449126e-09, 7.493333953334513e-08, 2.3143551519666516e-09, 2.2861854631628376e-08, 8.574687626605737e-08, 1.0732275512737033e-07, 3.0280007390359742e-09, 2.788871800163406e-09, 1.4616480248363928e-09, 1.1743742867054152e-08, 4.425306232569426e-10, 1.0450781928739161e-07, 2.821561873034284e-09, 5.349504172968977e-10, 1.2028160689681044e-08, 1.0145096318581182e-08, 8.336650836326953e-08, 1.2561025997115394e-08, 5.379965628549144e-08, 2.5971040429340064e-08, 1.2018772643784814e-09, 8.425582898041739e-09, 5.080784859501364e-08, 4.586509838588881e-09, 8.56854001085594e-08, 2.369858975725947e-07, 1.543513761248505e-08, 1.8441596694174223e-08, 8.955354791062575e-10, 5.7065379088783175e-09, 4.606622194813781e-09, 6.511568173550586e-09, 1.3719626323904777e-08, 2.190098626897452e-07, 3.734546183409293e-08, 4.629969584807325e-12, 2.1316671094950834e-08], [2.058039960672886e-09, 1.7983297073698168e-09, 1.166193031032492e-09, 1.4144277415972795e-10, 1.108906744207161e-09, 1.0558863783316497e-09, 1.881778510792742e-09, 6.250674977614779e-10, 1.2405851901320375e-09, 8.303724374769672e-11, 1.5982384304891184e-09, 8.286512587218908e-10, 6.395994289754015e-10, 1.8035742344046923e-10, 8.817357399770742e-10, 1.6439728467432246e-09, 1.2990958309089251e-09, 1.4713827378720623e-10, 4.668448245169488e-13, 8.547341723286195e-10, 3.795168623810241e-09, 6.339285762990698e-10, 1.7902518356649466e-10, 4.280827359259831e-10, 1.8892136743886567e-09, 4.516267082532721e-10, 4.498358130433644e-09, 1.6060231269876546e-11, 1.9793993111250074e-09, 1.8671747481491252e-10, 1.0638478986635391e-09, 2.2506518870812897e-09, 2.309920033027879e-09, 6.443891253926637e-11, 6.625916482150274e-11, 2.155043331286688e-11, 1.9805260209615483e-10, 1.9676402868151754e-11, 2.7815403313979914e-09, 1.3043262303558123e-10, 2.2762578280599577e-11, 2.451498726241397e-10, 4.491787775062761e-10, 2.251660635721464e-09, 3.349727162316185e-10, 1.281597605817808e-09, 7.893061204633511e-10, 2.6894320104275948e-11, 4.422548161020501e-10, 1.1164288382659038e-09, 6.974319732844236e-11, 1.7326005075091189e-09, 7.224095988078716e-09, 4.545260834376563e-10, 4.762441552230712e-10, 2.7910788263918462e-11, 3.0557414931742244e-10, 1.7884504988074923e-10, 1.5397882968670729e-10, 4.379833995482585e-10, 5.68961944225066e-09, 1.0268100814059267e-09, 3.212632525458059e-13, 8.17312773015999e-10], [1.5325948510280796e-08, 1.5928840468859562e-08, 9.469078854351665e-09, 2.8429966714149657e-10, 1.3991027003612544e-08, 1.4155904892731996e-08, 8.817749197476132e-09, 4.0205034856910515e-09, 1.8244749711016084e-08, 1.4813434923155455e-09, 6.432231636210872e-09, 5.126971736046926e-09, 4.2758991902758225e-09, 2.3474548971336162e-09, 6.320078682620078e-09, 1.2190930931410549e-08, 1.2802287230329057e-08, 1.2917563685377331e-09, 6.3252688677073454e-12, 4.601555136929392e-09, 2.458624592804881e-08, 7.987655870067556e-09, 1.8361205889050325e-09, 2.0644153053694936e-09, 1.4044338136898205e-08, 4.395906305632025e-09, 2.807641585889087e-08, 2.3061184906136845e-11, 1.268099047990745e-08, 3.159846828637569e-09, 1.0867001520864505e-08, 1.672952087972135e-08, 1.2909572966179894e-08, 2.3496493639640903e-10, 7.110473876359436e-10, 6.412050057580387e-11, 1.1422979229180896e-10, 5.034001548942513e-10, 1.822118989025512e-08, 1.5217148652268975e-09, 2.704357016103387e-10, 1.104589641975906e-09, 4.58761029165089e-09, 1.9747721680118957e-08, 1.6363174148992243e-09, 7.722926298470156e-09, 5.856583662477988e-09, 2.5401128422863906e-10, 4.3319103859573715e-09, 6.278805919635033e-09, 1.2543750760318773e-10, 9.057164795933659e-09, 5.288998750074825e-08, 3.1459523874843853e-09, 3.4605904808415744e-09, 2.1917290204953588e-10, 3.760010081066412e-09, 1.4912814316758727e-09, 8.774564408398078e-10, 3.657799840794951e-09, 3.58126186483787e-08, 7.223601272698943e-09, 5.5743118454465446e-12, 6.8867178626419445e-09], [1.0860711086024821e-07, 3.876061782648321e-07, 1.1569814262202271e-07, 3.91417831480112e-09, 2.801254197493108e-07, 1.8263325785028428e-07, 1.9475303147942213e-08, 3.8345124409033815e-08, 3.077369967741106e-07, 1.700322549424982e-08, 3.0370241432819967e-08, 6.106177607989594e-08, 4.418747323597927e-08, 1.0550929374630869e-07, 4.852510926411924e-08, 9.717479088067194e-08, 8.709375975968214e-08, 4.55044002478644e-09, 3.3688878076088e-11, 6.199270785600675e-08, 2.3831253770367766e-07, 1.5731039582078665e-07, 3.512100832381293e-08, 1.1326819482349038e-08, 7.658448453184974e-08, 3.3605303428885236e-08, 3.543158015872905e-07, 3.030132533776708e-10, 1.5019047339137614e-07, 4.962373267858311e-08, 1.3789222919058375e-07, 4.8100005756168684e-08, 2.014247542092562e-07, 1.1960795909260469e-08, 1.3801138010194336e-09, 5.342261077956323e-10, 1.254682135964913e-09, 4.4340700555700607e-10, 1.8860417583255185e-07, 4.439224809971165e-08, 1.389100057203052e-09, 2.0681126144950213e-08, 2.5392649760647146e-08, 4.748238779939129e-07, 2.1272454908682903e-09, 1.0639956116165195e-07, 4.243628026756596e-08, 1.2919045833115206e-09, 2.5441490691946456e-08, 2.881393790232778e-08, 4.938220388162051e-10, 1.9502301995544258e-07, 4.5679806248699606e-07, 1.8954722236230737e-07, 4.8214953807246275e-08, 1.5192880287173693e-09, 3.9185369615779564e-08, 7.497867215988663e-09, 1.611035038706632e-08, 5.357091126256819e-08, 3.859565254060726e-07, 5.987462969869739e-08, 1.6579436391481184e-12, 3.5408881160492456e-08], [9.938281309018748e-09, 3.593109809685302e-08, 1.2726347087266277e-08, 2.3511056990166423e-10, 3.5700800538052135e-08, 1.7024419207700703e-08, 2.595159198648389e-09, 3.848895868685531e-09, 1.721383924291331e-08, 1.940502647457265e-09, 2.619525929503652e-09, 5.749051013026474e-09, 4.057362001930187e-09, 1.106691005503535e-08, 4.561595101648663e-09, 9.377122189846432e-09, 1.1889458306768574e-08, 4.090774663456642e-10, 6.649724716180361e-13, 8.276859198019793e-09, 3.1550836609994803e-08, 1.7878015512451384e-08, 3.9604048929220426e-09, 4.649002294243587e-10, 5.459777074889871e-09, 3.80847087200209e-09, 3.862121644715444e-08, 5.543605938879148e-12, 1.520219150563662e-08, 2.4287587496729657e-09, 1.314333530899603e-08, 1.367918844863425e-08, 3.2101734603884324e-08, 9.1072244190471e-10, 2.2236378016682323e-10, 3.6070063602622326e-11, 2.8561741513555283e-11, 5.411157633083974e-11, 1.6981459793896647e-08, 2.6190714041973706e-09, 1.833719703858705e-10, 2.0104424791611564e-09, 2.835422785452124e-09, 4.5190898134706003e-08, 1.9462988165575013e-10, 1.0635742953013505e-08, 3.92824661687996e-09, 5.8090678101141435e-11, 2.6266515629203013e-09, 6.964204768422633e-09, 1.319718466452624e-11, 2.0721133253687185e-08, 4.5163314865703796e-08, 1.9734939016302633e-08, 3.4103400103902004e-09, 7.54629414512209e-11, 3.781936541713549e-09, 5.339995667874575e-10, 1.714614339398679e-09, 5.499069644088195e-09, 3.862101394247475e-08, 7.1457950667763726e-09, 4.393642838874251e-13, 2.9155591274587778e-09], [2.785084163292595e-08, 2.1425772445127222e-07, 3.376176849201329e-08, 2.27782592787662e-09, 1.9530700967607117e-07, 1.0383312343265061e-07, 4.436021328046991e-08, 1.0407806172452183e-08, 1.0619131529665538e-07, 8.356916048057883e-09, 4.190407310034061e-08, 1.1963701140871308e-08, 8.308369103815494e-09, 3.4429461948093376e-08, 1.2526528259115821e-08, 2.4642393015028574e-08, 1.0922020265979882e-07, 1.6757732979044704e-09, 8.265194952061794e-12, 4.380350304700187e-08, 1.489436840529379e-07, 4.9918185140995774e-08, 1.3040163615585243e-08, 2.126784748313071e-09, 2.0538646339218758e-08, 9.754250740456882e-09, 1.1820574741250311e-07, 1.6985315931528078e-11, 3.985603314049513e-08, 1.2511761404709887e-08, 7.035903593077819e-08, 1.8827300607426878e-07, 1.1083974982284417e-07, 4.457127555923535e-09, 5.264233493562642e-09, 3.9304512422511095e-10, 4.760051380836572e-11, 1.4099945655488e-09, 7.109559874152183e-08, 3.4158013306750945e-08, 1.4279376570058844e-09, 4.711467660456492e-09, 8.277320162619617e-09, 2.3760050282817247e-07, 3.3103366714470894e-09, 4.934766195674456e-08, 1.2579659092182283e-08, 1.0826699536892193e-09, 6.6960410549654625e-09, 6.890848425200602e-08, 2.1717765086304297e-10, 1.212970204278463e-07, 1.1841860469985477e-07, 1.1464919680292951e-07, 1.8605234686219774e-08, 3.768309553286997e-10, 1.312769537520353e-08, 1.3480452309977409e-09, 4.754586058197674e-09, 1.3489489525397858e-08, 1.162762615081192e-07, 4.543462850392643e-08, 5.213262981029754e-12, 7.450302597078462e-09], [1.1780881825629308e-09, 2.3784854641384356e-10, 1.9784222871077617e-10, 1.7566548909941915e-11, 1.2460331377806e-10, 7.885044839284205e-10, 5.33496802290756e-10, 3.50340562116358e-10, 4.835030154026754e-10, 5.3952800560530534e-11, 3.51548568033877e-10, 3.1169591907520555e-10, 3.64296010024745e-10, 1.1440959984954091e-10, 6.621173054277563e-10, 1.0492143820428623e-09, 4.1679315554432605e-10, 6.679024000533218e-11, 3.810701320466903e-12, 1.764597634679177e-10, 8.3427736941033e-10, 2.425667167127443e-10, 7.156396308882762e-11, 3.4860417330584426e-10, 1.0362872782110344e-09, 7.734845403062351e-11, 1.4899468325779708e-09, 1.727652569616378e-11, 6.539554453510732e-10, 8.741692092417708e-11, 2.899110673748595e-10, 3.416376903597751e-10, 4.583739499075534e-10, 4.229881375716893e-11, 2.4385781588476263e-11, 3.311927121441016e-11, 1.9495190184404265e-10, 1.0960569951645738e-10, 9.208754869760583e-10, 2.6226900859405156e-11, 3.2306036318319187e-11, 7.163842435931045e-11, 1.5075692083588166e-10, 8.093790082597252e-10, 1.1308638053764142e-10, 3.6785396950733684e-10, 4.091607330725111e-10, 4.385264373851783e-11, 2.6281390952398453e-10, 1.8719525929355996e-10, 3.483037122609112e-11, 3.6224351296354484e-10, 3.731887687763447e-09, 1.5685296117506908e-10, 1.2480462496800016e-10, 3.2170422575861224e-11, 6.07978181688118e-11, 2.2169042990238808e-10, 4.659600136291964e-11, 3.470748410894231e-10, 2.57340126985639e-09, 1.0836696817673186e-10, 1.0948718060649343e-13, 8.472036960860407e-10], [4.000607137233381e-11, 1.678957667339276e-11, 1.3167487933340993e-11, 9.56346221832327e-13, 1.2354822026550139e-11, 3.101092299617747e-11, 2.1582973255829252e-11, 1.2683071606844898e-11, 1.8707585827670847e-11, 3.714737285137604e-12, 2.2701621832377228e-11, 1.355417687809446e-11, 1.2840921034817931e-11, 1.273208708602036e-11, 1.9780965060389732e-11, 3.443085053178585e-11, 3.6933973240893536e-11, 2.473444409359371e-12, 1.245606265701249e-13, 9.466006103964197e-12, 4.5638354206900544e-11, 1.6686194093118445e-11, 4.6121461684534015e-12, 8.847292690128405e-12, 3.339280935099609e-11, 5.482965210329427e-12, 6.608508879013542e-11, 7.130741309924193e-13, 3.120203401207888e-11, 6.027494042076809e-12, 1.8548355559810936e-11, 2.22301985847162e-11, 3.358048908386202e-11, 2.0394322081812577e-12, 1.9753346094247837e-12, 1.5129134924019016e-12, 4.23852879877229e-12, 3.55558356195107e-12, 3.940140921865343e-11, 2.736018009374952e-12, 1.5257026328083234e-12, 2.885568737079347e-12, 7.126570167326207e-12, 4.1201080741570806e-11, 3.817063418815048e-12, 1.4231069447867561e-11, 1.4804595049877634e-11, 2.1455454600471935e-12, 1.0211294483586375e-11, 1.2065038204611689e-11, 6.900869849515989e-13, 2.3592721526410898e-11, 1.3208123483821055e-10, 1.2207043535716888e-11, 3.784601104728225e-12, 1.6501860641837673e-12, 5.112615625996186e-12, 5.824163200329746e-12, 2.536438723985124e-12, 1.3083431039950799e-11, 1.0109142689618267e-10, 1.0783541594394652e-11, 1.6647190827982598e-14, 2.2877299013512875e-11], [1.4189045494106267e-09, 8.270074625116308e-10, 6.982084355122709e-10, 4.673133408017449e-11, 6.34644892194558e-10, 1.1455011383887381e-09, 7.345751784626486e-10, 4.702130906863999e-10, 7.231959475717531e-10, 1.7331672208520388e-10, 1.0125488225654067e-09, 6.137911845449651e-10, 4.910979400918336e-10, 6.53614051771001e-10, 6.415025177730627e-10, 1.2397923798701527e-09, 1.84773119027426e-09, 8.874779383605258e-11, 3.4313279214520653e-12, 4.3011927353120427e-10, 2.2224619922184274e-09, 8.493181713475906e-10, 2.1704767150243498e-10, 2.384529795840251e-10, 1.1865370908026307e-09, 2.7405069880082067e-10, 2.7337243579950155e-09, 1.9204996967725485e-11, 1.395823345795577e-09, 2.6455343471454285e-10, 8.963055853072888e-10, 1.126440718479671e-09, 1.8212001906547926e-09, 7.695216686087747e-11, 7.987532857356427e-11, 4.327352712274468e-11, 7.05163150094279e-11, 9.793644367706023e-11, 1.6994453622132255e-09, 1.4201829989790582e-10, 4.782162166261372e-11, 1.176069519548406e-10, 2.830446710344603e-10, 1.8309064264698804e-09, 1.098557980694359e-10, 6.020188236810498e-10, 5.496658128656406e-10, 9.193686784092492e-11, 3.704051787511986e-10, 5.196207353286297e-10, 2.100073413779935e-11, 1.1042302627828349e-09, 5.010492021284563e-09, 5.880770315158657e-10, 1.3491806283294494e-10, 5.652522200305654e-11, 2.7090407694885243e-10, 1.4929316116685243e-10, 1.0698313762658174e-10, 4.851711254971747e-10, 3.977814078126585e-09, 5.694061888661395e-10, 7.52151650424554e-13, 6.456795098586099e-10], [8.071609041413776e-15, 5.468916335418794e-14, 8.408087797512863e-15, 1.8803252208846218e-14, 8.991718231533136e-14, 2.857307760621014e-13, 5.4335035819599864e-14, 2.121151256755712e-14, 5.303888906305239e-14, 2.059606351027983e-14, 7.319876618088004e-15, 2.1447223202053153e-14, 3.674404784750158e-15, 4.03349330660701e-14, 1.3794256806688027e-14, 5.022580540082729e-15, 4.3056934428443994e-14, 1.362434623263355e-14, 4.641172615362432e-15, 6.577969776950382e-15, 9.623526883153696e-14, 8.922147011003814e-15, 1.0508088810982225e-13, 3.5837113577250404e-14, 2.1054083023980437e-14, 1.363756841694019e-14, 7.062786363783505e-14, 3.624744005382291e-14, 2.1970142380172385e-14, 8.07918117714905e-14, 6.7211924604192435e-15, 7.604859667345587e-14, 1.460479686406918e-13, 1.6734116737161624e-14, 3.105177044855113e-14, 1.7026490911213653e-15, 9.78756946705948e-16, 1.8124996674969557e-13, 1.0237082652387285e-14, 2.5343645063157557e-15, 1.2851808986057318e-14, 4.658904148970369e-14, 3.907026205384259e-14, 1.7157065698714113e-14, 2.117099559355816e-15, 4.1693224935891726e-14, 5.0896664812415116e-14, 6.111569041643283e-14, 5.736255518978481e-14, 5.164629574699875e-14, 4.068183710368399e-14, 2.478350098929216e-13, 1.0699791340483891e-14, 1.4872344078920713e-13, 6.1983944080114695e-15, 3.989140628609701e-14, 5.104467873775012e-14, 8.752422784197734e-15, 1.2015377503170853e-14, 1.624133837943749e-14, 4.2237236928463484e-14, 5.06847032876942e-14, 3.613913926821992e-15, 3.503044479925138e-13], [3.2232366081741404e-11, 9.894129071597035e-09, 9.110124321587421e-10, 2.0437576631060494e-10, 6.084495129954348e-09, 2.4600155246190525e-09, 7.45693673476211e-10, 4.4404948468246275e-11, 3.850365803970135e-09, 5.789974055758762e-10, 4.332047609523215e-09, 1.1405169343670085e-11, 5.5343823274212056e-11, 3.525018610339714e-10, 2.9655214915658146e-12, 2.7715168701702986e-11, 3.479429189212624e-09, 1.7758227180419972e-11, 5.1884254406936794e-14, 6.317091294505417e-10, 5.8022702198456955e-09, 2.5797413094608146e-09, 1.5084896873296394e-11, 1.8336376861327608e-10, 4.2320047466404276e-10, 4.313159204794026e-11, 8.546539864706659e-11, 3.7603041340428245e-12, 3.18299379908904e-11, 1.20743481879515e-09, 1.5008521092596538e-09, 1.1743503947059253e-08, 4.559606470166955e-09, 1.7229202786683828e-10, 6.896687110291566e-10, 1.1850248213263193e-11, 6.272441767374293e-12, 9.741448966926747e-12, 6.632067117706697e-11, 1.8136249169131702e-09, 2.7606636421317887e-10, 1.2937924342981688e-10, 4.280530790934378e-11, 3.3459937043289756e-09, 7.594166268054536e-11, 2.014436395469943e-09, 2.74161734981071e-11, 1.1482751381686196e-11, 9.562704794685573e-11, 1.2845089436552826e-09, 5.639937735585354e-12, 6.4083405248993586e-09, 6.285245240933435e-11, 4.5748902444131545e-09, 7.376362298749939e-10, 2.5436370024167765e-11, 2.4338550272395842e-11, 5.8176009148924734e-11, 5.729366286955084e-11, 5.588273177536962e-10, 5.448487581244388e-12, 1.4126041447681814e-09, 5.419643141386932e-13, 2.395179332648212e-10], [7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43, 7.006492321624085e-43], [4.762087252307978e-11, 5.9097873261748646e-09, 1.7191200685218178e-09, 2.2435857338631848e-10, 4.891993476974221e-09, 2.769800833135605e-09, 9.827398894657335e-10, 8.173462601179793e-11, 3.837716366916766e-09, 9.669577361037796e-10, 3.316575680756273e-09, 2.135609050712972e-11, 1.8609760954468868e-10, 8.705138276887681e-10, 3.340450745875634e-12, 6.329057417042705e-11, 6.751047720854331e-09, 2.8161988366304236e-11, 7.93654896034772e-14, 6.723210321801787e-10, 7.11508940653971e-09, 2.394160869556572e-09, 8.229213838140126e-11, 4.490258165290584e-11, 6.864595558653264e-10, 5.277520087609844e-11, 1.968166879473543e-10, 5.9528510593098716e-12, 3.715113494617839e-10, 1.8296614223700658e-09, 2.585983871483677e-09, 1.0805515593403925e-08, 3.6881950826739285e-09, 3.2827299212279115e-10, 1.1534955213221565e-09, 1.5386232218861373e-11, 1.1361573140633574e-11, 3.152873795375655e-11, 3.8756575726495157e-10, 1.2470380283957638e-09, 1.0533138250501395e-10, 2.43178505110464e-10, 5.734224553521905e-11, 2.301046242436655e-09, 2.249427033529372e-10, 2.500845308617272e-09, 6.365214605397185e-11, 8.349443532396084e-12, 1.2122283732374228e-10, 3.345133947618706e-09, 1.7779258967842715e-11, 3.6878065046153097e-09, 1.053357470692795e-10, 6.479909053780375e-09, 8.911455462445872e-10, 4.296873967746251e-11, 5.358626389839749e-11, 9.336226930445335e-11, 2.587239103513106e-11, 5.109958567395267e-10, 1.2238184424195886e-11, 3.71739483639999e-09, 1.3934661584336094e-11, 1.693319789941583e-10], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [6.367485011482543e-11, 2.1153539364604512e-08, 9.906905296119817e-10, 1.3906907569971594e-10, 2.0470618977697086e-08, 1.0442597009330257e-08, 4.461156333235294e-09, 7.281194397412705e-11, 2.080458294528853e-08, 1.5714582968229251e-09, 5.011580928027115e-09, 4.0352176461366795e-11, 7.112251759755495e-11, 7.805901480750776e-10, 1.1640120291256384e-11, 1.2028902873773006e-10, 1.3217475114402077e-08, 7.440842386685631e-11, 7.029983149428598e-13, 4.919384455348563e-09, 3.199729192715495e-08, 3.500490119989763e-09, 7.872452689738907e-11, 4.384671792312389e-10, 1.4073426868321803e-09, 8.328562839388098e-11, 3.0822788765760833e-10, 1.7125851084487387e-11, 1.0643853159963967e-10, 6.1541003404386174e-09, 9.374594434063965e-09, 6.053022616470116e-08, 6.462890667080501e-09, 5.937640379372056e-10, 1.2570977592218924e-09, 3.5213838789349694e-11, 2.644540836316267e-11, 8.864634720717746e-11, 5.231647559611474e-09, 1.351895262402536e-09, 1.1842390956751103e-10, 2.3432544793422494e-10, 9.801103678652723e-11, 1.7708529753690527e-08, 8.160078862617937e-11, 7.1993775385692516e-09, 8.487631431020048e-11, 3.904464598858404e-11, 2.034182822185926e-10, 1.2118822390050354e-08, 3.5172854212506266e-11, 2.0563556191177668e-08, 1.3613088434283327e-10, 1.6347110332048942e-08, 3.0765767711216085e-09, 5.768746591527929e-11, 1.5055864888147141e-10, 1.3227731410214716e-10, 7.859215361838423e-11, 8.069082624295731e-10, 3.713158600038291e-11, 9.454740990122446e-09, 1.869918065874887e-12, 6.174960542892904e-10], [1.4048326391069565e-10, 1.2553275041682355e-07, 5.661516588872928e-09, 1.2346270672480841e-09, 1.3722241476443742e-07, 3.926662017761373e-08, 2.6834616306814496e-08, 1.827244605623335e-10, 4.9635445975582115e-08, 9.131304601339707e-09, 4.93689888969584e-08, 1.1362686486160456e-10, 1.1854324466487043e-10, 1.3525718323137426e-09, 2.5040119283614715e-11, 3.298449291477823e-10, 1.0589174337383156e-07, 2.2413171318902414e-10, 4.796048974631262e-12, 1.6018610438095493e-08, 5.530580082790948e-08, 2.3657792169728964e-08, 2.7961244430940724e-10, 8.648305960257119e-10, 5.717744944178094e-09, 4.379923368436067e-10, 2.2809250044275586e-09, 5.467264488356882e-11, 3.6944128312121904e-10, 1.2037365770822817e-08, 5.105252753878631e-08, 1.7115789319177566e-07, 4.4493205564322125e-08, 2.9437794424325148e-09, 5.778644229792462e-09, 1.360590112797766e-10, 4.906805517457258e-11, 1.4580826823706872e-10, 9.22521525836828e-09, 1.616156097838939e-08, 1.2592855924697943e-10, 1.158339646423201e-09, 4.486268023740081e-10, 1.0972742359172116e-07, 2.2788146369912e-10, 2.8894930892420234e-08, 2.066897070163165e-10, 9.734556910556691e-11, 7.738130136658583e-10, 3.191304998040323e-08, 7.937425022808142e-11, 5.873062391970052e-08, 5.452240325887203e-10, 7.865730111689118e-08, 6.2276601653366015e-09, 1.2251941128305077e-10, 3.022310735012468e-10, 2.7721944184655456e-10, 4.77596018289006e-10, 7.047786798608513e-09, 7.163779291996519e-11, 4.592163094230273e-08, 2.6584866252843398e-11, 1.809025929055963e-09], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]], [[1.199163768283995e-09, 1.5154381602867955e-16, 4.2117942369889185e-17, 1.6215752074444367e-09, 5.351892262694946e-09, 4.711643922239439e-11, 4.384973273374726e-09, 1.073996780398545e-09, 7.209526753371165e-09, 1.162188748016213e-10, 1.6816122105911546e-10, 4.1397712081253646e-13, 7.392421119689629e-10, 3.2009119799170094e-09, 1.1272887068258797e-09, 1.0196797184391926e-08, 6.269717522933149e-10, 1.46277902984826e-11, 7.724187744601796e-18, 1.9169234255489442e-10, 1.8126339318413898e-09, 1.1356113827076797e-09, 1.0834095842682245e-09, 3.293862405051584e-10, 4.833605182774647e-10, 8.323244315988632e-10, 4.657186192247309e-09, 1.6991666962340446e-09, 4.498637787994009e-19, 9.790832207479117e-12, 1.9466525613687224e-10, 1.5902891503660754e-10], [3.2434324115371282e-09, 2.153892129485701e-15, 2.855914187605478e-17, 1.2199883325791916e-09, 1.29534227788497e-09, 1.4195365716229702e-10, 5.5034568013923035e-09, 2.897512452193496e-09, 1.111095659922512e-09, 2.421743708347357e-11, 1.3580195995510635e-11, 1.896266550358537e-14, 1.6885921549913974e-09, 4.833694000616617e-10, 8.633491144216521e-10, 2.8861808498703567e-09, 1.6440392380800972e-09, 9.190529197053432e-13, 8.110151769382687e-19, 5.343181105899042e-11, 4.420342758493234e-09, 2.223568662529374e-09, 2.8536519813826544e-09, 9.065156958421028e-10, 8.422713637656898e-10, 2.1888177936801867e-09, 1.975671404252921e-09, 1.141457151021541e-09, 4.858484190273843e-23, 5.429546786131501e-13, 2.0309262604989442e-10, 4.5954950955717777e-10], [6.9139343139568155e-09, 1.0110436721333545e-17, 4.5824110215182e-18, 3.009626325933823e-09, 1.7818160280569373e-09, 3.533817682921381e-10, 1.1763655827223829e-08, 6.466370106039676e-09, 4.70048489020769e-09, 6.6291637977611284e-12, 2.693027918720947e-11, 1.440968384110869e-13, 3.4903602230684783e-09, 5.057962382259973e-11, 2.144436850315401e-09, 8.197908130114229e-09, 3.535546966304537e-09, 1.8921369757299098e-28, 1.7310649595250616e-18, 3.253770516908894e-11, 9.796547573159842e-09, 4.998821356849703e-09, 6.316902112502021e-09, 2.164464163456614e-09, 1.8787678079945636e-09, 4.767440220376784e-09, 5.400837110869361e-09, 3.1478748496738262e-09, 5.058689869941653e-25, 1.472574232691537e-12, 4.616258209022561e-10, 1.1054985815661666e-09], [8.507488047371226e-10, 2.587707623778957e-16, 3.3972067875175206e-18, 1.6532455959783476e-10, 3.2293639984359856e-10, 3.546183832692229e-11, 1.598209786735083e-09, 7.896311382538101e-10, 2.3297616613682237e-10, 1.894490293807838e-11, 3.694467648474031e-11, 9.635641487178506e-14, 4.4495468420890916e-10, 4.897940039660931e-11, 2.463230452942611e-10, 4.530960606707879e-10, 4.6243162077352906e-10, 1.9382242003458368e-16, 4.77810075794505e-19, 5.7473123482587596e-11, 1.2702828788846432e-09, 5.646336731501833e-10, 8.030707210338051e-10, 2.2328033866259034e-10, 2.244143620933059e-10, 6.049182266210096e-10, 2.057928549792365e-10, 3.5593938907396705e-10, 3.1980741572402565e-25, 1.7732849693849473e-12, 1.4058315275788935e-11, 1.1249216141928642e-10], [3.876409859771002e-09, 6.0184271705929205e-18, 1.5710826455881713e-18, 1.8082956243503645e-09, 2.7013564718458838e-09, 1.6591771012652856e-10, 8.613518787115026e-09, 3.4608749199804834e-09, 2.2697792534387418e-09, 9.23651849449314e-11, 4.233701930700384e-12, 1.7970888178172467e-15, 1.985893227640645e-09, 2.6052284773925294e-09, 7.297142889939323e-10, 4.539171261086494e-09, 1.9516193106028368e-09, 1.473415833785907e-11, 1.946050570745483e-19, 1.3164518086750121e-11, 5.286989512853779e-09, 2.6313506928943298e-09, 3.3805529486841124e-09, 1.0643114167763201e-09, 1.0120243532085738e-09, 2.6188859969522582e-09, 2.755347061622615e-09, 7.885241903871076e-10, 6.609754705666892e-19, 4.455214070385981e-14, 2.3834878515316404e-10, 5.367437050374235e-10], [2.035980717352004e-09, 1.9126908156673296e-15, 1.0319058289264319e-17, 5.105018074935685e-10, 1.994049814157961e-09, 6.235221367001387e-11, 6.252649509264074e-09, 1.6292986959598466e-09, 2.6940123465379884e-09, 7.844905974829786e-11, 4.899064487418059e-11, 2.7717279562017652e-14, 1.2918581759890913e-09, 2.090993378445205e-09, 8.838077492079321e-10, 2.8203515078928376e-09, 1.0641360015384294e-09, 1.5407765341368673e-11, 1.6135721736192413e-20, 1.5365733685435146e-10, 2.8809268304286206e-09, 1.2518882597234438e-09, 1.7432663090843903e-09, 4.2016964907354293e-10, 4.448870993822851e-10, 1.3613385974053926e-09, 9.478401397089442e-10, 9.157011815474903e-10, 7.403323868004594e-19, 8.364564249574435e-12, 8.052992994667107e-11, 2.0519001775465284e-10], [3.602819376169464e-09, 4.68604407986411e-16, 2.383232391209436e-20, 1.8880677021826386e-09, 4.279666399042981e-09, 1.5580549350691086e-10, 8.583938893025334e-09, 3.311196872246569e-09, 6.08653394351677e-09, 7.185813749588377e-11, 1.469451921254361e-10, 1.6913883174832114e-15, 1.9583641375220395e-09, 4.0197480899450966e-09, 1.5683253584697354e-09, 4.13732204052053e-09, 1.901504509405072e-09, 1.3494190140295181e-11, 7.006492321624085e-43, 8.63952867580231e-11, 5.1625144159572756e-09, 2.842667656821618e-09, 3.2563518548300863e-09, 1.0334385569521487e-09, 1.03013253482942e-09, 2.5399555791949524e-09, 1.982665143174245e-09, 1.919225445234929e-09, 6.11141767768279e-19, 4.042439993856561e-12, 3.1146785151037193e-10, 5.094961674778631e-10], [1.422015061258719e-09, 7.080813744824094e-16, 4.8150236396270944e-17, 1.2546409466906994e-09, 4.714627799273785e-09, 7.483734465463243e-11, 2.4292567957218125e-09, 1.3941520160543064e-09, 4.212309612228182e-09, 3.585178681708712e-11, 1.4125788039276443e-10, 5.101137069175865e-13, 7.181287231539102e-10, 2.1396297233966521e-10, 6.914945283043039e-10, 7.219702169436459e-09, 7.228894149946541e-10, 5.699074308956572e-16, 2.1336312068270568e-21, 2.1073710831931436e-10, 2.04878736198566e-09, 1.104756952585717e-09, 1.3121642661317878e-09, 4.487638871619737e-10, 5.686542903227121e-10, 9.780147802729289e-10, 4.788284879708726e-09, 1.955406725429043e-09, 1.2413348395186267e-20, 6.943783655705138e-12, 2.0877755080306315e-10, 2.4501323192538393e-10], [4.321720759037362e-09, 6.292685586304226e-16, 1.2864206180125667e-17, 1.4040908435930533e-09, 2.112892749650541e-09, 1.4533800551941312e-10, 8.036648679876635e-09, 3.402657933193609e-09, 1.4347890653354511e-09, 3.092837791429659e-11, 2.7492843071574846e-11, 1.0363654785695495e-13, 3.0332372169539212e-09, 9.780908305501157e-10, 1.2876659738481067e-09, 4.523716512494502e-09, 2.1843369335527996e-09, 8.265984251243363e-12, 1.081877608666839e-23, 1.402299387720518e-10, 5.73976333129167e-09, 2.444894287023658e-09, 3.5888816363183196e-09, 8.930409189922273e-10, 9.521450294869283e-10, 2.759660056028679e-09, 2.1205532885204548e-09, 1.8400790890993335e-09, 1.3753200849556743e-20, 1.129693018818434e-12, 1.5634593619751058e-10, 4.537726583375701e-10], [4.247063589701838e-09, 4.65677803274529e-16, 9.987134697684553e-19, 1.2738955446067735e-09, 2.076222971325592e-09, 1.8205369156643059e-10, 7.457907180707934e-09, 3.887620447784457e-09, 3.858505959186687e-09, 1.4355427437051649e-11, 1.391558535068782e-10, 2.4203737768895874e-14, 2.203856652727154e-09, 3.952599011980418e-11, 1.3109642260644705e-09, 3.5955167732026894e-09, 2.25790697250261e-09, 5.5227540777715446e-18, 1.4217761813570781e-27, 1.7853221678798548e-10, 5.9723119782972844e-09, 3.0506135395569345e-09, 3.836765127829267e-09, 1.1794693000055645e-09, 1.1148755252321507e-09, 2.9556390668261656e-09, 2.4060187175933834e-09, 1.8134217460996638e-09, 1.7903885103207563e-31, 1.9520004102685506e-12, 2.175397917358879e-10, 5.87088377912437e-10], [4.268437159282712e-09, 7.145864286986449e-16, 1.3383065972697517e-17, 2.5745228171558665e-09, 1.1722774750921872e-08, 1.925149067938392e-10, 1.0589262799953758e-08, 3.894415012695163e-09, 1.0819770857040112e-08, 1.2723287701188468e-10, 2.5170593387358053e-10, 1.16037648240086e-12, 2.256240305698043e-09, 4.3079375622312455e-09, 1.548914663196399e-09, 1.2144889538490133e-08, 2.217726891018401e-09, 4.884070231581106e-11, 1.1634309791219054e-18, 7.14965420200997e-10, 6.337510072285113e-09, 4.491028438025069e-09, 3.887155486381744e-09, 1.286742601358526e-09, 1.2504144386582539e-09, 2.954035460689397e-09, 2.9871003448533884e-09, 2.144774358114887e-09, 1.8742101154910116e-18, 1.0020056616030781e-12, 6.091939730445972e-10, 6.107056527149268e-10], [3.900986644822524e-09, 1.2783409593258876e-15, 2.6471592781599602e-17, 2.494060513669183e-09, 6.16031270439521e-09, 1.657545767308477e-10, 7.688129244343145e-09, 3.4134297610677322e-09, 7.373897936702178e-09, 6.15868536724129e-11, 1.919556597007599e-10, 7.734793708302767e-13, 2.1640393921273926e-09, 2.0214723228662024e-09, 1.6242743816619054e-09, 9.26546572799225e-09, 1.9275641083282835e-09, 8.50558859455397e-12, 1.0566819562239265e-17, 4.1026060326743163e-10, 5.361986854524048e-09, 2.8931919082708646e-09, 3.4026947925980267e-09, 1.0401370875712246e-09, 1.0795599969526393e-09, 2.548543154290428e-09, 4.469840941823122e-09, 2.5903619249589838e-09, 6.517915427194544e-19, 5.754018355536017e-12, 3.4444963548097007e-10, 5.233766198209366e-10], [2.143340394056281e-09, 6.090383942951153e-16, 2.6876419652123393e-20, 1.3327516867889244e-09, 6.285136411321446e-09, 1.0077633866290014e-10, 5.767147648327864e-09, 1.996375287305341e-09, 5.5677613630678024e-09, 7.149709990716957e-11, 1.2392144255191084e-10, 5.682801980182693e-14, 1.0952229123617485e-09, 2.5895665611841423e-09, 1.0391065785597675e-09, 6.437661070890499e-09, 1.12693976372924e-09, 2.037630134066326e-11, 3.479442964367223e-19, 2.3828114481538876e-10, 3.172322182720677e-09, 2.1760138135817897e-09, 1.9657422356544885e-09, 6.67287947120343e-10, 6.90693779947793e-10, 1.510653935277162e-09, 3.23116489120423e-09, 1.4397589787051857e-09, 2.111051983994798e-18, 3.252657041277751e-12, 2.690142275607599e-10, 3.300715534226839e-10], [3.10596814934172e-09, 1.9755994629689838e-17, 9.166822786143013e-19, 1.0074657774694629e-09, 4.604534087349066e-09, 1.338451710575228e-10, 5.830772753512292e-09, 2.8635860349623954e-09, 3.735393327986003e-09, 2.5948314677504136e-11, 1.7249954242792853e-10, 7.345896352144166e-13, 1.6273814518186214e-09, 3.4298763829099244e-10, 9.353930963129642e-10, 6.521225781597195e-09, 1.6639575273202922e-09, 1.1945593819673306e-11, 3.114614628286767e-28, 2.329617887486535e-10, 4.492686223045439e-09, 2.3308526220233716e-09, 2.846849644910776e-09, 8.673523010926942e-10, 7.788623634930048e-10, 2.1785349080261085e-09, 3.1551816714880943e-09, 1.562704743385268e-09, 3.884279001732412e-21, 2.510582020054386e-12, 2.5028537575799703e-10, 4.194853353567396e-10], [1.0969667396665272e-09, 1.4011162674480303e-15, 2.871248130928741e-17, 1.2754113321022942e-09, 9.79225767139269e-09, 4.955906865444781e-11, 5.402462033288202e-09, 1.0346006273920239e-09, 1.0634735758685565e-08, 1.4542227144698217e-10, 1.5508035133837694e-10, 1.3924259423432617e-13, 6.190860046828561e-10, 4.759262761666605e-09, 1.7218105829996944e-09, 1.2930859050186427e-08, 5.910487099747286e-10, 2.310316694897896e-11, 1.1775783266865823e-19, 1.5165013689255602e-10, 1.7293764198456074e-09, 1.0022277452392814e-09, 1.017929629476555e-09, 3.2124250481935235e-10, 3.7336519986830297e-10, 8.083303471018155e-10, 7.229627563276608e-09, 2.9527547074081895e-09, 6.5605849187076326e-18, 1.0948381957975872e-11, 2.2650796516199279e-10, 1.595836240930737e-10], [5.3243698339144885e-09, 2.812134826505496e-16, 3.754310170533707e-19, 3.0650588733749373e-09, 1.2790337677870411e-08, 2.5488958166342e-10, 9.145457724457629e-09, 4.922113383543092e-09, 9.855510185730054e-09, 7.976604793347164e-11, 3.2312927333855157e-10, 2.250281768377809e-14, 2.7490301146571028e-09, 1.351788903036777e-09, 2.538227406034821e-09, 1.8121067313359163e-08, 2.7173860939200267e-09, 7.539571723023941e-13, 4.466511643966098e-19, 2.9372881904521364e-10, 7.463692774933861e-09, 4.173682732755424e-09, 4.776296691488824e-09, 1.5837057221190776e-09, 1.6508689970606838e-09, 3.6350864540679595e-09, 1.0853256959819646e-08, 4.043836376865784e-09, 1.1775328802205059e-20, 9.481218761486776e-12, 6.148749842616041e-10, 8.261955564137224e-10], [1.5495430716327974e-08, 1.3783722152043907e-16, 2.672029125020857e-18, 6.3911946845962575e-09, 4.617937143791551e-09, 7.657215417289365e-10, 2.6118621931914277e-08, 1.4360598932228186e-08, 9.307239423606006e-09, 2.6582775911054846e-11, 1.8863674511315764e-10, 9.213955553394326e-13, 7.94484655841643e-09, 2.076243399429245e-09, 4.413740484210393e-09, 1.3874799087432166e-08, 7.878842467334835e-09, 1.8774226930842654e-15, 1.5149297567969165e-40, 2.1337592803760685e-10, 2.1824765994438167e-08, 1.1212847539354698e-08, 1.4019676974896811e-08, 4.763953231901041e-09, 4.150197963070923e-09, 1.0618149026697665e-08, 9.18712750319628e-09, 5.976815931063584e-09, 1.6392924758871768e-18, 4.58061019670275e-12, 9.483955842881642e-10, 2.404109800124843e-09], [4.96283625306404e-10, 2.248831817378699e-15, 9.598612927052071e-18, 2.0458190697070222e-10, 2.6919029227912006e-09, 1.786103383250026e-11, 2.220629680138586e-09, 3.276925397699415e-10, 2.822948319547436e-09, 6.719565875945577e-11, 1.8681526811614724e-11, 1.2584710021041473e-13, 3.90839888231298e-10, 7.427761183897985e-10, 6.652780548677129e-10, 4.7140105152720935e-09, 1.945706928907498e-10, 1.10578724996091e-11, 1.61202405340406e-19, 5.1002459200422123e-11, 7.641114962986251e-10, 3.143092730528707e-10, 3.6293118510499767e-10, 9.15219913744103e-11, 9.27745241741107e-11, 2.642180363388036e-10, 1.8774231058671376e-09, 9.976074411000013e-10, 2.705451066865378e-20, 5.934074412405899e-12, 4.5057065717335476e-11, 4.591085497884784e-11], [3.0047395127574816e-11, 8.756424456984856e-26, 2.340462875465714e-18, 1.7751233425886137e-12, 2.438994752690382e-12, 1.3235870732764e-12, 1.616651812419434e-10, 1.0287109705742203e-12, 1.1792958970469058e-11, 1.576799942785284e-14, 1.2735462234488362e-14, 2.4868384405573826e-16, 2.997698931531817e-13, 9.934538001271642e-13, 2.7437156279591646e-13, 1.9909364955272846e-12, 1.3582855543439742e-12, 6.836907266434155e-22, 7.26188917974153e-29, 1.3711644666902778e-11, 3.879403742690357e-11, 1.7574819637794503e-12, 2.153509141844534e-11, 9.290143524257055e-14, 3.6452880102476326e-13, 7.751301228479945e-13, 6.717728044842997e-13, 6.0590720808717524e-12, 1.3582161870865798e-20, 7.919301336662549e-14, 7.006492321624085e-43, 4.8209185124839515e-14], [2.0687864754620477e-09, 1.645887401622605e-15, 2.4893876457691485e-17, 9.388079202921062e-10, 4.75915973296992e-09, 8.214753877133774e-11, 8.740045132071828e-09, 1.6947534486888571e-09, 5.4875606281257205e-09, 1.958978534943867e-10, 6.241687028341047e-11, 2.9216459438395626e-13, 1.1519784015590062e-09, 2.395597720195042e-09, 9.143982238057902e-10, 1.3199170645350478e-08, 1.0167591213416927e-09, 8.842289400678993e-11, 5.6422539657349365e-18, 3.065677156577351e-10, 3.5944673903998137e-09, 2.139084243069078e-09, 1.8160937198530291e-09, 4.954914256671827e-10, 4.930313379780671e-10, 1.3326970638161129e-09, 2.735138560083783e-09, 1.1134388966382858e-09, 1.2392764361072055e-19, 3.2548904977530713e-12, 1.917951214513991e-10, 2.430847190204588e-10], [4.120424446085735e-09, 1.4638022112590057e-15, 5.661098380859813e-18, 1.6777046418781083e-09, 8.296794917761474e-10, 1.7510606853399224e-10, 7.3570536329725655e-09, 3.777383739134166e-09, 2.032820134445501e-09, 1.240704587679442e-11, 3.299106474119462e-11, 1.819591264500594e-14, 2.13626560885416e-09, 8.878283525026731e-11, 1.3107962493208447e-09, 3.6571643491356554e-09, 2.231926643503357e-09, 1.0318784909380593e-14, 4.845236287423502e-19, 3.33845694144852e-11, 5.819962289876912e-09, 2.860077064070765e-09, 3.758823474697692e-09, 1.1440888236791125e-09, 1.0906210379246772e-09, 2.9051081540387713e-09, 2.7460094198517027e-09, 1.8148206271106915e-09, 2.7723793286314553e-22, 3.769117830343394e-12, 2.2974500080152893e-10, 5.782599954429202e-10], [2.9689388725273602e-09, 8.146731652351931e-16, 3.2994231306694247e-19, 1.2204642851898484e-09, 2.669593657245173e-09, 1.0457391896867563e-10, 1.0001317107821706e-08, 2.6704780609065892e-09, 4.658765817566746e-09, 1.303943758523829e-10, 5.1578123716478075e-11, 1.2447608675275829e-15, 1.5602835690131656e-09, 3.4870799581199208e-09, 1.3440861756919276e-09, 5.516928691662315e-09, 1.6862761187397268e-09, 1.869712371038723e-11, 8.350432744680739e-19, 5.368680760370337e-12, 4.4031307488978655e-09, 2.0407353584772636e-09, 2.702146950639417e-09, 7.161113368958638e-10, 7.28578586350892e-10, 2.200383431016917e-09, 2.585557545842221e-09, 1.3903322937380835e-09, 5.685371582344876e-18, 1.5325994596679382e-12, 1.4835677131230796e-10, 3.574449625176612e-10], [6.706648569831941e-09, 6.216757023516759e-16, 3.079964359340864e-20, 2.1612462930420406e-09, 7.417746417104354e-09, 3.2547170514263257e-10, 1.1482689465935891e-08, 6.2146519042016735e-09, 5.691063176271882e-09, 3.5266210091089434e-11, 1.2499480617211844e-10, 1.1179225541156981e-14, 3.4037048735058306e-09, 2.634005791257721e-10, 2.533254717107525e-09, 9.001155376608949e-09, 3.44573525268288e-09, 8.81543102404514e-12, 5.629309878913185e-27, 1.2681779237855295e-10, 9.531404110418862e-09, 4.917672935533801e-09, 6.086599224630618e-09, 2.002973342740688e-09, 1.801487736763363e-09, 4.605808179292126e-09, 5.2494266711278215e-09, 3.817102189884736e-09, 3.54139607806106e-20, 5.357141379808139e-12, 3.5289532407389856e-10, 1.0139068473691282e-09], [6.724739098906696e-10, 3.5829642561367164e-17, 9.755102926448028e-22, 2.6461771662766864e-10, 1.9062427192295672e-09, 3.033349960102072e-11, 1.345079825298967e-09, 6.195297053146476e-10, 9.951228729931927e-10, 2.1564736107926308e-11, 5.405306410799504e-11, 6.487106858632519e-14, 3.419992899988955e-10, 1.5636626715664903e-10, 2.0101091624535883e-10, 2.5438591233495345e-09, 3.5481775850776387e-10, 1.4963605007856096e-11, 7.006492321624085e-43, 1.229179813488912e-10, 1.0317570131590514e-09, 7.137659907563432e-10, 6.386663420343552e-10, 1.7823038878095332e-10, 2.1895625590406809e-10, 4.634957972982079e-10, 3.421667671421602e-10, 2.9712082794119965e-10, 3.611471329888343e-19, 1.9721082405999013e-12, 7.694429121629653e-11, 9.72837435608831e-11], [1.5661775210062956e-09, 1.327897521877507e-16, 9.327601261419485e-18, 1.0024175933764923e-09, 1.878132538379873e-09, 5.744575995447754e-11, 3.544369464592023e-09, 1.3430506706768597e-09, 1.9029369191514434e-09, 8.698568948473095e-11, 1.141433614293419e-10, 3.4355572314966054e-13, 9.330188843748033e-10, 8.998341516353037e-10, 5.156576277087765e-10, 6.905027216674853e-09, 8.012764896037083e-10, 3.122104311192864e-11, 5.589920316330238e-18, 1.8379922583910968e-10, 2.425348144541317e-09, 1.372191360538011e-09, 1.37565203672807e-09, 3.579187779489956e-10, 5.51631351708437e-10, 1.0249361359626619e-09, 1.5678489617698688e-09, 8.524885797278614e-10, 2.3358420377688396e-18, 4.837252560313532e-12, 1.388097137233757e-10, 1.9339457812961314e-10], [4.535707809338874e-09, 4.3719330286822854e-16, 3.53965638798589e-17, 1.9540402629303344e-09, 1.1071279892860275e-08, 2.1773237379729693e-10, 9.28302945624182e-09, 3.9895673431544765e-09, 9.494242725338609e-09, 1.4727943864478732e-10, 3.35292141273591e-11, 2.2238702307615654e-13, 2.4714563728878147e-09, 1.3200939230628705e-09, 2.706047164124925e-09, 1.5741528969215324e-08, 2.2265427279677397e-09, 2.6558767338147327e-11, 3.859696702885719e-18, 1.6497396504444595e-10, 6.4326157733773925e-09, 3.045609542340344e-09, 3.989856445230089e-09, 1.27830424023756e-09, 1.1595263638142228e-09, 2.9818063573827658e-09, 7.86031328914305e-09, 4.759358684935933e-09, 8.419295013687896e-19, 5.168533136201692e-12, 3.114785929181352e-10, 6.528123042137679e-10], [3.967231432255858e-09, 1.3174148894492908e-19, 2.8359531613717156e-18, 2.494163320321263e-09, 1.0298412789211397e-08, 1.5116002893833524e-10, 2.1975347763714126e-08, 3.5746050564000598e-09, 1.6151734172353827e-08, 3.8173769700833304e-10, 1.8412421587399308e-10, 3.289595091010393e-14, 2.1277655193330247e-09, 7.668088386481031e-09, 3.5389238206562368e-09, 1.4775632273256178e-08, 2.194889159312652e-09, 1.0881008594143537e-10, 7.006492321624085e-43, 1.2400941384882458e-10, 6.511300387757046e-09, 3.2759943646709644e-09, 3.5931737585315204e-09, 1.01892938531023e-09, 1.066953525530323e-09, 2.9752378338798735e-09, 4.5753965061123836e-09, 4.367079586842237e-09, 1.6498249666268145e-18, 1.0706191792483888e-12, 3.3701744173164627e-10, 4.967354860774265e-10], [4.712913045934464e-11, 8.807661998148254e-18, 8.420728104099144e-19, 1.160613185419157e-11, 4.1235209691237174e-11, 1.7111040232289931e-12, 1.0507774511614443e-10, 4.565094136044223e-11, 1.0647986832534873e-11, 1.5767581467915348e-12, 6.7864572468601114e-12, 2.1559109478121868e-13, 2.2685957279389157e-11, 2.2869183977092256e-11, 1.1316053129262205e-11, 2.8521018879956728e-11, 2.5775602138788933e-11, 1.5331976089243008e-15, 2.3487893663000966e-24, 1.4539412208913749e-11, 9.020197089260051e-11, 2.4316715308003722e-11, 4.953379373340283e-11, 9.0542877015376e-12, 6.6126336177585454e-12, 3.502324472104412e-11, 1.0608027477265747e-11, 2.062726205120935e-11, 4.217820439036884e-20, 4.2144093119825254e-13, 1.361794791515658e-13, 5.30016048411186e-12], [2.3379191915751107e-09, 2.0210760928068058e-15, 4.497208523293094e-18, 1.2894422196652044e-09, 7.998177231627324e-09, 9.252512644941646e-11, 4.45480230482076e-09, 2.1411148409811176e-09, 5.8257039192710636e-09, 5.539579212010537e-11, 1.26544039136256e-10, 5.580508928224037e-13, 1.2375734881331368e-09, 9.89813009333318e-10, 1.0165552843943715e-09, 1.2225388701381235e-08, 1.2870544630061431e-09, 2.3323475095704538e-11, 8.634837601803901e-19, 3.0680488705137066e-10, 3.4597398279601066e-09, 2.045565272723593e-09, 2.1652335480126794e-09, 6.018848197619775e-10, 6.490251669433178e-10, 1.6586162443488206e-09, 5.495389476806167e-09, 1.9179851040718177e-09, 1.062317455019189e-17, 4.154510069298567e-12, 2.7029728455474356e-10, 3.078759747143778e-10], [9.468136275003758e-10, 8.447263305892086e-23, 2.5916298836670877e-20, 3.1981928216850974e-10, 4.2370923436507724e-10, 3.3176707908699754e-11, 1.7937311636018194e-09, 7.950173297466279e-10, 2.910671703659773e-10, 7.253261576425918e-13, 7.30805260057421e-12, 1.8144857903516776e-13, 6.668564589418224e-10, 1.3599645021233897e-10, 2.731609938244617e-10, 7.56435469817518e-10, 5.16263587435617e-10, 4.3257320797954427e-17, 1.5533490306283767e-19, 3.226071840223277e-11, 1.2928664805400558e-09, 5.57672907852691e-10, 8.34463387278106e-10, 2.023561318509337e-10, 2.165271989484907e-10, 6.429990428991061e-10, 5.601353270101583e-10, 3.7194444746369015e-10, 1.3668780653659914e-23, 1.512137718642434e-13, 2.353637770791117e-11, 1.0269834288534341e-10], [5.714261286371425e-10, 4.576184965396411e-16, 5.9444945946235434e-18, 2.2902524321466444e-10, 1.501123253477843e-10, 2.048201018511886e-11, 1.070164290517539e-09, 5.167134498051951e-10, 3.7570971334055514e-10, 1.0612976643342709e-11, 6.534559785636995e-12, 1.984729824336829e-14, 2.9400890055875095e-10, 1.5290473748263977e-11, 1.8244522559385246e-10, 8.234714021781997e-10, 3.1945412981571053e-10, 9.579286182912015e-17, 1.361703730089718e-27, 3.1188024385286894e-11, 8.173181575976685e-10, 3.710341756058e-10, 5.247137169206439e-10, 1.375328323449665e-10, 1.4577136719928774e-10, 4.0914482912768335e-10, 4.844326606523452e-10, 2.580149427444667e-10, 1.9398530492529002e-19, 3.157427878180963e-12, 2.3732654730324043e-11, 6.914062378182706e-11], [6.439015987069752e-09, 6.163896393887415e-18, 3.272080934015426e-19, 4.236826001147165e-09, 4.487014759746444e-09, 3.145455007569353e-10, 1.8212395147543248e-08, 6.003999075687716e-09, 1.0040501763342036e-08, 1.548618178137673e-10, 1.0933301486382163e-10, 7.948080805704819e-14, 3.2849620801300716e-09, 5.074789033443494e-09, 2.6909583450418495e-09, 8.246859195537581e-09, 3.3250144859664488e-09, 1.8295477979823893e-11, 1.3350696379075574e-19, 6.46263181858231e-11, 9.410666912401666e-09, 4.567281663980793e-09, 5.893760146591376e-09, 1.933252891106463e-09, 1.747198830059915e-09, 4.576243384235568e-09, 3.917650648332938e-09, 2.9857554206813575e-09, 2.5510504449173734e-18, 2.459875619170715e-12, 3.7436090338793804e-10, 9.885190443981173e-10], [2.4261641584644167e-09, 2.1935673446409945e-17, 2.3633842570347115e-19, 8.901525072602112e-10, 9.980712922796897e-10, 1.0735242556014768e-10, 4.331831338078018e-09, 2.235687635021577e-09, 1.1210460337807149e-09, 4.2675624319088445e-12, 8.015003938321996e-11, 6.7500733193053e-14, 1.2354163247962902e-09, 1.6961636956080994e-11, 8.056220135443937e-10, 1.6884191822441608e-09, 1.3022265488160656e-09, 5.848780288482836e-15, 7.006492321624085e-43, 3.000124801366688e-11, 3.4617364530475925e-09, 1.6830169480286372e-09, 2.227631412665687e-09, 6.815963349282583e-10, 6.600481272656111e-10, 1.7089274439996416e-09, 1.326168508342107e-09, 1.0534009220464213e-09, 1.76418330669773e-18, 2.381708111981462e-12, 1.448655917446473e-10, 3.4538141790996235e-10], [2.3987056785301775e-09, 3.737095334302784e-16, 4.515832287989572e-19, 8.827481523532299e-10, 7.721922545833593e-10, 9.991247412743931e-11, 4.311129675471648e-09, 2.203169646719516e-09, 8.600594680885365e-10, 8.158907577326957e-13, 7.310536204174767e-11, 3.044266770092785e-13, 1.229386703549551e-09, 1.7664004980932901e-10, 7.451594896679126e-10, 1.6693154636371332e-09, 1.287302375807542e-09, 4.54350378731338e-15, 1.3721162141104518e-19, 4.582741477965335e-11, 3.460485453743445e-09, 1.6079548803560328e-09, 2.1835111496670834e-09, 6.407773200933775e-10, 6.408795161227943e-10, 1.6800473234823698e-09, 1.2491908618628145e-09, 1.0956411333751248e-09, 2.0650694273332813e-18, 1.3991080429626157e-12, 1.3386743102916654e-10, 3.323980257707859e-10], [3.2764497781556656e-09, 2.880517847745255e-17, 2.397120301329804e-19, 1.2333559729071908e-09, 2.893637995882159e-09, 1.6652076939571714e-10, 6.724099055332999e-09, 3.0578373166889605e-09, 2.8547182395755044e-09, 5.220080270817995e-11, 3.9591944306360816e-11, 6.194511185464782e-14, 1.6600766317154125e-09, 1.0660425875386181e-09, 6.914429029336588e-10, 3.9194310019752265e-09, 1.649956393734442e-09, 1.2105120725247609e-11, 7.006492321624085e-43, 9.893260516369295e-11, 4.712405576867695e-09, 2.4512836205303756e-09, 2.973527424288136e-09, 1.0200886801925435e-09, 8.91896112520385e-10, 2.247722008519304e-09, 2.0823054391883034e-09, 7.881030272827161e-10, 4.512458942054005e-19, 4.958589962245075e-13, 2.6177804368643365e-10, 5.171528205671905e-10], [4.774743378455071e-10, 7.810476124176031e-19, 2.5684161987647163e-21, 1.551946349209743e-10, 2.113761610189613e-09, 1.9535142600779487e-11, 1.2274142813240019e-09, 4.361179750667077e-10, 1.4023582295408232e-09, 8.927951260229161e-12, 4.663658348391664e-11, 1.2850040042450273e-13, 2.5109420098701207e-10, 1.9875932844026778e-10, 7.941889507145916e-11, 1.3595709003055845e-09, 2.5440058393222387e-10, 1.3621366187765993e-11, 7.006492321624085e-43, 1.1490169926631211e-10, 7.002602941952318e-10, 5.356277643642215e-10, 4.295281352817426e-10, 1.2986062225550654e-10, 1.328381987741878e-10, 3.3256802867143165e-10, 2.5256777225202143e-10, 9.971506259587315e-11, 2.3931526553561464e-23, 1.700543595913387e-13, 8.854444955019858e-11, 6.484362352621176e-11], [4.365248162940816e-10, 1.6499068905946818e-16, 8.480781416570494e-19, 1.5089821059355302e-10, 4.5124581155020493e-11, 1.4713067569838145e-11, 8.466929934947132e-10, 4.032205125348298e-10, 1.5348864540465357e-11, 2.6024402901766996e-13, 4.214422560933073e-11, 2.7555828041309608e-17, 2.359119843919899e-10, 5.448949277897519e-11, 1.43637532423746e-10, 1.244262470834201e-10, 2.6364066485484727e-10, 1.075772077077956e-14, 8.95453101783434e-19, 3.893998404974619e-12, 7.09442837809604e-10, 2.887308170329561e-10, 4.1387848703777763e-10, 1.0584372267530284e-10, 1.3780078467195978e-10, 3.247065116784853e-10, 6.580404277034546e-11, 2.115175395944746e-10, 3.1079400729465017e-18, 4.219000095031372e-13, 1.4219489301303678e-11, 5.591764204448957e-11], [1.3205922466674735e-10, 1.5140470410198283e-15, 9.67714049132418e-18, 4.305710649132877e-11, 1.2932914461583067e-10, 5.212029592638334e-12, 8.171445742277683e-10, 1.0406012856956082e-10, 2.0514930032522471e-10, 2.2829219417652702e-11, 2.8274479112189166e-12, 2.063498636827206e-14, 6.089347082127716e-11, 1.2915613023523065e-10, 4.311360296549438e-11, 2.5321392205235327e-10, 6.554824044657792e-11, 1.5354776911752355e-12, 7.006492321624085e-43, 3.417304633712703e-11, 2.2959305290282117e-10, 8.035355714142156e-11, 1.2310966135409274e-10, 2.634664188205793e-11, 2.8837730814412765e-11, 8.944758822515553e-11, 8.120364103358924e-11, 1.8701422355160702e-11, 5.623589413925676e-21, 1.1145461723677252e-12, 4.652937323629258e-12, 1.2926554791847789e-11], [4.119236507449386e-09, 8.164095827770644e-16, 2.202691973978067e-17, 2.550486266628127e-09, 7.475581931259967e-09, 1.857444198449798e-10, 7.145656510942899e-09, 3.8339140751020295e-09, 7.774262122950404e-09, 1.8920448541237533e-11, 2.6114244100483575e-10, 4.0848444418650764e-13, 2.1382933201863352e-09, 1.394973581092529e-09, 1.402757576762781e-09, 8.329761769232391e-09, 2.16730522417663e-09, 1.1312976013995376e-16, 3.854344430732195e-18, 4.791110841395607e-10, 5.804948965959511e-09, 3.6572938011403267e-09, 3.7224361371102077e-09, 1.2509498992230306e-09, 1.3720967695363129e-09, 2.861570091994281e-09, 5.02003683067187e-09, 2.299023860174998e-09, 2.1094731546993755e-19, 4.071516127718278e-12, 5.037056882706281e-10, 6.173534461417773e-10], [2.4060711201201457e-09, 2.5271773920536336e-19, 2.2905430877224613e-20, 9.015059809769355e-10, 1.400048521560393e-09, 1.2224572742969286e-10, 4.578801782173514e-09, 2.2492518958472374e-09, 2.018683442628344e-09, 2.3363675577536824e-11, 3.19464350806431e-11, 3.265655787927905e-17, 1.2135651372702227e-09, 7.473004437485997e-10, 6.594232382362009e-10, 2.731850745618658e-09, 1.2060180631934259e-09, 1.0667245732565167e-11, 2.4223042985930302e-27, 7.123586442947527e-12, 3.396663839083658e-09, 1.8612451579969047e-09, 2.175323032815868e-09, 7.674773039312299e-10, 6.691972531669421e-10, 1.6455817819505114e-09, 1.509344538241919e-09, 8.636309445364532e-10, 9.438534686013519e-21, 4.099071952636153e-14, 1.7433765542307356e-10, 3.8711073235830895e-10], [9.871307243836114e-11, 3.748636952302512e-17, 3.770581226772931e-18, 1.4043763374438356e-10, 1.5903406369588424e-10, 4.968433650609505e-12, 1.7740001134747274e-10, 9.540823686648991e-11, 4.602478120840914e-11, 8.359064308793851e-12, 4.0621802796514395e-12, 7.08155034585085e-15, 4.9032104765256435e-11, 5.780437760394275e-12, 2.929533352014069e-11, 1.0240073372580483e-10, 4.8832549115473967e-11, 1.6132153752402436e-28, 1.491299489279456e-31, 2.6824481871856598e-11, 1.4653535329589573e-10, 6.973464167225885e-11, 9.342177031967935e-11, 2.8644005570233055e-11, 2.6706603942217022e-11, 6.760333959299203e-11, 5.256745733150936e-11, 9.738847228657477e-11, 4.021396697624881e-25, 8.579267938430002e-13, 3.5487579671741876e-13, 1.468537964843808e-11], [6.1514260352169e-09, 8.502941299803478e-16, 3.0117615083782767e-18, 2.5217725685422465e-09, 2.172742874506639e-09, 2.7978699912445393e-10, 1.0915624848450989e-08, 5.643973288727011e-09, 3.237598411587328e-09, 1.1613834893786645e-11, 5.862951790724935e-11, 1.9773110015650075e-14, 3.2029880969730584e-09, 9.15869879936082e-11, 1.9588832778083543e-09, 5.991475315880734e-09, 3.2397788896076918e-09, 1.1648811046036285e-27, 2.4866620856507863e-18, 1.0689666513075124e-10, 8.741599444306303e-09, 4.294663291659617e-09, 5.6156332917112195e-09, 1.7602717061748763e-09, 1.6246538558917223e-09, 4.282040944048049e-09, 4.2653787168944746e-09, 2.6198958558154573e-09, 3.642898338701203e-26, 8.685053544399413e-12, 3.5992261948614157e-10, 8.943892293444833e-10], [8.809929674669092e-09, 7.573697981666635e-16, 1.582888022533921e-17, 4.130798814117043e-09, 7.287483949625084e-09, 4.042941814663692e-10, 1.78985839482948e-08, 7.993453010612939e-09, 1.1183616699383947e-08, 1.2510047164848714e-10, 7.939334606410497e-11, 2.896575665954637e-13, 4.710543954900004e-09, 3.8165697269221255e-09, 3.783496183018542e-09, 1.2405143579030664e-08, 4.549198795444909e-09, 1.0947318572485099e-11, 1.0547326999405664e-19, 1.0908199343795388e-10, 1.243743774637096e-08, 6.182380829500289e-09, 7.890476716454486e-09, 2.544793487047059e-09, 2.3096173862313663e-09, 6.081092074339267e-09, 7.915319955031919e-09, 5.592013074817714e-09, 7.3122068216045805e-19, 8.49829755178444e-12, 5.627011634423695e-10, 1.2783711866859448e-09], [2.3239423718734997e-09, 2.61385600731673e-15, 1.2468921380804952e-17, 1.1105083519424852e-09, 2.699320544863326e-09, 1.0958902535440629e-10, 1.1224289941935695e-08, 2.1469210853553022e-09, 5.875641306829493e-09, 1.665016874374814e-10, 1.9374023219054237e-11, 6.675608281219922e-14, 1.1822361978275353e-09, 3.207695664642074e-09, 1.3678497223779118e-09, 5.075137199384017e-09, 1.2016730943642528e-09, 5.113209508578187e-11, 2.448662216103667e-21, 4.4946019128744297e-11, 3.6320084717544887e-09, 1.7914911776273357e-09, 2.121663733589685e-09, 6.796849194579124e-10, 6.213615733052791e-10, 1.6647022649252108e-09, 1.7852851419419835e-09, 1.4426370098519214e-09, 1.738066319627287e-18, 2.6452590118353214e-12, 1.7721747680443656e-10, 3.475747190062606e-10], [1.4078743726386733e-09, 1.0652115118283283e-17, 2.1192063563227397e-20, 9.460017214024674e-10, 1.1460250526340587e-09, 4.98074012589278e-11, 4.5415609051246975e-09, 1.2560593676269605e-09, 1.7128526375032038e-09, 7.014069880462159e-11, 1.2196889331850258e-10, 8.761567351896291e-15, 8.157819975096459e-10, 9.17301956615546e-10, 5.746274567286491e-10, 3.2955416173763297e-09, 7.856757466839781e-10, 2.6110905104737014e-11, 8.571236621545236e-21, 4.9740270929854447e-11, 2.223426331937617e-09, 1.124998538770683e-09, 1.2673071481117404e-09, 3.431034067968852e-10, 4.658146646185912e-10, 1.0006535600126654e-09, 4.464948133442448e-10, 7.857771655572776e-10, 2.7646812118426154e-18, 7.829571409614933e-13, 1.0830338015299645e-10, 1.7289110421092602e-10], [1.108708058694674e-08, 4.3891690903677264e-16, 1.2233443882098086e-21, 4.471947701034651e-09, 3.741004839241668e-09, 4.863432434554227e-10, 1.9745201029763848e-08, 1.0121580018562781e-08, 4.131938347029518e-09, 3.995060185446597e-11, 8.918499966314997e-11, 7.223761926090574e-14, 5.8326405927289215e-09, 8.598046163932338e-10, 3.485695510008213e-09, 1.0137080508343388e-08, 5.863699747976625e-09, 8.618778433999719e-12, 5.860794524869881e-28, 1.2956726837265453e-11, 1.5647124484985397e-08, 7.805498469792838e-09, 9.970164249750724e-09, 3.113305169222258e-09, 2.984355873536515e-09, 7.697390280725358e-09, 6.788602124885301e-09, 4.642316753233899e-09, 8.792554578235738e-19, 4.622962169326117e-12, 6.648104289297407e-10, 1.5816392640033428e-09], [4.122025387687245e-09, 1.245271178408524e-16, 3.436347154306182e-17, 2.34648123154102e-09, 5.2673199135711e-09, 1.8435082627110688e-10, 1.0285182483471544e-08, 3.743782173160071e-09, 7.510499777652058e-09, 1.1155627116510303e-10, 2.8676000463079276e-10, 1.339813676670687e-13, 2.4970858714112865e-09, 3.6665857017226244e-09, 2.48796716562083e-09, 8.700207665413018e-09, 2.1583825837723225e-09, 6.810825774888896e-12, 1.9829850277862248e-17, 1.500890661754184e-10, 6.003140651245076e-09, 2.8453710498865803e-09, 3.7626319837613664e-09, 1.150920247994236e-09, 1.256586168452145e-09, 2.8631477189122734e-09, 4.304070433391871e-09, 3.4417824146260045e-09, 5.450785745564251e-19, 2.2055222231864846e-11, 2.7499508226114244e-10, 5.814869696862957e-10], [5.6310966306538646e-11, 3.6271433109086836e-16, 1.6083200420186241e-18, 2.4567738468594946e-11, 4.262298500257167e-11, 3.666098674637297e-12, 1.9445552112973274e-10, 4.348940652043609e-11, 1.5429543753775476e-10, 1.3100525005083075e-11, 2.562653214632782e-12, 7.99067436567727e-14, 2.1109454462209243e-11, 3.18288694012292e-11, 3.3441997001476542e-12, 7.352890518674826e-10, 2.1860797894124318e-11, 5.64953769530141e-12, 7.006492321624085e-43, 3.632349629412168e-11, 1.5795929841910805e-10, 4.0146313357025676e-11, 6.628088355942197e-11, 1.3794908791664451e-11, 1.1888066052401225e-11, 3.145401647475232e-11, 3.508560803000549e-11, 2.6644414105603254e-11, 3.568433174315997e-18, 1.035595017400727e-13, 1.4311466508404314e-12, 7.477300896507888e-12], [1.1386612763786275e-09, 2.281042574538649e-15, 5.7824937531968706e-18, 5.485920606673744e-10, 5.600564012553377e-09, 5.6779539403528645e-11, 2.0997408256562267e-09, 1.0013576634548826e-09, 4.161115008116667e-09, 3.253397898306254e-11, 2.7024969068145666e-11, 1.9479712710501057e-13, 7.766586818114263e-10, 2.927986741951827e-10, 8.466220502434396e-10, 6.56723919689739e-09, 5.725759866237468e-10, 6.868885885427667e-13, 5.642930496078428e-20, 7.217078323851212e-11, 1.6314760653557414e-09, 7.63484497845468e-10, 1.028002682978979e-09, 3.174277229955891e-10, 2.9430616277359434e-10, 7.52958251304392e-10, 3.971174944439326e-09, 2.0141659451411442e-09, 4.035344783648598e-18, 3.386077876421645e-12, 1.0936519051485405e-10, 1.630988677447931e-10], [3.7984282386105406e-09, 1.3254358323745491e-17, 5.973725006801575e-17, 1.8971701987169354e-09, 2.182614755597001e-09, 1.8519963340679624e-10, 6.657628670581062e-09, 3.542095505792986e-09, 3.304032158979453e-09, 7.35703512000363e-11, 7.395761086881336e-11, 1.6228656602151198e-13, 1.9102492920808345e-09, 3.3539615529321054e-10, 1.179285336050384e-09, 5.098739652709128e-09, 1.97548244429413e-09, 2.6894406840449747e-12, 3.8987086085252514e-18, 2.344310023882912e-10, 5.468538066821793e-09, 2.773623997143204e-09, 3.4906117996058583e-09, 1.1306645619768574e-09, 1.0371854486379561e-09, 2.6467092961723893e-09, 2.8819837627480638e-09, 1.6455136142567994e-09, 1.0634449635864098e-20, 5.49965064808311e-12, 3.1182270654461774e-10, 5.832247462755902e-10], [6.235999130271841e-12, 1.2398095695216324e-17, 1.5415092843281755e-18, 7.030264391472141e-12, 1.48229605673178e-11, 2.9489613333731624e-13, 1.843892399877589e-11, 6.4462775395401906e-12, 4.793833732752439e-12, 2.8112854925932407e-12, 1.7229237784729956e-12, 1.0664813167866584e-17, 2.455370108622734e-12, 8.4373801348403e-12, 1.3651537582662354e-12, 6.967021577708454e-12, 2.57895267641306e-12, 1.9148245672450916e-21, 1.7849894280920057e-27, 1.2853233234688677e-11, 2.045700588093613e-11, 2.5241273914761164e-12, 9.01984910373077e-12, 8.248781974314057e-13, 1.4213538115578905e-12, 5.08535921706077e-12, 4.458532067846965e-12, 2.3762810295868686e-12, 3.641426771043156e-20, 1.9560474930329502e-13, 3.435663551072145e-14, 7.947272397459959e-13], [5.825297133554841e-09, 2.8290222811935828e-15, 1.4641085261660014e-17, 2.1094805902066582e-09, 4.523497132424836e-09, 2.843837110244607e-10, 1.0708613551457802e-08, 5.404311664847228e-09, 3.447713448068157e-09, 5.439805550455645e-11, 1.2642623059555547e-10, 3.8315433725094605e-14, 2.960818701325252e-09, 4.062759018097495e-10, 2.0248904775144183e-09, 4.943019771275203e-09, 3.0031361841764692e-09, 9.600181760660575e-12, 1.474063478109485e-20, 2.585339442529033e-10, 8.292852626823333e-09, 4.395865893513928e-09, 5.3024642454602144e-09, 1.7553127840130855e-09, 1.5652590334980232e-09, 4.014964360976592e-09, 3.1710927217432072e-09, 2.654345410135761e-09, 1.3959281848558334e-18, 2.4760447598498603e-12, 4.130382424971657e-10, 8.948023988430975e-10], [3.2406914929339337e-09, 6.327960802788224e-16, 2.1456117140643552e-17, 2.8553250874807645e-09, 1.9093686631777018e-08, 1.6785575707167766e-10, 5.778076239693064e-09, 3.0492044444940802e-09, 1.5330490654719142e-08, 1.173744712534841e-10, 4.2951031620219737e-10, 2.298454124510102e-13, 1.7052057543764931e-09, 2.422117395539658e-09, 1.8612601460077371e-09, 2.0083859908481827e-08, 1.625930057258529e-09, 8.217091070072957e-12, 1.0148543872328703e-19, 9.021955960086814e-10, 4.614893800436448e-09, 3.672617543415413e-09, 2.939827714598664e-09, 1.0406708828014644e-09, 1.1590887138979156e-09, 2.203827342839304e-09, 1.0428420793573423e-08, 3.2316287423839185e-09, 5.940870612962372e-20, 1.1415762432576138e-11, 8.243546956165915e-10, 5.455119689301569e-10], [6.644353511831014e-09, 2.1176710948369757e-15, 3.774722506509678e-18, 1.8185601913245364e-09, 4.1087515612048264e-09, 3.3565561441406544e-10, 1.1339293060075306e-08, 6.210585823396286e-09, 2.73018674334935e-09, 1.7810607155777092e-11, 1.8207488294841312e-10, 1.0375010448199565e-13, 3.363402223399703e-09, 2.50293175074745e-10, 1.9126689121407026e-09, 4.749728610420334e-09, 3.3774016916510163e-09, 7.600611112712485e-12, 9.231735647242266e-27, 1.5523393681604603e-10, 9.464751649090886e-09, 4.947815490652374e-09, 6.068221480859393e-09, 2.048375691288129e-09, 1.8069185037106195e-09, 4.568106337643485e-09, 2.633319340361595e-09, 2.7518629597267363e-09, 5.5154562768172955e-18, 2.0256047273542466e-12, 3.404956594454944e-10, 1.0493065305539062e-09], [8.540848028815162e-10, 2.3882353351675095e-16, 6.8743444512163466e-18, 3.102290924150708e-10, 7.439199811720698e-10, 2.7392999327191525e-11, 3.152161642816509e-09, 5.931878321874251e-10, 1.5322969559861122e-09, 6.53288673158059e-11, 1.2885274444651706e-11, 1.611301695368661e-13, 9.005263756911575e-10, 8.725384859076257e-10, 3.968195771975047e-10, 3.4051468311702138e-09, 3.814810134450397e-10, 2.2098822771710047e-11, 4.9834423350272007e-20, 6.588518619565775e-11, 1.2572012320077874e-09, 5.392207236276647e-10, 6.459438539607731e-10, 1.5011396292674561e-10, 1.6204280972598184e-10, 4.875554959760109e-10, 5.229199850909083e-10, 4.667381481304744e-10, 7.668692585046525e-20, 8.324481512098081e-13, 4.463311317759455e-11, 7.691148412591886e-11], [1.47990142362886e-09, 3.0874136522204474e-16, 1.4201961544235213e-17, 4.5546824645192885e-10, 1.4009804427672634e-09, 5.5940634069440165e-11, 3.7587253309823154e-09, 1.1472244265675613e-09, 1.4727313812912257e-09, 3.0568141767828294e-11, 3.300315923326913e-11, 5.268724502906566e-14, 1.041806196866446e-09, 5.420250359655654e-10, 5.097615107807485e-10, 2.886799244095073e-09, 7.107633370750932e-10, 6.8368613721780935e-12, 2.4043359012106805e-18, 2.2343576988603786e-10, 2.169306734245424e-09, 9.465311867629111e-10, 1.2795530190956583e-09, 3.1528205046704727e-10, 3.214381261162913e-10, 9.068102935216871e-10, 9.782192833540648e-10, 7.221284126224248e-10, 2.6247916836713092e-19, 3.4155133148833228e-12, 6.923447926077131e-11, 1.583626979551056e-10], [3.43058537133345e-09, 8.494199423479446e-18, 2.2973101036797413e-18, 1.2947858341050278e-09, 3.594452069322074e-09, 1.497770379943475e-10, 5.990234530628413e-09, 3.128024950171948e-09, 3.3959841605479824e-09, 5.331315944268056e-11, 2.977623703159793e-11, 1.7812193506185764e-13, 1.7758844395032725e-09, 5.250336276851897e-10, 1.3921337416178403e-09, 6.986286216204007e-09, 1.7897627824225992e-09, 3.137281393501064e-16, 7.006492321624085e-43, 6.0145527447375e-11, 4.806510300880973e-09, 2.3509585389547283e-09, 3.0894553582072604e-09, 9.502595377242073e-10, 8.991248856560219e-10, 2.366633777839411e-09, 4.1297538722062654e-09, 1.942656036035828e-09, 1.5450669170569322e-20, 3.4069442145928663e-12, 1.935065718772222e-10, 4.815057796925259e-10], [3.1789906262957857e-09, 5.376669217034352e-16, 1.8452227289769483e-17, 1.3421188604922918e-09, 9.761804697916432e-09, 1.540116922882362e-10, 5.666466407205917e-09, 2.939904986121178e-09, 6.406236874312299e-09, 3.666862646856117e-11, 1.0240466807864834e-10, 6.511197830905147e-14, 1.6147296832969005e-09, 2.2596921556150562e-10, 1.9538033413368794e-09, 1.1275440137126225e-08, 1.6657309975798285e-09, 7.701199161887218e-14, 5.359615035821999e-18, 9.37477248608154e-11, 4.574497225462437e-09, 2.231672180386113e-09, 2.962443623744093e-09, 9.298160019710622e-10, 8.936803519432601e-10, 2.2086419360078935e-09, 6.268377372720124e-09, 3.4250096092591775e-09, 8.865301106453685e-20, 5.784507855349785e-12, 2.2649480901915098e-10, 4.759882488158951e-10], [2.1653583370806473e-09, 1.18777272906433e-16, 1.1132338131623393e-17, 1.2856163911223462e-09, 6.248968453803627e-09, 9.231133218934318e-11, 3.853573460332882e-09, 1.9822636865285403e-09, 3.4926406211610583e-09, 2.1130793295687234e-11, 1.9807844253705298e-10, 4.991716268847382e-14, 1.1215418593835125e-09, 1.0659987476069333e-10, 7.386120604024882e-10, 2.733420156886268e-09, 1.1589970094760815e-09, 2.1685587492444167e-29, 9.012723173927446e-19, 4.452930801868149e-10, 3.064491105320144e-09, 2.0541850442867826e-09, 1.9701045239628456e-09, 5.985585915802005e-10, 6.770821125989812e-10, 1.5161604194346978e-09, 1.4654900626354106e-09, 1.0542312578465385e-09, 8.298542199330027e-24, 7.474444674304692e-12, 3.902115297549358e-10, 3.1811267509063157e-10], [3.5062057701651383e-09, 4.719910045282113e-16, 2.1182732707423858e-18, 1.445292219237615e-09, 1.3641269225317387e-09, 1.3939356613423826e-10, 6.383965356349108e-09, 3.201795495400006e-09, 2.086660622069303e-09, 6.366187958739555e-12, 1.0394722582685034e-10, 1.9294304652237027e-13, 1.8116684818991757e-09, 1.3943828036655503e-10, 1.0854677157112746e-09, 4.275358733707435e-09, 1.9195645073466494e-09, 1.6081191539588073e-30, 3.1427447828942244e-20, 1.1388673337719979e-10, 4.9745243480003865e-09, 2.3509794111475912e-09, 3.197092812712299e-09, 9.052703031642295e-10, 9.23507714745142e-10, 2.48361331500746e-09, 2.7887963049977316e-09, 1.6482327724887114e-09, 1.2375688251301663e-20, 8.023381438404531e-12, 1.711483593735963e-10, 4.606629244729987e-10], [1.282902228894045e-09, 4.0003481450512964e-15, 6.054393645371216e-17, 2.434841217535677e-09, 1.6695206994654654e-08, 5.549318990438756e-11, 2.572314805604492e-09, 1.1934436772165213e-09, 1.6653169510050247e-08, 1.5577311662795523e-10, 3.097057055256869e-10, 4.827710496993487e-13, 6.720044520847068e-10, 1.5039687273343816e-09, 1.736703558741226e-09, 2.711678170896903e-08, 6.642235095277726e-10, 1.2386972524092155e-11, 1.4912217695662033e-18, 5.694541505008033e-10, 1.866993448729204e-09, 1.5762118277251602e-09, 1.1449508008354314e-09, 3.6127120739415375e-10, 4.888561777605105e-10, 8.773267112793803e-10, 1.4478064080947206e-08, 4.0105785359401125e-09, 6.377797855668115e-18, 1.1019848228377427e-11, 5.148584336645001e-10, 1.9174106746788766e-10], [2.129213472201741e-09, 1.4169813004292217e-15, 1.7490927612697108e-17, 1.1534396771040178e-09, 8.638637027935658e-10, 8.997742828587008e-11, 4.479932869116965e-09, 1.960012596669003e-09, 1.920527958887419e-09, 3.5237139595079014e-11, 3.5935785597240866e-11, 2.845345215950895e-13, 1.1115126596905611e-09, 1.2691280248944281e-09, 8.11291589464247e-10, 2.687814637525321e-09, 1.180371023146165e-09, 1.7119699755041573e-12, 4.537892677938479e-19, 5.4843279223559804e-11, 3.0816305063297023e-09, 1.4599240705237548e-09, 1.9613048962696666e-09, 5.780179668235519e-10, 5.598583263655144e-10, 1.536187732575911e-09, 1.4826937455580946e-09, 9.410942025667168e-10, 2.482182385645929e-19, 2.0107273051434005e-12, 1.0129697775029811e-10, 2.9175256655022963e-10], [2.2945654057360265e-11, 2.751038684770182e-22, 1.4259563015822774e-20, 2.724207144588764e-12, 2.025991353848955e-11, 9.29571198661494e-13, 4.809715473119702e-11, 2.3028495776955538e-11, 1.9082062319153437e-11, 1.3135326160096383e-12, 3.2762928654783696e-12, 1.858067566723031e-14, 1.1452037235182289e-11, 1.6110285848414119e-12, 6.480814582904282e-12, 1.5989312304731662e-11, 1.201247695065133e-11, 5.167471661582007e-30, 7.006492321624085e-43, 1.039615702552732e-11, 3.83684056748379e-11, 1.8843879581731393e-11, 2.404578793024914e-11, 5.515857302157423e-12, 4.859114846600399e-12, 1.6827327725676966e-11, 3.3914379551219787e-12, 8.981742433133988e-12, 7.006492321624085e-43, 1.2808105474110786e-14, 2.0719233620458688e-13, 2.5377690400507635e-12], [4.344570481151777e-09, 6.293943165533103e-17, 9.773707210394846e-18, 2.450361025196912e-09, 6.827874710069182e-09, 1.9446810828327443e-10, 7.951620695223482e-09, 4.006147857893438e-09, 4.979225032286649e-09, 3.181885310787891e-11, 3.1220545593235727e-10, 9.807516669450844e-14, 2.3114585800954046e-09, 2.951959565677953e-09, 1.723324927205283e-09, 5.134974223608424e-09, 2.266167697939636e-09, 6.5587395879488676e-15, 8.431296473797851e-18, 3.620287403194311e-10, 6.146352760083573e-09, 3.576019702578037e-09, 3.935900050322516e-09, 1.249015779691831e-09, 1.3643597363000026e-09, 3.0123441518981053e-09, 3.004193782629727e-09, 2.3437285445737643e-09, 1.8194735839550288e-19, 8.300964082774698e-12, 5.199032315772456e-10, 6.400927010652424e-10]], [[1.011563277586447e-08], [2.5438162928642823e-14], [9.522084989192748e-16], [4.176332879524125e-08], [7.317934258566083e-09], [1.494604795482246e-08], [1.4085734356683588e-08], [1.1558602075467661e-08], [3.91596053361809e-08], [1.806521876535072e-10], [8.662798256509063e-10], [1.1244348551223138e-12], [1.0396109750843152e-08], [5.180712747687721e-09], [1.846118102832861e-08], [6.337185709526238e-08], [1.8047700223178254e-08], [1.2615852712006582e-14], [1.3530207755190593e-18], [2.5065052811079624e-10], [3.260389647152806e-08], [1.0612919432162471e-08], [2.476001803586314e-08], [2.3230107615290763e-08], [1.4204277754004124e-08], [2.1876841671542024e-08], [3.659551950363493e-08], [7.236948817990196e-08], [9.147144159370376e-19], [6.127261892308056e-11], [7.354555631167159e-09], [1.6382971423922754e-08]]], "m_b": [[-1.1514132893353235e-05, 0.00023431259614881128, 9.777960258361418e-06, -1.7478272411608486e-06, 0.00013842260523233563, 5.9437088566483e-06, 3.251354428357445e-05, -7.338551313296193e-06, 1.2800543117919005e-05, 1.7488917364971712e-05, 2.769104321487248e-05, -4.38507049693726e-06, -1.4690003808937036e-05, -1.914508902700618e-05, 2.402869654360984e-07, -1.7683181795291603e-05, -0.00015757961955387145, -5.097725988889579e-06, 5.605193857299268e-45, -8.461312972940505e-05, -0.00017237129213754088, -0.00010237529932055622, -1.711526465442148e-06, -1.689272153271304e-06, 1.595759022166021e-05, 7.65163008509262e-08, 1.961820998985786e-05, -7.523867679992691e-07, -1.235129457199946e-05, -3.370710328454152e-05, -0.00011080878175562248, -0.00024800593382678926, 4.848964454140514e-05, -3.20828658004757e-05, 8.082076237769797e-05, 4.344407898315694e-06, 1.1572670821635711e-08, -1.3109566907587578e-06, -8.26879022497451e-06, 4.0685645217308775e-05, 1.1617794370977208e-06, -9.558016245136969e-06, 3.6975254715798656e-06, 6.879518332425505e-05, 1.0034837941930164e-05, 0.0001487026602262631, 1.592422995599918e-05, -8.944272167354939e-08, 7.690412530791946e-06, 1.869836705736816e-05, -3.4677700710972204e-08, 8.803537639323622e-05, -2.1415284209069796e-05, 8.149410859914497e-05, -2.1312748685886618e-06, 1.1402623385947663e-05, -6.586354629689595e-06, -1.662658542045392e-05, -9.951244805961323e-08, -8.923617315304e-06, -6.747057341272011e-06, -3.6017019738210365e-05, 9.71242661762517e-06, -5.4637355788145214e-05], [-6.140984396552085e-07, -2.653040720766332e-28, 5.605193857299268e-45, -2.0295324247854296e-06, 1.1004557563865092e-05, -1.2067806476334653e-10, -5.933948211273021e-12, 4.167142759331499e-12, -1.9132435227220412e-06, 1.6894569475330318e-19, 4.831746736044806e-08, -5.605193857299268e-45, -2.1920678605624744e-09, -1.0010309097197023e-06, -2.0628971469704993e-05, 1.26275210732274e-06, -4.071727763982347e-13, -1.0882460679635463e-25, -5.605193857299268e-45, 1.5907960460026516e-07, -4.2933375604681245e-11, 1.786102998835304e-08, -1.2877035375502555e-11, -8.983954552510554e-11, -1.948132988260909e-09, -3.4917242708321083e-12, 1.701127075648401e-06, -2.3310878532356583e-05, -5.605193857299268e-45, -7.422620569978778e-20, -3.665543772513047e-06, 7.152076673955232e-12], [-4.787041422982252e-12]], "v_b": [[2.965476475491613e-10, 1.6312333173118532e-07, 9.15279851909645e-09, 1.7992737300076556e-09, 1.666041526959816e-07, 5.619271448153995e-08, 3.312668894750459e-08, 3.9302627818926794e-10, 7.53212034965145e-08, 1.3076735250194815e-08, 6.262004603740934e-08, 1.8395440726237666e-10, 4.3923212289520563e-10, 3.4672682502900898e-09, 4.277418697018476e-11, 5.579058881544086e-10, 1.260460180674272e-07, 3.459883490819493e-10, 5.59236294425669e-12, 2.3576271601655208e-08, 1.0172245623607523e-07, 3.533093817509325e-08, 4.4809558841230057e-10, 1.5184310475646612e-09, 8.102643889174033e-09, 6.11481976164896e-10, 2.867899029368459e-09, 8.146008867448984e-11, 8.723137767674416e-10, 1.9898719116895336e-08, 6.431945820395413e-08, 2.500639482150291e-07, 5.9276828778820345e-08, 3.914654822523289e-09, 8.923708882946357e-09, 2.0729043481715337e-10, 9.159473179920496e-11, 2.727887637998805e-10, 1.468203425503134e-08, 2.0415825474628946e-08, 6.325237555948604e-10, 1.838534546827475e-09, 6.314566092235907e-10, 1.3154307509921637e-07, 5.98269933593798e-10, 4.034290412846531e-08, 3.995693498293207e-10, 1.5940893050014893e-10, 1.1979515157634069e-09, 4.407862519428818e-08, 1.3801940146329628e-10, 8.904896731110057e-08, 8.750262181500545e-10, 1.0299064712171457e-07, 1.0221518742525859e-08, 2.5882776477637037e-10, 5.03748875946286e-10, 5.805242953016432e-10, 6.523368512034722e-10, 9.158504177264604e-09, 1.2647760616602e-10, 6.022510490311106e-08, 4.1818153106998324e-11, 2.9231188580780554e-09], [3.69571517486178e-12, 9.979885121360016e-16, 1.542168402519773e-17, 4.727251923242193e-11, 1.5047675328005994e-09, 8.97314069835814e-13, 3.239625581685779e-11, 3.468191879518745e-12, 1.1743612748915666e-09, 3.082613331262252e-11, 1.3525650217893759e-11, 9.266825723658681e-14, 3.7198360711143685e-12, 7.518204808709683e-11, 1.8546872371238976e-10, 1.870154031635707e-09, 8.828159015449033e-13, 2.135086947735801e-13, 8.626720245808371e-20, 3.7132165398023886e-11, 1.1821404966028126e-11, 1.502925041363401e-11, 6.911013861882198e-12, 5.352500669249249e-13, 2.7522496000992325e-12, 1.1848005215808755e-12, 8.907917181666392e-10, 3.602618758868914e-10, 1.169467691533529e-19, 2.050599707398293e-12, 8.658288495888566e-12, 8.579111271216078e-13], [2.6048014424522875e-21]], "t": 163367} \ No newline at end of file diff --git a/backend/routers/__init__.py b/backend/routers/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/backend/routers/auth.py b/backend/routers/auth.py new file mode 100644 index 0000000..156a948 --- /dev/null +++ b/backend/routers/auth.py @@ -0,0 +1,224 @@ +import logging +import re +import secrets +import uuid +from datetime import datetime, timedelta + +from fastapi import APIRouter, Depends, HTTPException, Request +from fastapi.security import OAuth2PasswordRequestForm +from pydantic import BaseModel +from sqlalchemy.orm import Session + +from core.auth import ( + create_access_token, create_refresh_token, + decode_refresh_token, hash_password, verify_password, +) +from core.database import get_db +from core.dependencies import get_current_user, limiter +from services.email_utils import send_password_reset_email, send_verification_email +from core.models import User as UserModel + +logger = logging.getLogger("app") + +router = APIRouter() + +try: + from disposable_email_domains import blocklist as _disposable_blocklist +except ImportError: + _disposable_blocklist: set[str] = set() + + +class RegisterRequest(BaseModel): + username: str + email: str + password: str + +class ForgotPasswordRequest(BaseModel): + email: str + +class ResetPasswordWithTokenRequest(BaseModel): + token: str + new_password: str + +class ResetPasswordRequest(BaseModel): + current_password: str + new_password: str + +class ResendVerificationRequest(BaseModel): + email: str + +class RefreshRequest(BaseModel): + refresh_token: str + + +def validate_register(username: str, email: str, password: str) -> str | None: + if not username.strip(): + return "Username is required" + if len(username) < 2: + return "Username must be at least 2 characters" + if len(username) > 16: + return "Username must be 16 characters or fewer" + if not re.match(r"^[^\s@]+@[^\s@]+\.[^\s@]+$", email): + return "Please enter a valid email" + domain = email.split("@")[-1].lower() + if domain in _disposable_blocklist: + return "Disposable email addresses are not allowed" + if len(password) < 8: + return "Password must be at least 8 characters" + if len(password) > 256: + return "Password must be 256 characters or fewer" + return None + + +@router.post("/register") +@limiter.limit("5/minute") +def register(request: Request, req: RegisterRequest, db: Session = Depends(get_db)): + err = validate_register(req.username, req.email, req.password) + if err: + raise HTTPException(status_code=400, detail=err) + if db.query(UserModel).filter(UserModel.username.ilike(req.username)).first(): + raise HTTPException(status_code=400, detail="Username already taken") + if db.query(UserModel).filter(UserModel.email == req.email).first(): + raise HTTPException(status_code=400, detail="Email already registered") + verification_token = secrets.token_urlsafe(32) + user = UserModel( + id=uuid.uuid4(), + username=req.username, + email=req.email, + password_hash=hash_password(req.password), + email_verified=False, + email_verification_token=verification_token, + email_verification_token_expires_at=datetime.now() + timedelta(hours=24), + ) + db.add(user) + db.commit() + try: + send_verification_email(req.email, req.username, verification_token) + except Exception as e: + logger.error(f"Failed to send verification email: {e}") + raise HTTPException( + status_code=500, + detail="Account created but we couldn't send the verification email. Please use 'Resend verification' to try again." + ) + return {"message": "Account created. Please check your email to verify your account."} + + +@router.post("/login") +@limiter.limit("10/minute") +def login(request: Request, form: OAuth2PasswordRequestForm = Depends(), db: Session = Depends(get_db)): + user = db.query(UserModel).filter(UserModel.username.ilike(form.username)).first() + if not user or not verify_password(form.password, user.password_hash): + raise HTTPException(status_code=400, detail="Invalid username or password") + user.last_active_at = datetime.now() + db.commit() + return { + "access_token": create_access_token(str(user.id)), + "refresh_token": create_refresh_token(str(user.id)), + "token_type": "bearer", + } + + +@router.post("/auth/reset-password") +@limiter.limit("5/minute") +def reset_password(request: Request, req: ResetPasswordRequest, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + if not verify_password(req.current_password, user.password_hash): + raise HTTPException(status_code=400, detail="Current password is incorrect") + if len(req.new_password) < 8: + raise HTTPException(status_code=400, detail="Password must be at least 8 characters") + if len(req.new_password) > 256: + raise HTTPException(status_code=400, detail="Password must be 256 characters or fewer") + if req.current_password == req.new_password: + raise HTTPException(status_code=400, detail="New password must be different from current password") + user.password_hash = hash_password(req.new_password) + db.commit() + return {"message": "Password updated"} + + +@router.post("/auth/forgot-password") +@limiter.limit("5/minute") +def forgot_password(request: Request, req: ForgotPasswordRequest, db: Session = Depends(get_db)): + user = db.query(UserModel).filter(UserModel.email == req.email).first() + # Always return success even if email not found. Prevents user enumeration + if user: + token = secrets.token_urlsafe(32) + user.reset_token = token + user.reset_token_expires_at = datetime.now() + timedelta(hours=1) + db.commit() + try: + send_password_reset_email(user.email, user.username, token) + except Exception as e: + logger.error(f"Failed to send reset email: {e}") + raise HTTPException( + status_code=500, + detail="Failed to send the password reset email. Please try again later." + ) + return {"message": "If that email is registered you will receive a reset link shortly"} + + +@router.post("/auth/reset-password-with-token") +@limiter.limit("5/minute") +def reset_password_with_token(request: Request, req: ResetPasswordWithTokenRequest, db: Session = Depends(get_db)): + user = db.query(UserModel).filter(UserModel.reset_token == req.token).first() + if not user or not user.reset_token_expires_at or user.reset_token_expires_at < datetime.now(): + raise HTTPException(status_code=400, detail="Invalid or expired reset link") + if len(req.new_password) < 8: + raise HTTPException(status_code=400, detail="Password must be at least 8 characters") + if len(req.new_password) > 256: + raise HTTPException(status_code=400, detail="Password must be 256 characters or fewer") + user.password_hash = hash_password(req.new_password) + user.reset_token = None + user.reset_token_expires_at = None + db.commit() + return {"message": "Password updated"} + + +@router.get("/auth/verify-email") +@limiter.limit("10/minute") +def verify_email(request: Request, token: str, db: Session = Depends(get_db)): + user = db.query(UserModel).filter(UserModel.email_verification_token == token).first() + if not user or not user.email_verification_token_expires_at or user.email_verification_token_expires_at < datetime.now(): + raise HTTPException(status_code=400, detail="Invalid or expired verification link") + user.email_verified = True + user.email_verification_token = None + user.email_verification_token_expires_at = None + db.commit() + return {"message": "Email verified"} + + +@router.post("/auth/resend-verification") +@limiter.limit("5/minute") +def resend_verification(request: Request, req: ResendVerificationRequest, db: Session = Depends(get_db)): + user = db.query(UserModel).filter(UserModel.email == req.email).first() + # Always return success to prevent user enumeration + if user and not user.email_verified: + token = secrets.token_urlsafe(32) + user.email_verification_token = token + user.email_verification_token_expires_at = datetime.now() + timedelta(hours=24) + db.commit() + try: + send_verification_email(user.email, user.username, token) + except Exception as e: + logger.error(f"Failed to resend verification email: {e}") + raise HTTPException( + status_code=500, + detail="Failed to send the verification email. Please try again later." + ) + return {"message": "If that email is registered and unverified, you will receive a new verification link shortly"} + + +@router.post("/auth/refresh") +@limiter.limit("20/minute") +def refresh(request: Request, req: RefreshRequest, db: Session = Depends(get_db)): + user_id = decode_refresh_token(req.refresh_token) + if not user_id: + raise HTTPException(status_code=401, detail="Invalid or expired refresh token") + user = db.query(UserModel).filter(UserModel.id == uuid.UUID(user_id)).first() + if not user: + raise HTTPException(status_code=401, detail="User not found") + user.last_active_at = datetime.now() + db.commit() + return { + "access_token": create_access_token(str(user.id)), + "refresh_token": create_refresh_token(str(user.id)), + "token_type": "bearer", + } diff --git a/backend/routers/cards.py b/backend/routers/cards.py new file mode 100644 index 0000000..910bb31 --- /dev/null +++ b/backend/routers/cards.py @@ -0,0 +1,229 @@ +import asyncio +import uuid +from datetime import datetime, timedelta + +from fastapi import APIRouter, Depends, HTTPException, Query, Request +from sqlalchemy import asc, case, desc, func +from sqlalchemy.orm import Session + +from game.card import _get_specific_card_async +from core.database import get_db +from services.database_functions import check_boosters, fill_card_pool, BOOSTER_MAX +from core.dependencies import get_current_user, limiter +from core.models import Card as CardModel +from core.models import Deck as DeckModel +from core.models import DeckCard as DeckCardModel +from core.models import User as UserModel + +router = APIRouter() + + +@router.get("/boosters") +def get_boosters(user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + count, countdown = check_boosters(user, db) + return {"count": count, "countdown": countdown, "email_verified": user.email_verified} + + +@router.get("/cards") +def get_cards( + skip: int = 0, + limit: int = 40, + search: str = "", + rarities: list[str] = Query(default=[]), + types: list[str] = Query(default=[]), + cost_min: int = 1, + cost_max: int = 10, + favorites_only: bool = False, + wtt_only: bool = False, + sort_by: str = "name", + sort_dir: str = "asc", + user: UserModel = Depends(get_current_user), + db: Session = Depends(get_db), +): + q = db.query(CardModel).filter(CardModel.user_id == user.id) + + if search: + q = q.filter(CardModel.name.ilike(f"%{search}%")) + if rarities: + q = q.filter(CardModel.card_rarity.in_(rarities)) + if types: + q = q.filter(CardModel.card_type.in_(types)) + q = q.filter(CardModel.cost >= cost_min, CardModel.cost <= cost_max) + if favorites_only: + q = q.filter(CardModel.is_favorite == True) + if wtt_only: + q = q.filter(CardModel.willing_to_trade == True) + + total = q.count() + + # case() for rarity ordering matches frontend RARITY_ORDER constant + rarity_order_expr = case( + (CardModel.card_rarity == 'common', 0), + (CardModel.card_rarity == 'uncommon', 1), + (CardModel.card_rarity == 'rare', 2), + (CardModel.card_rarity == 'super_rare', 3), + (CardModel.card_rarity == 'epic', 4), + (CardModel.card_rarity == 'legendary', 5), + else_=0 + ) + # coalesce mirrors frontend: received_at ?? generated_at + date_received_expr = func.coalesce(CardModel.received_at, CardModel.generated_at) + + sort_map = { + "name": CardModel.name, + "cost": CardModel.cost, + "attack": CardModel.attack, + "defense": CardModel.defense, + "rarity": rarity_order_expr, + "date_generated": CardModel.generated_at, + "date_received": date_received_expr, + } + sort_col = sort_map.get(sort_by, CardModel.name) + order_fn = desc if sort_dir == "desc" else asc + # Secondary sort by name keeps pages stable when primary values are tied + q = q.order_by(order_fn(sort_col), asc(CardModel.name)) + + cards = q.offset(skip).limit(limit).all() + return { + "cards": [ + {c.name: getattr(card, c.name) for c in card.__table__.columns} + for card in cards + ], + "total": total, + } + + +@router.get("/cards/in-decks") +def get_cards_in_decks(user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + deck_ids = [d.id for d in db.query(DeckModel).filter(DeckModel.user_id == user.id, DeckModel.deleted == False).all()] + if not deck_ids: + return [] + card_ids = db.query(DeckCardModel.card_id).filter(DeckCardModel.deck_id.in_(deck_ids)).distinct().all() + return [str(row.card_id) for row in card_ids] + + +@router.post("/open_pack") +@limiter.limit("10/minute") +async def open_pack(request: Request, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + if not user.email_verified: + raise HTTPException(status_code=403, detail="You must verify your email before opening packs") + + check_boosters(user, db) + + if user.boosters == 0: + raise HTTPException(status_code=400, detail="No booster packs available") + + cards = ( + db.query(CardModel) + .filter(CardModel.user_id == None, CardModel.ai_used == False) + .limit(5) + .all() + ) + + if len(cards) < 5: + asyncio.create_task(fill_card_pool()) + raise HTTPException(status_code=503, detail="Card pool is low, please try again shortly") + + now = datetime.now() + for card in cards: + card.user_id = user.id + card.received_at = now + + was_full = user.boosters == BOOSTER_MAX + user.boosters -= 1 + if was_full: + user.boosters_countdown = datetime.now() + + db.commit() + + asyncio.create_task(fill_card_pool()) + + return [ + {**{c.name: getattr(card, c.name) for c in card.__table__.columns}, + "card_rarity": card.card_rarity, + "card_type": card.card_type} + for card in cards + ] + + +@router.post("/cards/{card_id}/report") +def report_card(card_id: str, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + card = db.query(CardModel).filter( + CardModel.id == uuid.UUID(card_id), + CardModel.user_id == user.id + ).first() + if not card: + raise HTTPException(status_code=404, detail="Card not found") + card.reported = True + db.commit() + return {"message": "Card reported"} + + +@router.post("/cards/{card_id}/refresh") +@limiter.limit("5/hour") +async def refresh_card(request: Request, card_id: str, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + card = db.query(CardModel).filter( + CardModel.id == uuid.UUID(card_id), + CardModel.user_id == user.id + ).first() + if not card: + raise HTTPException(status_code=404, detail="Card not found") + + if user.last_refresh_at and datetime.now() - user.last_refresh_at < timedelta(minutes=10): + remaining = (user.last_refresh_at + timedelta(minutes=10)) - datetime.now() + minutes = int(remaining.total_seconds() // 60) + seconds = int(remaining.total_seconds() % 60) + raise HTTPException( + status_code=429, + detail=f"You can refresh again in {minutes}m {seconds}s" + ) + + new_card = await _get_specific_card_async(card.name) + if not new_card: + raise HTTPException(status_code=502, detail="Failed to regenerate card from Wikipedia") + + card.image_link = new_card.image_link + card.card_rarity = new_card.card_rarity.name + card.card_type = new_card.card_type.name + card.text = new_card.text + card.attack = new_card.attack + card.defense = new_card.defense + card.cost = new_card.cost + card.reported = False + card.generated_at = datetime.now() + card.received_at = datetime.now() + + user.last_refresh_at = datetime.now() + db.commit() + + return { + **{c.name: getattr(card, c.name) for c in card.__table__.columns}, + "card_rarity": card.card_rarity, + "card_type": card.card_type, + } + + +@router.post("/cards/{card_id}/favorite") +def toggle_favorite(card_id: str, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + card = db.query(CardModel).filter( + CardModel.id == uuid.UUID(card_id), + CardModel.user_id == user.id + ).first() + if not card: + raise HTTPException(status_code=404, detail="Card not found") + card.is_favorite = not card.is_favorite + db.commit() + return {"is_favorite": card.is_favorite} + + +@router.post("/cards/{card_id}/willing-to-trade") +def toggle_willing_to_trade(card_id: str, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + card = db.query(CardModel).filter( + CardModel.id == uuid.UUID(card_id), + CardModel.user_id == user.id + ).first() + if not card: + raise HTTPException(status_code=404, detail="Card not found") + card.willing_to_trade = not card.willing_to_trade + db.commit() + return {"willing_to_trade": card.willing_to_trade} diff --git a/backend/routers/decks.py b/backend/routers/decks.py new file mode 100644 index 0000000..aae2647 --- /dev/null +++ b/backend/routers/decks.py @@ -0,0 +1,97 @@ +import uuid +from typing import List, Optional + +from fastapi import APIRouter, Depends, HTTPException +from pydantic import BaseModel, Field +from sqlalchemy.orm import Session, selectinload + +from game.card import compute_deck_type +from core.database import get_db +from core.dependencies import get_current_user +from core.models import Card as CardModel +from core.models import Deck as DeckModel +from core.models import DeckCard as DeckCardModel +from core.models import User as UserModel + +router = APIRouter() + + +class DeckUpdate(BaseModel): + name: Optional[str] = Field(None, max_length=64) + card_ids: Optional[List[str]] = None + + +@router.get("/decks") +def get_decks(user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + decks = db.query(DeckModel).options( + selectinload(DeckModel.deck_cards).selectinload(DeckCardModel.card) + ).filter( + DeckModel.user_id == user.id, + DeckModel.deleted == False + ).order_by(DeckModel.created_at).all() + result = [] + for deck in decks: + cards = [dc.card for dc in deck.deck_cards] + result.append({ + "id": str(deck.id), + "name": deck.name, + "card_count": len(cards), + "total_cost": sum(card.cost for card in cards), + "times_played": deck.times_played, + "wins": deck.wins, + "losses": deck.losses, + "deck_type": compute_deck_type(cards), + }) + return result + + +@router.post("/decks") +def create_deck(user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + count = db.query(DeckModel).filter(DeckModel.user_id == user.id).count() + deck = DeckModel(id=uuid.uuid4(), user_id=user.id, name=f"Deck #{count + 1}") + db.add(deck) + db.commit() + return {"id": str(deck.id), "name": deck.name, "card_count": 0} + + +@router.patch("/decks/{deck_id}") +def update_deck(deck_id: str, body: DeckUpdate, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + deck = db.query(DeckModel).filter(DeckModel.id == uuid.UUID(deck_id), DeckModel.user_id == user.id).first() + if not deck: + raise HTTPException(status_code=404, detail="Deck not found") + if body.name is not None: + deck.name = body.name + if body.card_ids is not None: + db.query(DeckCardModel).filter(DeckCardModel.deck_id == deck.id).delete() + for card_id in body.card_ids: + db.add(DeckCardModel(deck_id=deck.id, card_id=uuid.UUID(card_id))) + if deck.times_played > 0: + deck.wins = 0 + deck.losses = 0 + deck.times_played = 0 + db.commit() + return {"id": str(deck.id), "name": deck.name} + + +@router.delete("/decks/{deck_id}") +def delete_deck(deck_id: str, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + deck = db.query(DeckModel).filter(DeckModel.id == uuid.UUID(deck_id), DeckModel.user_id == user.id).first() + if not deck: + raise HTTPException(status_code=404, detail="Deck not found") + if deck.times_played > 0: + deck.deleted = True + else: + db.delete(deck) + db.commit() + return {"message": "Deleted"} + + +@router.get("/decks/{deck_id}/cards") +def get_deck_cards(deck_id: str, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + deck = db.query(DeckModel).filter(DeckModel.id == uuid.UUID(deck_id), DeckModel.user_id == user.id).first() + if not deck: + raise HTTPException(status_code=404, detail="Deck not found") + deck_cards = db.query(DeckCardModel).options( + selectinload(DeckCardModel.card) + ).filter(DeckCardModel.deck_id == deck.id).all() + return [{"id": str(dc.card_id), "cost": dc.card.cost} for dc in deck_cards] diff --git a/backend/routers/friends.py b/backend/routers/friends.py new file mode 100644 index 0000000..0e5e292 --- /dev/null +++ b/backend/routers/friends.py @@ -0,0 +1,134 @@ +import uuid + +from fastapi import APIRouter, Depends, HTTPException, Request +from sqlalchemy.orm import Session, joinedload + +from services import notification_manager +from core.database import get_db +from core.dependencies import get_current_user, get_user_id_from_request, limiter +from core.models import Friendship as FriendshipModel +from core.models import Notification as NotificationModel +from core.models import User as UserModel +from routers.notifications import _serialize_notification + +router = APIRouter() + + +@router.post("/users/{username}/friend-request") +@limiter.limit("10/minute", key_func=get_user_id_from_request) +async def send_friend_request(request: Request, username: str, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + addressee = db.query(UserModel).filter(UserModel.username == username).first() + if not addressee: + raise HTTPException(status_code=404, detail="User not found") + if addressee.id == user.id: + raise HTTPException(status_code=400, detail="Cannot send friend request to yourself") + + # Check for any existing friendship in either direction + existing = db.query(FriendshipModel).filter( + ((FriendshipModel.requester_id == user.id) & (FriendshipModel.addressee_id == addressee.id)) | + ((FriendshipModel.requester_id == addressee.id) & (FriendshipModel.addressee_id == user.id)), + ).first() + if existing and existing.status != "declined": + raise HTTPException(status_code=400, detail="Friend request already exists or already friends") + # Clear stale declined row so the unique constraint allows re-requesting + if existing: + db.delete(existing) + db.flush() + + friendship = FriendshipModel(requester_id=user.id, addressee_id=addressee.id, status="pending") + db.add(friendship) + db.flush() # get friendship.id before notification + + notif = NotificationModel( + user_id=addressee.id, + type="friend_request", + payload={"friendship_id": str(friendship.id), "from_username": user.username}, + ) + db.add(notif) + db.commit() + + await notification_manager.send_notification(str(addressee.id), _serialize_notification(notif)) + return {"ok": True} + + +@router.post("/friendships/{friendship_id}/accept") +def accept_friend_request(friendship_id: str, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + friendship = db.query(FriendshipModel).filter(FriendshipModel.id == uuid.UUID(friendship_id)).first() + if not friendship: + raise HTTPException(status_code=404, detail="Friendship not found") + if friendship.addressee_id != user.id: + raise HTTPException(status_code=403, detail="Not authorized") + if friendship.status != "pending": + raise HTTPException(status_code=400, detail="Friendship is not pending") + friendship.status = "accepted" + db.commit() + return {"ok": True} + + +@router.post("/friendships/{friendship_id}/decline") +def decline_friend_request(friendship_id: str, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + friendship = db.query(FriendshipModel).filter(FriendshipModel.id == uuid.UUID(friendship_id)).first() + if not friendship: + raise HTTPException(status_code=404, detail="Friendship not found") + if friendship.addressee_id != user.id: + raise HTTPException(status_code=403, detail="Not authorized") + if friendship.status != "pending": + raise HTTPException(status_code=400, detail="Friendship is not pending") + friendship.status = "declined" + # Clean up the associated notification so it disappears from the bell + db.query(NotificationModel).filter( + NotificationModel.user_id == user.id, + NotificationModel.type == "friend_request", + NotificationModel.payload["friendship_id"].astext == friendship_id, + ).delete(synchronize_session=False) + db.commit() + return {"ok": True} + + +@router.get("/friends") +def get_friends(user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + friendships = db.query(FriendshipModel).options( + joinedload(FriendshipModel.requester), + joinedload(FriendshipModel.addressee), + ).filter( + (FriendshipModel.requester_id == user.id) | (FriendshipModel.addressee_id == user.id), + FriendshipModel.status == "accepted", + ).all() + result = [] + for f in friendships: + other = f.addressee if f.requester_id == user.id else f.requester + result.append({"id": str(other.id), "username": other.username, "friendship_id": str(f.id)}) + return result + + +@router.get("/friendship-status/{username}") +def get_friendship_status(username: str, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + """Returns the friendship status between the current user and the given username.""" + other = db.query(UserModel).filter(UserModel.username == username).first() + if not other: + raise HTTPException(status_code=404, detail="User not found") + friendship = db.query(FriendshipModel).filter( + ((FriendshipModel.requester_id == user.id) & (FriendshipModel.addressee_id == other.id)) | + ((FriendshipModel.requester_id == other.id) & (FriendshipModel.addressee_id == user.id)), + FriendshipModel.status != "declined", + ).first() + if not friendship: + return {"status": "none"} + if friendship.status == "accepted": + return {"status": "friends", "friendship_id": str(friendship.id)} + # pending: distinguish sent vs received + if friendship.requester_id == user.id: + return {"status": "pending_sent", "friendship_id": str(friendship.id)} + return {"status": "pending_received", "friendship_id": str(friendship.id)} + + +@router.delete("/friendships/{friendship_id}") +def remove_friend(friendship_id: str, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + friendship = db.query(FriendshipModel).filter(FriendshipModel.id == uuid.UUID(friendship_id)).first() + if not friendship: + raise HTTPException(status_code=404, detail="Friendship not found") + if friendship.requester_id != user.id and friendship.addressee_id != user.id: + raise HTTPException(status_code=403, detail="Not authorized") + db.delete(friendship) + db.commit() + return {"ok": True} diff --git a/backend/routers/games.py b/backend/routers/games.py new file mode 100644 index 0000000..3324456 --- /dev/null +++ b/backend/routers/games.py @@ -0,0 +1,404 @@ +import asyncio +import uuid +from datetime import datetime, timedelta + +from fastapi import APIRouter, Depends, HTTPException, Request, WebSocket, WebSocketDisconnect +from pydantic import BaseModel +from sqlalchemy import func +from sqlalchemy.orm import Session, joinedload + +from services import notification_manager +from core.auth import decode_access_token +from core.database import get_db +from services.database_functions import fill_card_pool +from core.dependencies import get_current_user, get_user_id_from_request, limiter +from game.manager import ( + QueueEntry, active_games, connections, create_challenge_game, create_solo_game, + handle_action, handle_disconnect, handle_timeout_claim, load_deck_cards, + queue, queue_lock, serialize_state, try_match, +) +from core.models import Card as CardModel +from core.models import Deck as DeckModel +from core.models import DeckCard as DeckCardModel +from core.models import GameChallenge as GameChallengeModel +from core.models import Notification as NotificationModel +from core.models import User as UserModel +from routers.notifications import _serialize_notification + +router = APIRouter() + + +def _serialize_challenge(c: GameChallengeModel, current_user_id: uuid.UUID) -> dict: + deck = c.challenger_deck + return { + "id": str(c.id), + "status": c.status, + "direction": "outgoing" if c.challenger_id == current_user_id else "incoming", + "challenger_username": c.challenger.username, + "challenged_username": c.challenged.username, + "deck_name": deck.name if deck else "Unknown Deck", + "deck_id": str(c.challenger_deck_id), + "created_at": c.created_at.isoformat(), + "expires_at": c.expires_at.isoformat(), + } + + +# ── WebSocket game matchmaking ──────────────────────────────────────────────── + +@router.websocket("/ws/queue") +async def queue_endpoint(websocket: WebSocket, deck_id: str, db: Session = Depends(get_db)): + await websocket.accept() + + token = await websocket.receive_text() + user_id = decode_access_token(token) + if not user_id: + await websocket.close(code=1008) + return + + deck = db.query(DeckModel).filter( + DeckModel.id == uuid.UUID(deck_id), + DeckModel.user_id == uuid.UUID(user_id) + ).first() + + if not deck: + await websocket.send_json({"type": "error", "message": "Deck not found"}) + await websocket.close(code=1008) + return + + card_ids = [dc.card_id for dc in db.query(DeckCardModel).filter(DeckCardModel.deck_id == deck.id).all()] + total_cost = db.query(func.sum(CardModel.cost)).filter(CardModel.id.in_(card_ids)).scalar() or 0 + if total_cost == 0 or total_cost > 50: + await websocket.send_json({"type": "error", "message": "Deck total cost must be between 1 and 50"}) + await websocket.close(code=1008) + return + + entry = QueueEntry(user_id=user_id, deck_id=deck_id, websocket=websocket) + + async with queue_lock: + queue.append(entry) + + await websocket.send_json({"type": "queued"}) + await try_match(db) + + try: + while True: + # Keeping socket alive + await websocket.receive_text() + except WebSocketDisconnect: + async with queue_lock: + queue[:] = [e for e in queue if e.user_id != user_id] + + +@router.websocket("/ws/game/{game_id}") +async def game_endpoint(websocket: WebSocket, game_id: str, db: Session = Depends(get_db)): + await websocket.accept() + + token = await websocket.receive_text() + user_id = decode_access_token(token) + if not user_id: + await websocket.close(code=1008) + return + + if game_id not in active_games: + await websocket.close(code=1008) + return + + if user_id not in active_games[game_id].players: + await websocket.close(code=1008) + return + + # Register this connection (handles reconnects) + connections[game_id][user_id] = websocket + + # Send current state immediately on connect + await websocket.send_json({ + "type": "state", + "state": serialize_state(active_games[game_id], user_id), + }) + + try: + while True: + data = await websocket.receive_json() + await handle_action(game_id, user_id, data, db) + except WebSocketDisconnect: + if game_id in connections: + connections[game_id].pop(user_id, None) + asyncio.create_task(handle_disconnect(game_id, user_id)) + + +# ── Game challenges ─────────────────────────────────────────────────────────── + +class CreateGameChallengeRequest(BaseModel): + deck_id: str + +class AcceptGameChallengeRequest(BaseModel): + deck_id: str + + +@router.post("/users/{username}/challenge") +@limiter.limit("10/minute", key_func=get_user_id_from_request) +async def create_game_challenge( + request: Request, + username: str, + req: CreateGameChallengeRequest, + user: UserModel = Depends(get_current_user), + db: Session = Depends(get_db), +): + target = db.query(UserModel).filter(UserModel.username == username).first() + if not target: + raise HTTPException(status_code=404, detail="User not found") + if target.id == user.id: + raise HTTPException(status_code=400, detail="Cannot challenge yourself") + + try: + deck_id = uuid.UUID(req.deck_id) + except ValueError: + raise HTTPException(status_code=400, detail="Invalid deck_id") + + deck = db.query(DeckModel).filter(DeckModel.id == deck_id, DeckModel.user_id == user.id, DeckModel.deleted == False).first() + if not deck: + raise HTTPException(status_code=404, detail="Deck not found") + + existing = db.query(GameChallengeModel).filter( + GameChallengeModel.status == "pending", + ( + ((GameChallengeModel.challenger_id == user.id) & (GameChallengeModel.challenged_id == target.id)) | + ((GameChallengeModel.challenger_id == target.id) & (GameChallengeModel.challenged_id == user.id)) + ) + ).first() + if existing: + raise HTTPException(status_code=400, detail="A pending challenge already exists between you two") + + now = datetime.now() + challenge = GameChallengeModel( + challenger_id=user.id, + challenged_id=target.id, + challenger_deck_id=deck_id, + expires_at=now + timedelta(minutes=5), + ) + db.add(challenge) + db.flush() + + notif = NotificationModel( + user_id=target.id, + type="game_challenge", + expires_at=challenge.expires_at, + payload={ + "challenge_id": str(challenge.id), + "from_username": user.username, + "deck_name": deck.name, + }, + ) + db.add(notif) + db.commit() + + await notification_manager.send_notification(str(target.id), _serialize_notification(notif)) + return {"challenge_id": str(challenge.id)} + + +@router.post("/challenges/{challenge_id}/accept") +async def accept_game_challenge( + challenge_id: str, + req: AcceptGameChallengeRequest, + user: UserModel = Depends(get_current_user), + db: Session = Depends(get_db), +): + try: + cid = uuid.UUID(challenge_id) + except ValueError: + raise HTTPException(status_code=400, detail="Invalid challenge_id") + + challenge = db.query(GameChallengeModel).filter(GameChallengeModel.id == cid).with_for_update().first() + if not challenge: + raise HTTPException(status_code=404, detail="Challenge not found") + if challenge.challenged_id != user.id: + raise HTTPException(status_code=403, detail="Not authorized") + + now = datetime.now() + if challenge.status == "pending" and now > challenge.expires_at: + challenge.status = "expired" + db.commit() + raise HTTPException(status_code=400, detail="Challenge has expired") + if challenge.status != "pending": + raise HTTPException(status_code=400, detail=f"Challenge is already {challenge.status}") + + try: + deck_id = uuid.UUID(req.deck_id) + except ValueError: + raise HTTPException(status_code=400, detail="Invalid deck_id") + + deck = db.query(DeckModel).filter(DeckModel.id == deck_id, DeckModel.user_id == user.id, DeckModel.deleted == False).first() + if not deck: + raise HTTPException(status_code=404, detail="Deck not found") + + # Verify challenger's deck still exists — it could have been deleted since the challenge was sent + challenger_deck = db.query(DeckModel).filter( + DeckModel.id == challenge.challenger_deck_id, + DeckModel.deleted == False, + ).first() + if not challenger_deck: + raise HTTPException(status_code=400, detail="The challenger's deck no longer exists") + + try: + game_id = create_challenge_game( + str(challenge.challenger_id), str(challenge.challenger_deck_id), + str(challenge.challenged_id), str(deck_id), + db, + ) + except ValueError as e: + raise HTTPException(status_code=400, detail=str(e)) + + challenge.status = "accepted" + + # Delete the original challenge notification from the challenged player's bell + old_notif = db.query(NotificationModel).filter( + NotificationModel.user_id == user.id, + NotificationModel.type == "game_challenge", + NotificationModel.payload["challenge_id"].astext == str(challenge.id), + ).first() + deleted_notif_id = str(old_notif.id) if old_notif else None + if old_notif: + db.delete(old_notif) + + # Notify the challenger that their challenge was accepted + response_notif = NotificationModel( + user_id=challenge.challenger_id, + type="game_challenge", + payload={ + "challenge_id": str(challenge.id), + "status": "accepted", + "game_id": game_id, + "from_username": user.username, + }, + ) + db.add(response_notif) + db.commit() + + if deleted_notif_id: + await notification_manager.send_delete(str(user.id), deleted_notif_id) + await notification_manager.send_notification(str(challenge.challenger_id), _serialize_notification(response_notif)) + + return {"game_id": game_id} + + +@router.post("/challenges/{challenge_id}/decline") +async def decline_game_challenge( + challenge_id: str, + user: UserModel = Depends(get_current_user), + db: Session = Depends(get_db), +): + try: + cid = uuid.UUID(challenge_id) + except ValueError: + raise HTTPException(status_code=400, detail="Invalid challenge_id") + + challenge = db.query(GameChallengeModel).filter(GameChallengeModel.id == cid).first() + if not challenge: + raise HTTPException(status_code=404, detail="Challenge not found") + if challenge.challenger_id != user.id and challenge.challenged_id != user.id: + raise HTTPException(status_code=403, detail="Not authorized") + + now = datetime.now() + if challenge.status == "pending" and now > challenge.expires_at: + challenge.status = "expired" + db.commit() + raise HTTPException(status_code=400, detail="Challenge has already expired") + if challenge.status != "pending": + raise HTTPException(status_code=400, detail=f"Challenge is already {challenge.status}") + + is_withdrawal = challenge.challenger_id == user.id + challenge.status = "withdrawn" if is_withdrawal else "declined" + + # Remove the notification from the other party's bell + if is_withdrawal: + # Challenger withdrawing: remove challenge notif from challenged player's bell + notif = db.query(NotificationModel).filter( + NotificationModel.user_id == challenge.challenged_id, + NotificationModel.type == "game_challenge", + NotificationModel.payload["challenge_id"].astext == str(challenge.id), + ).first() + recipient_id = str(challenge.challenged_id) + else: + # Challenged player declining: remove challenge notif from their own bell + notif = db.query(NotificationModel).filter( + NotificationModel.user_id == user.id, + NotificationModel.type == "game_challenge", + NotificationModel.payload["challenge_id"].astext == str(challenge.id), + ).first() + recipient_id = str(user.id) + + deleted_notif_id = str(notif.id) if notif else None + if notif: + db.delete(notif) + db.commit() + + if deleted_notif_id: + await notification_manager.send_delete(recipient_id, deleted_notif_id) + + return {"ok": True} + + +@router.get("/challenges") +def get_challenges(user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + now = datetime.now() + # Lazy-expire pending challenges past deadline + db.query(GameChallengeModel).filter( + GameChallengeModel.status == "pending", + GameChallengeModel.expires_at < now, + (GameChallengeModel.challenger_id == user.id) | (GameChallengeModel.challenged_id == user.id), + ).update({"status": "expired"}) + db.commit() + + challenges = db.query(GameChallengeModel).options( + joinedload(GameChallengeModel.challenger_deck) + ).filter( + (GameChallengeModel.challenger_id == user.id) | (GameChallengeModel.challenged_id == user.id) + ).order_by(GameChallengeModel.created_at.desc()).all() + + return [_serialize_challenge(c, user.id) for c in challenges] + + +@router.post("/game/{game_id}/claim-timeout-win") +async def claim_timeout_win(game_id: str, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + err = await handle_timeout_claim(game_id, str(user.id), db) + if err: + raise HTTPException(status_code=400, detail=err) + return {"message": "Win claimed"} + + +@router.post("/game/solo") +async def start_solo_game(deck_id: str, difficulty: int = 5, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + if difficulty < 1 or difficulty > 10: + raise HTTPException(status_code=400, detail="Difficulty must be between 1 and 10") + + deck = db.query(DeckModel).filter( + DeckModel.id == uuid.UUID(deck_id), + DeckModel.user_id == user.id + ).first() + if not deck: + raise HTTPException(status_code=404, detail="Deck not found") + + card_ids = [dc.card_id for dc in db.query(DeckCardModel).filter(DeckCardModel.deck_id == deck.id).all()] + total_cost = db.query(func.sum(CardModel.cost)).filter(CardModel.id.in_(card_ids)).scalar() or 0 + if total_cost == 0 or total_cost > 50: + raise HTTPException(status_code=400, detail="Deck total cost must be between 1 and 50") + + player_cards = load_deck_cards(deck_id, str(user.id), db) + if player_cards is None: + raise HTTPException(status_code=503, detail="Couldn't load deck") + + ai_cards = db.query(CardModel).filter( + CardModel.user_id == None, + ).order_by(func.random()).limit(500).all() + + if len(ai_cards) == 0: + raise HTTPException(status_code=503, detail="Not enough cards in pool for AI deck") + + for card in ai_cards: + card.ai_used = True + db.commit() + + game_id = create_solo_game(str(user.id), user.username, player_cards, ai_cards, deck_id, difficulty) + asyncio.create_task(fill_card_pool()) + + return {"game_id": game_id} diff --git a/backend/routers/health.py b/backend/routers/health.py new file mode 100644 index 0000000..efb8089 --- /dev/null +++ b/backend/routers/health.py @@ -0,0 +1,17 @@ +from fastapi import APIRouter, Depends +from fastapi.responses import JSONResponse +from sqlalchemy.orm import Session +from sqlalchemy import text +from core.database import get_db + +router = APIRouter() + +@router.get("/health") +def health_check(db: Session = Depends(get_db)): + # Validates that the DB is reachable, not just that the process is up + db.execute(text("SELECT 1")) + return {"status": "ok"} + +@router.get("/teapot") +def teapot(): + return JSONResponse(status_code=418, content={"message": "I'm a teapot"}) diff --git a/backend/routers/notifications.py b/backend/routers/notifications.py new file mode 100644 index 0000000..30788fd --- /dev/null +++ b/backend/routers/notifications.py @@ -0,0 +1,115 @@ +import uuid +from datetime import datetime + +from fastapi import APIRouter, Depends, HTTPException, WebSocket, WebSocketDisconnect +from sqlalchemy.orm import Session + +from services import notification_manager +from core.auth import decode_access_token +from core.database import get_db +from core.dependencies import get_current_user +from core.models import Notification as NotificationModel +from core.models import User as UserModel + +router = APIRouter() + + +def _serialize_notification(n: NotificationModel) -> dict: + return { + "id": str(n.id), + "type": n.type, + "payload": n.payload, + "read": n.read, + "created_at": n.created_at.isoformat(), + "expires_at": n.expires_at.isoformat() if n.expires_at else None, + } + + +@router.websocket("/ws/notifications") +async def notifications_endpoint(websocket: WebSocket, db: Session = Depends(get_db)): + await websocket.accept() + + token = await websocket.receive_text() + user_id = decode_access_token(token) + if not user_id: + await websocket.close(code=1008) + return + + user = db.query(UserModel).filter(UserModel.id == uuid.UUID(user_id)).first() + if not user: + await websocket.close(code=1008) + return + + notification_manager.register(user_id, websocket) + + # Flush all unread (non-expired) notifications on connect + now = datetime.now() + pending = ( + db.query(NotificationModel) + .filter( + NotificationModel.user_id == uuid.UUID(user_id), + NotificationModel.read == False, + (NotificationModel.expires_at == None) | (NotificationModel.expires_at > now), + ) + .order_by(NotificationModel.created_at.asc()) + .all() + ) + await websocket.send_json({ + "type": "flush", + "notifications": [_serialize_notification(n) for n in pending], + }) + + try: + while True: + await websocket.receive_text() # keep connection alive; server only pushes + except WebSocketDisconnect: + notification_manager.unregister(user_id) + + +@router.get("/notifications") +def get_notifications(user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + now = datetime.now() + notifications = ( + db.query(NotificationModel) + .filter( + NotificationModel.user_id == user.id, + (NotificationModel.expires_at == None) | (NotificationModel.expires_at > now), + ) + .order_by(NotificationModel.created_at.desc()) + .all() + ) + return [_serialize_notification(n) for n in notifications] + + +@router.post("/notifications/{notification_id}/read") +def mark_notification_read( + notification_id: str, + user: UserModel = Depends(get_current_user), + db: Session = Depends(get_db), +): + n = db.query(NotificationModel).filter( + NotificationModel.id == uuid.UUID(notification_id), + NotificationModel.user_id == user.id, + ).first() + if not n: + raise HTTPException(status_code=404, detail="Notification not found") + n.read = True + db.commit() + return {"ok": True} + + +@router.delete("/notifications/{notification_id}") +def delete_notification( + notification_id: str, + user: UserModel = Depends(get_current_user), + db: Session = Depends(get_db), +): + n = db.query(NotificationModel).filter( + NotificationModel.id == uuid.UUID(notification_id), + NotificationModel.user_id == user.id, + ).first() + if not n: + raise HTTPException(status_code=404, detail="Notification not found") + db.delete(n) + db.commit() + return {"ok": True} diff --git a/backend/routers/profile.py b/backend/routers/profile.py new file mode 100644 index 0000000..e6119f8 --- /dev/null +++ b/backend/routers/profile.py @@ -0,0 +1,147 @@ +from datetime import datetime, timedelta + +from fastapi import APIRouter, Depends, HTTPException +from pydantic import BaseModel +from sqlalchemy.orm import Session + +from core.database import get_db +from core.dependencies import get_current_user +from core.models import Card as CardModel +from core.models import Deck as DeckModel +from core.models import User as UserModel + +router = APIRouter() + + +def _serialize_card_public(card: CardModel) -> dict: + """Card fields safe to expose on public profiles (no user_id).""" + return { + "id": str(card.id), + "name": card.name, + "image_link": card.image_link, + "card_rarity": card.card_rarity, + "card_type": card.card_type, + "text": card.text, + "attack": card.attack, + "defense": card.defense, + "cost": card.cost, + "is_favorite": card.is_favorite, + "willing_to_trade": card.willing_to_trade, + } + + +class UpdateProfileRequest(BaseModel): + trade_wishlist: str + + +@router.get("/profile") +def get_profile(user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + total_games = user.wins + user.losses + + most_played_deck = ( + db.query(DeckModel) + .filter(DeckModel.user_id == user.id, DeckModel.times_played > 0) + .order_by(DeckModel.times_played.desc()) + .first() + ) + + most_played_card = ( + db.query(CardModel) + .filter(CardModel.user_id == user.id, CardModel.times_played > 0) + .order_by(CardModel.times_played.desc()) + .first() + ) + + return { + "username": user.username, + "email": user.email, + "email_verified": user.email_verified, + "created_at": user.created_at, + "wins": user.wins, + "losses": user.losses, + "shards": user.shards, + "win_rate": round((user.wins / total_games) * 100) if total_games > 0 else None, + "trade_wishlist": user.trade_wishlist or "", + "most_played_deck": { + "name": most_played_deck.name, + "times_played": most_played_deck.times_played, + } if most_played_deck else None, + "most_played_card": { + "name": most_played_card.name, + "times_played": most_played_card.times_played, + "card_type": most_played_card.card_type, + "card_rarity": most_played_card.card_rarity, + "image_link": most_played_card.image_link, + } if most_played_card else None, + } + + +@router.get("/profile/refresh-status") +def refresh_status(user: UserModel = Depends(get_current_user)): + if not user.last_refresh_at: + return {"can_refresh": True, "next_refresh_at": None} + next_refresh = user.last_refresh_at + timedelta(minutes=10) + can_refresh = datetime.now() >= next_refresh + return { + "can_refresh": can_refresh, + "next_refresh_at": next_refresh.isoformat() if not can_refresh else None, + } + + +@router.patch("/profile") +def update_profile(req: UpdateProfileRequest, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + user.trade_wishlist = req.trade_wishlist + db.commit() + return {"trade_wishlist": user.trade_wishlist} + + +@router.get("/users") +def search_users(q: str, current_user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + # Require auth to prevent scraping + if len(q) < 2: + return [] + results = ( + db.query(UserModel) + .filter(UserModel.username.ilike(f"%{q}%")) + .limit(20) + .all() + ) + return [ + { + "username": u.username, + "wins": u.wins, + "losses": u.losses, + "win_rate": round(u.wins / (u.wins + u.losses) * 100) if (u.wins + u.losses) > 0 else 0, + } + for u in results + ] + + +@router.get("/users/{username}") +def get_public_profile(username: str, db: Session = Depends(get_db)): + user = db.query(UserModel).filter(UserModel.username == username).first() + if not user: + raise HTTPException(status_code=404, detail="User not found") + total_games = user.wins + user.losses + favorite_cards = ( + db.query(CardModel) + .filter(CardModel.user_id == user.id, CardModel.is_favorite == True) + .order_by(CardModel.received_at.desc()) + .all() + ) + wtt_cards = ( + db.query(CardModel) + .filter(CardModel.user_id == user.id, CardModel.willing_to_trade == True) + .order_by(CardModel.received_at.desc()) + .all() + ) + return { + "username": user.username, + "wins": user.wins, + "losses": user.losses, + "win_rate": round((user.wins / total_games) * 100) if total_games > 0 else None, + "trade_wishlist": user.trade_wishlist or "", + "last_active_at": user.last_active_at.isoformat() if user.last_active_at else None, + "favorite_cards": [_serialize_card_public(c) for c in favorite_cards], + "wtt_cards": [_serialize_card_public(c) for c in wtt_cards], + } diff --git a/backend/routers/store.py b/backend/routers/store.py new file mode 100644 index 0000000..08b6938 --- /dev/null +++ b/backend/routers/store.py @@ -0,0 +1,189 @@ +import uuid +from datetime import datetime + +import stripe +from fastapi import APIRouter, Depends, HTTPException, Request +from pydantic import BaseModel +from sqlalchemy.exc import IntegrityError +from sqlalchemy.orm import Session + +from game.card import _get_specific_card_async +from core.config import FRONTEND_URL, STRIPE_PUBLISHABLE_KEY, STRIPE_WEBHOOK_SECRET +from core.database import get_db +from core.dependencies import get_current_user, limiter +from core.models import Card as CardModel +from core.models import ProcessedWebhookEvent +from core.models import User as UserModel + +router = APIRouter() + +# Shard packages sold for real money. +# price_oere is in Danish øre (1 DKK = 100 øre). Stripe minimum is 250 øre. +SHARD_PACKAGES = { + "s1": {"base": 100, "bonus": 0, "shards": 100, "price_oere": 1000, "price_label": "10 DKK"}, + "s2": {"base": 250, "bonus": 50, "shards": 300, "price_oere": 2500, "price_label": "25 DKK"}, + "s3": {"base": 500, "bonus": 200, "shards": 700, "price_oere": 5000, "price_label": "50 DKK"}, + "s4": {"base": 1000, "bonus": 600, "shards": 1600, "price_oere": 10000, "price_label": "100 DKK"}, + "s5": {"base": 2500, "bonus": 2000, "shards": 4500, "price_oere": 25000, "price_label": "250 DKK"}, + "s6": {"base": 5000, "bonus": 5000, "shards": 10000, "price_oere": 50000, "price_label": "500 DKK"}, +} + +STORE_PACKAGES = { + 1: 15, + 5: 65, + 10: 120, + 25: 260, +} + +SPECIFIC_CARD_COST = 1000 + + +class ShatterRequest(BaseModel): + card_ids: list[str] + +class StripeCheckoutRequest(BaseModel): + package_id: str + +class StoreBuyRequest(BaseModel): + quantity: int + +class BuySpecificCardRequest(BaseModel): + wiki_title: str + + +@router.post("/shards/shatter") +def shatter_cards(req: ShatterRequest, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + if not req.card_ids: + raise HTTPException(status_code=400, detail="No cards selected") + try: + parsed_ids = [uuid.UUID(cid) for cid in req.card_ids] + except ValueError: + raise HTTPException(status_code=400, detail="Invalid card IDs") + + cards = db.query(CardModel).filter( + CardModel.id.in_(parsed_ids), + CardModel.user_id == user.id, + ).all() + + if len(cards) != len(parsed_ids): + raise HTTPException(status_code=400, detail="Some cards are not in your collection") + + total = sum(c.cost for c in cards) + + for card in cards: + db.delete(card) + + user.shards += total + db.commit() + return {"shards": user.shards, "gained": total} + + +@router.post("/store/stripe/checkout") +def create_stripe_checkout(req: StripeCheckoutRequest, user: UserModel = Depends(get_current_user)): + package = SHARD_PACKAGES.get(req.package_id) + if not package: + raise HTTPException(status_code=400, detail="Invalid package") + session = stripe.checkout.Session.create( + payment_method_types=["card"], + line_items=[{ + "price_data": { + "currency": "dkk", + "product_data": {"name": f"WikiTCG Shards — {package['price_label']}"}, + "unit_amount": package["price_oere"], + }, + "quantity": 1, + }], + mode="payment", + success_url=f"{FRONTEND_URL}/store?payment=success", + cancel_url=f"{FRONTEND_URL}/store", + metadata={"user_id": str(user.id), "shards": str(package["shards"])}, + ) + return {"url": session.url} + + +@router.post("/stripe/webhook") +async def stripe_webhook(request: Request, db: Session = Depends(get_db)): + payload = await request.body() + sig = request.headers.get("stripe-signature", "") + try: + event = stripe.Webhook.construct_event(payload, sig, STRIPE_WEBHOOK_SECRET) + except stripe.error.SignatureVerificationError: # type: ignore + raise HTTPException(status_code=400, detail="Invalid signature") + + # Guard against duplicate delivery: Stripe retries on timeout/5xx, so the same + # event can arrive more than once. The PK constraint on stripe_event_id is the + # arbiter — if the INSERT fails, we've already processed this event. + try: + db.add(ProcessedWebhookEvent(stripe_event_id=event["id"])) + db.flush() + except IntegrityError: + db.rollback() + return {"ok": True} + + if event["type"] == "checkout.session.completed": + data = event["data"]["object"] + user_id = data.get("metadata", {}).get("user_id") + shards = data.get("metadata", {}).get("shards") + if user_id and shards: + user = db.query(UserModel).filter(UserModel.id == uuid.UUID(user_id)).first() + if user: + user.shards += int(shards) + + db.commit() + return {"ok": True} + + +@router.get("/store/config") +def store_config(): + return { + "publishable_key": STRIPE_PUBLISHABLE_KEY, + "shard_packages": SHARD_PACKAGES, + } + + +@router.post("/store/buy-specific-card") +@limiter.limit("10/hour") +async def buy_specific_card(request: Request, req: BuySpecificCardRequest, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + if user.shards < SPECIFIC_CARD_COST: + raise HTTPException(status_code=400, detail="Not enough shards") + + card = await _get_specific_card_async(req.wiki_title) + if card is None: + raise HTTPException(status_code=404, detail="Could not generate a card for that Wikipedia page") + + db_card = CardModel( + name=card.name, + image_link=card.image_link, + card_rarity=card.card_rarity.name, + card_type=card.card_type.name, + text=card.text, + attack=card.attack, + defense=card.defense, + cost=card.cost, + user_id=user.id, + received_at=datetime.now(), + ) + db.add(db_card) + user.shards -= SPECIFIC_CARD_COST + db.commit() + db.refresh(db_card) + + return { + **{c.name: getattr(db_card, c.name) for c in db_card.__table__.columns}, + "card_rarity": db_card.card_rarity, + "card_type": db_card.card_type, + "shards": user.shards, + } + + +@router.post("/store/buy") +def store_buy(req: StoreBuyRequest, user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + cost = STORE_PACKAGES.get(req.quantity) + if cost is None: + raise HTTPException(status_code=400, detail="Invalid package") + if user.shards < cost: + raise HTTPException(status_code=400, detail="Not enough shards") + user.shards -= cost + user.boosters += req.quantity + db.commit() + return {"shards": user.shards, "boosters": user.boosters} diff --git a/backend/routers/trades.py b/backend/routers/trades.py new file mode 100644 index 0000000..7f2a1f6 --- /dev/null +++ b/backend/routers/trades.py @@ -0,0 +1,411 @@ +import uuid +from datetime import datetime, timedelta + +from fastapi import APIRouter, Depends, HTTPException, Request, WebSocket, WebSocketDisconnect +from pydantic import BaseModel +from sqlalchemy.orm import Session + +from services import notification_manager +from core.auth import decode_access_token +from core.database import get_db +from core.dependencies import get_current_user, get_user_id_from_request, limiter +from core.models import Card as CardModel +from core.models import Notification as NotificationModel +from core.models import TradeProposal as TradeProposalModel +from core.models import User as UserModel +from routers.notifications import _serialize_notification +from services.trade_manager import ( + TradeQueueEntry, active_trades, handle_trade_action, + handle_trade_disconnect, serialize_trade, trade_queue, trade_queue_lock, try_trade_match, +) +from services.trade_manager import transfer_cards + +router = APIRouter() + + +def _fetch_cards_for_ids(id_strings: list, db: Session) -> list: + """Fetch CardModel rows for a JSONB list of UUID strings, preserving nothing if list is empty.""" + if not id_strings: + return [] + uuids = [uuid.UUID(cid) for cid in id_strings] + return db.query(CardModel).filter(CardModel.id.in_(uuids)).all() + + +def _serialize_proposal(p: TradeProposalModel, current_user_id: uuid.UUID, card_map: dict) -> dict: + offered_cards = [card_map[cid] for cid in p.offered_card_ids if cid in card_map] + requested_cards = [card_map[cid] for cid in p.requested_card_ids if cid in card_map] + def card_summary(c: CardModel) -> dict: + return { + "id": str(c.id), + "name": c.name, + "card_rarity": c.card_rarity, + "card_type": c.card_type, + "image_link": c.image_link, + "cost": c.cost, + "text": c.text, + "attack": c.attack, + "defense": c.defense, + "generated_at": c.generated_at.isoformat() if c.generated_at else None, + } + return { + "id": str(p.id), + "status": p.status, + "direction": "outgoing" if p.proposer_id == current_user_id else "incoming", + "proposer_username": p.proposer.username, + "recipient_username": p.recipient.username, + "offered_cards": [card_summary(c) for c in offered_cards], + "requested_cards": [card_summary(c) for c in requested_cards], + "created_at": p.created_at.isoformat(), + "expires_at": p.expires_at.isoformat(), + } + + +# ── WebSocket trade matchmaking ─────────────────────────────────────────────── + +@router.websocket("/ws/trade/queue") +async def trade_queue_endpoint(websocket: WebSocket, db: Session = Depends(get_db)): + await websocket.accept() + + token = await websocket.receive_text() + user_id = decode_access_token(token) + if not user_id: + await websocket.close(code=1008) + return + + user = db.query(UserModel).filter(UserModel.id == uuid.UUID(user_id)).first() + if not user: + await websocket.close(code=1008) + return + if not user.email_verified: + await websocket.send_json({"type": "error", "message": "You must verify your email before trading."}) + await websocket.close(code=1008) + return + + entry = TradeQueueEntry(user_id=user_id, username=user.username, websocket=websocket) + + async with trade_queue_lock: + trade_queue.append(entry) + + await websocket.send_json({"type": "queued"}) + await try_trade_match() + + try: + while True: + await websocket.receive_text() + except WebSocketDisconnect: + async with trade_queue_lock: + trade_queue[:] = [e for e in trade_queue if e.user_id != user_id] + + +@router.websocket("/ws/trade/{trade_id}") +async def trade_endpoint(websocket: WebSocket, trade_id: str, db: Session = Depends(get_db)): + await websocket.accept() + + token = await websocket.receive_text() + user_id = decode_access_token(token) + if not user_id: + await websocket.close(code=1008) + return + + session = active_trades.get(trade_id) + if not session or user_id not in session.offers: + await websocket.close(code=1008) + return + + session.connections[user_id] = websocket + + await websocket.send_json({ + "type": "state", + "state": serialize_trade(session, user_id), + }) + + try: + while True: + data = await websocket.receive_json() + await handle_trade_action(trade_id, user_id, data, db) + except WebSocketDisconnect: + session.connections.pop(user_id, None) + import asyncio + asyncio.create_task(handle_trade_disconnect(trade_id, user_id)) + + +# ── Trade proposals ─────────────────────────────────────────────────────────── + +class CreateTradeProposalRequest(BaseModel): + recipient_username: str + offered_card_ids: list[str] + requested_card_ids: list[str] + + +@router.post("/trade-proposals") +@limiter.limit("10/minute", key_func=get_user_id_from_request) +async def create_trade_proposal( + request: Request, + req: CreateTradeProposalRequest, + user: UserModel = Depends(get_current_user), + db: Session = Depends(get_db), +): + # Parse UUIDs early so we give a clear error if malformed + try: + offered_uuids = [uuid.UUID(cid) for cid in req.offered_card_ids] + requested_uuids = [uuid.UUID(cid) for cid in req.requested_card_ids] + except ValueError: + raise HTTPException(status_code=400, detail="Invalid card IDs") + + recipient = db.query(UserModel).filter(UserModel.username == req.recipient_username).first() + if not recipient: + raise HTTPException(status_code=404, detail="User not found") + if recipient.id == user.id: + raise HTTPException(status_code=400, detail="Cannot propose a trade with yourself") + if not offered_uuids and not requested_uuids: + raise HTTPException(status_code=400, detail="At least one side must include cards") + + # Verify proposer owns all offered cards + if offered_uuids: + owned_count = db.query(CardModel).filter( + CardModel.id.in_(offered_uuids), + CardModel.user_id == user.id, + ).count() + if owned_count != len(offered_uuids): + raise HTTPException(status_code=400, detail="Some offered cards are not in your collection") + + # Verify all requested cards belong to recipient and are marked WTT + if requested_uuids: + wtt_count = db.query(CardModel).filter( + CardModel.id.in_(requested_uuids), + CardModel.user_id == recipient.id, + CardModel.willing_to_trade == True, + ).count() + if wtt_count != len(requested_uuids): + raise HTTPException(status_code=400, detail="Some requested cards are not available for trade") + + # One pending proposal per direction between two users prevents spam + duplicate = db.query(TradeProposalModel).filter( + TradeProposalModel.proposer_id == user.id, + TradeProposalModel.recipient_id == recipient.id, + TradeProposalModel.status == "pending", + ).first() + if duplicate: + raise HTTPException(status_code=400, detail="You already have a pending proposal with this user") + + now = datetime.now() + proposal = TradeProposalModel( + proposer_id=user.id, + recipient_id=recipient.id, + offered_card_ids=[str(cid) for cid in offered_uuids], + requested_card_ids=[str(cid) for cid in requested_uuids], + expires_at=now + timedelta(hours=72), + ) + db.add(proposal) + db.flush() # get proposal.id before notification + + notif = NotificationModel( + user_id=recipient.id, + type="trade_offer", + payload={ + "proposal_id": str(proposal.id), + "from_username": user.username, + "offered_count": len(offered_uuids), + "requested_count": len(requested_uuids), + }, + expires_at=proposal.expires_at, + ) + db.add(notif) + db.commit() + await notification_manager.send_notification(str(recipient.id), _serialize_notification(notif)) + return {"proposal_id": str(proposal.id)} + + +@router.get("/trade-proposals/{proposal_id}") +def get_trade_proposal( + proposal_id: str, + user: UserModel = Depends(get_current_user), + db: Session = Depends(get_db), +): + try: + pid = uuid.UUID(proposal_id) + except ValueError: + raise HTTPException(status_code=400, detail="Invalid proposal ID") + proposal = db.query(TradeProposalModel).filter(TradeProposalModel.id == pid).first() + if not proposal: + raise HTTPException(status_code=404, detail="Proposal not found") + if proposal.proposer_id != user.id and proposal.recipient_id != user.id: + raise HTTPException(status_code=403, detail="Not authorized") + # Lazy-expire before returning so the UI always sees accurate status + if proposal.status == "pending" and datetime.now() > proposal.expires_at: + proposal.status = "expired" + db.commit() + all_ids = set(proposal.offered_card_ids + proposal.requested_card_ids) + card_map = {str(c.id): c for c in _fetch_cards_for_ids(list(all_ids), db)} + return _serialize_proposal(proposal, user.id, card_map) + + +@router.post("/trade-proposals/{proposal_id}/accept") +async def accept_trade_proposal( + proposal_id: str, + user: UserModel = Depends(get_current_user), + db: Session = Depends(get_db), +): + proposal = db.query(TradeProposalModel).filter(TradeProposalModel.id == uuid.UUID(proposal_id)).with_for_update().first() + if not proposal: + raise HTTPException(status_code=404, detail="Proposal not found") + if proposal.recipient_id != user.id: + raise HTTPException(status_code=403, detail="Only the recipient can accept a proposal") + if proposal.status != "pending": + raise HTTPException(status_code=400, detail=f"Proposal is already {proposal.status}") + + now = datetime.now() + if now > proposal.expires_at: + proposal.status = "expired" + db.commit() + raise HTTPException(status_code=400, detail="This trade proposal has expired") + + offered_uuids = [uuid.UUID(cid) for cid in proposal.offered_card_ids] + requested_uuids = [uuid.UUID(cid) for cid in proposal.requested_card_ids] + + # Re-verify proposer still owns all offered cards at accept time + if offered_uuids: + owned_count = db.query(CardModel).filter( + CardModel.id.in_(offered_uuids), + CardModel.user_id == proposal.proposer_id, + ).count() + if owned_count != len(offered_uuids): + proposal.status = "expired" + db.commit() + raise HTTPException(status_code=400, detail="The proposer no longer owns all offered cards") + + # Re-verify all requested cards still belong to recipient and are still WTT + if requested_uuids: + wtt_count = db.query(CardModel).filter( + CardModel.id.in_(requested_uuids), + CardModel.user_id == user.id, + CardModel.willing_to_trade == True, + ).count() + if wtt_count != len(requested_uuids): + raise HTTPException(status_code=400, detail="Some requested cards are no longer available for trade") + + # Execute both sides of the transfer atomically + transfer_cards(proposal.proposer_id, user.id, offered_uuids, db, now) + transfer_cards(user.id, proposal.proposer_id, requested_uuids, db, now) + + proposal.status = "accepted" + + # Clean up the trade_offer notification from the recipient's bell + deleted_notif = db.query(NotificationModel).filter( + NotificationModel.user_id == proposal.recipient_id, + NotificationModel.type == "trade_offer", + NotificationModel.payload["proposal_id"].astext == proposal_id, + ).first() + deleted_notif_id = str(deleted_notif.id) if deleted_notif else None + if deleted_notif: + db.delete(deleted_notif) + + # Notify the proposer that their offer was accepted + response_notif = NotificationModel( + user_id=proposal.proposer_id, + type="trade_response", + payload={ + "proposal_id": proposal_id, + "status": "accepted", + "from_username": user.username, + }, + ) + db.add(response_notif) + + # Withdraw any other pending proposals that involve cards that just changed hands. + # Both sides are now non-tradeable: offered cards left the proposer, requested cards left the recipient. + transferred_strs = {str(c) for c in offered_uuids + requested_uuids} + if transferred_strs: + for p in db.query(TradeProposalModel).filter( + TradeProposalModel.status == "pending", + TradeProposalModel.id != proposal.id, + ( + (TradeProposalModel.proposer_id == proposal.proposer_id) | + (TradeProposalModel.proposer_id == proposal.recipient_id) | + (TradeProposalModel.recipient_id == proposal.proposer_id) | + (TradeProposalModel.recipient_id == proposal.recipient_id) + ), + ).all(): + if set(p.offered_card_ids) & transferred_strs or set(p.requested_card_ids) & transferred_strs: + p.status = "withdrawn" + + db.commit() + + if deleted_notif_id: + await notification_manager.send_delete(str(proposal.recipient_id), deleted_notif_id) + await notification_manager.send_notification(str(proposal.proposer_id), _serialize_notification(response_notif)) + + return {"ok": True} + + +@router.post("/trade-proposals/{proposal_id}/decline") +async def decline_trade_proposal( + proposal_id: str, + user: UserModel = Depends(get_current_user), + db: Session = Depends(get_db), +): + proposal = db.query(TradeProposalModel).filter(TradeProposalModel.id == uuid.UUID(proposal_id)).first() + if not proposal: + raise HTTPException(status_code=404, detail="Proposal not found") + if proposal.proposer_id != user.id and proposal.recipient_id != user.id: + raise HTTPException(status_code=403, detail="Not authorized") + if proposal.status != "pending": + raise HTTPException(status_code=400, detail=f"Proposal is already {proposal.status}") + + is_withdrawal = proposal.proposer_id == user.id + proposal.status = "withdrawn" if is_withdrawal else "declined" + + # Clean up the trade_offer notification from the recipient's bell + deleted_notif = db.query(NotificationModel).filter( + NotificationModel.user_id == proposal.recipient_id, + NotificationModel.type == "trade_offer", + NotificationModel.payload["proposal_id"].astext == proposal_id, + ).first() + deleted_notif_id = str(deleted_notif.id) if deleted_notif else None + if deleted_notif: + db.delete(deleted_notif) + + # Notify the proposer if the recipient declined (not a withdrawal) + response_notif = None + if not is_withdrawal: + response_notif = NotificationModel( + user_id=proposal.proposer_id, + type="trade_response", + payload={ + "proposal_id": proposal_id, + "status": "declined", + "from_username": user.username, + }, + ) + db.add(response_notif) + + db.commit() + + if deleted_notif_id: + await notification_manager.send_delete(str(proposal.recipient_id), deleted_notif_id) + if response_notif: + await notification_manager.send_notification(str(proposal.proposer_id), _serialize_notification(response_notif)) + + return {"ok": True} + + +@router.get("/trade-proposals") +def get_trade_proposals(user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): + # Lazy-expire any pending proposals that have passed their deadline + now = datetime.now() + db.query(TradeProposalModel).filter( + TradeProposalModel.status == "pending", + TradeProposalModel.expires_at < now, + (TradeProposalModel.proposer_id == user.id) | (TradeProposalModel.recipient_id == user.id), + ).update({"status": "expired"}) + db.commit() + + proposals = db.query(TradeProposalModel).filter( + (TradeProposalModel.proposer_id == user.id) | (TradeProposalModel.recipient_id == user.id) + ).order_by(TradeProposalModel.created_at.desc()).all() + + # Batch-fetch all cards referenced across all proposals in one query + all_ids = {cid for p in proposals for cid in p.offered_card_ids + p.requested_card_ids} + card_map = {str(c.id): c for c in _fetch_cards_for_ids(list(all_ids), db)} + + return [_serialize_proposal(p, user.id, card_map) for p in proposals] diff --git a/backend/services/__init__.py b/backend/services/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/backend/services/database_functions.py b/backend/services/database_functions.py new file mode 100644 index 0000000..45369ec --- /dev/null +++ b/backend/services/database_functions.py @@ -0,0 +1,161 @@ +import asyncio +import logging +from datetime import datetime, timedelta + +from sqlalchemy import delete, insert +from sqlalchemy.orm import Session + +from game.card import _get_cards_async +from core.models import Card as CardModel +from core.models import GameChallenge as GameChallengeModel +from core.models import Notification as NotificationModel +from core.models import TradeProposal as TradeProposalModel +from core.models import User as UserModel +from core.database import SessionLocal + +logger = logging.getLogger("app") + +## Card pool management + +POOL_MINIMUM = 1000 +POOL_TARGET = 2000 +POOL_BATCH_SIZE = 10 +POOL_SLEEP = 4.0 +# After this many consecutive empty batches, stop trying and wait for the cooldown. +POOL_MAX_CONSECUTIVE_EMPTY = 5 +POOL_CIRCUIT_BREAKER_COOLDOWN = 600.0 # seconds + +pool_filling = False +# asyncio monotonic timestamp; 0 means breaker is closed (no cooldown active) +_cb_open_until: float = 0.0 + +async def fill_card_pool(): + global pool_filling, _cb_open_until + + if pool_filling: + logger.info("Pool fill already in progress, skipping") + return + + loop_time = asyncio.get_event_loop().time() + if loop_time < _cb_open_until: + remaining = int(_cb_open_until - loop_time) + logger.warning(f"Card generation circuit breaker open, skipping fill ({remaining}s remaining)") + return + + pool_filling = True + db: Session = SessionLocal() + try: + unassigned = db.query(CardModel).filter(CardModel.user_id == None, CardModel.ai_used == False).count() + logger.info(f"Card pool has {unassigned} unassigned cards") + if unassigned >= POOL_MINIMUM: + logger.info("Pool sufficiently stocked, skipping fill") + return + + needed = POOL_TARGET - unassigned + logger.info(f"Filling pool with {needed} cards") + + fetched = 0 + consecutive_empty = 0 + while fetched < needed: + batch_size = min(POOL_BATCH_SIZE, needed - fetched) + cards = await _get_cards_async(batch_size) + + if not cards: + consecutive_empty += 1 + logger.warning( + f"Card generation batch returned 0 cards " + f"({consecutive_empty}/{POOL_MAX_CONSECUTIVE_EMPTY} consecutive empty batches)" + ) + if consecutive_empty >= POOL_MAX_CONSECUTIVE_EMPTY: + _cb_open_until = asyncio.get_event_loop().time() + POOL_CIRCUIT_BREAKER_COOLDOWN + logger.error( + f"ALERT: Card generation circuit breaker tripped — {consecutive_empty} consecutive " + f"empty batches. Wikipedia/Wikirank API may be down. " + f"Next retry in {int(POOL_CIRCUIT_BREAKER_COOLDOWN)}s." + ) + return + await asyncio.sleep(POOL_SLEEP) + continue + + consecutive_empty = 0 + db.execute(insert(CardModel).values([ + dict( + name=card.name, + image_link=card.image_link, + card_rarity=card.card_rarity.name, + card_type=card.card_type.name, + text=card.text, + attack=card.attack, + defense=card.defense, + cost=card.cost, + user_id=None, + ) + for card in cards + ])) + db.commit() + fetched += len(cards) + logger.info(f"Pool fill progress: {fetched}/{needed}") + await asyncio.sleep(POOL_SLEEP) + + finally: + pool_filling = False + db.close() + +## Booster management + +BOOSTER_MAX = 5 +BOOSTER_COOLDOWN_HOURS = 5 + +def check_boosters(user: UserModel, db: Session) -> tuple[int, datetime|None]: + if user.boosters_countdown is None: + if user.boosters < BOOSTER_MAX: + user.boosters = BOOSTER_MAX + db.commit() + return (user.boosters, user.boosters_countdown) + + now = datetime.now() + countdown = user.boosters_countdown + + while user.boosters < BOOSTER_MAX: + next_tick = countdown + timedelta(hours=BOOSTER_COOLDOWN_HOURS) + if now >= next_tick: + user.boosters += 1 + countdown = next_tick + else: + break + + user.boosters_countdown = countdown if user.boosters < BOOSTER_MAX else None + db.commit() + return (user.boosters, user.boosters_countdown) + +## Periodic cleanup + +CLEANUP_INTERVAL_SECONDS = 3600 # 1 hour + + +async def run_cleanup_loop(): + # Brief startup delay so the DB is fully ready before first run + await asyncio.sleep(60) + while True: + try: + _delete_expired_records() + except Exception: + logger.exception("Periodic cleanup job failed") + await asyncio.sleep(CLEANUP_INTERVAL_SECONDS) + + +def _delete_expired_records(): + now = datetime.now() + with SessionLocal() as db: + for model in (NotificationModel, TradeProposalModel, GameChallengeModel): + # Notification.expires_at is nullable — skip rows without an expiry. + # TradeProposal and GameChallenge always have expires_at, but the + # guard is harmless and makes the intent explicit. + result = db.execute( + delete(model).where( + model.expires_at != None, # noqa: E711 + model.expires_at < now, + ) + ) + db.commit() + logger.info("Cleanup: deleted %d expired %s rows", result.rowcount, model.__tablename__) diff --git a/backend/email_utils.py b/backend/services/email_utils.py similarity index 96% rename from backend/email_utils.py rename to backend/services/email_utils.py index 96547b7..1ed7f1c 100644 --- a/backend/email_utils.py +++ b/backend/services/email_utils.py @@ -1,6 +1,8 @@ -import resend import os -from config import RESEND_API_KEY, EMAIL_FROM, FRONTEND_URL + +import resend + +from core.config import RESEND_API_KEY, EMAIL_FROM, FRONTEND_URL def send_verification_email(to_email: str, username: str, token: str): resend.api_key = RESEND_API_KEY diff --git a/backend/services/notification_manager.py b/backend/services/notification_manager.py new file mode 100644 index 0000000..6f67af8 --- /dev/null +++ b/backend/services/notification_manager.py @@ -0,0 +1,41 @@ +""" +Manages persistent per-user WebSocket connections for the notification channel. +The DB is the source of truth — this layer just delivers live pushes to connected clients. +""" +import logging + +from fastapi import WebSocket + +logger = logging.getLogger("app") + +# user_id (str) -> active WebSocket; replaced on reconnect +connections: dict[str, WebSocket] = {} + + +def register(user_id: str, ws: WebSocket) -> None: + connections[user_id] = ws + + +def unregister(user_id: str) -> None: + connections.pop(user_id, None) + + +async def send_notification(user_id: str, notification: dict) -> None: + """Push a single notification to the user if they're connected. No-op otherwise.""" + ws = connections.get(user_id) + if ws: + try: + await ws.send_json({"type": "push", "notification": notification}) + except Exception as e: + # Stale connection — the disconnect handler will clean it up + logger.debug(f"WebSocket send failed (stale connection): {e}") + + +async def send_delete(user_id: str, notification_id: str) -> None: + """Tell the client to remove a notification from its local list.""" + ws = connections.get(user_id) + if ws: + try: + await ws.send_json({"type": "delete", "notification_id": notification_id}) + except Exception as e: + logger.debug(f"WebSocket send failed (stale connection): {e}") diff --git a/backend/trade_manager.py b/backend/services/trade_manager.py similarity index 76% rename from backend/trade_manager.py rename to backend/services/trade_manager.py index d70c531..fdc28fb 100644 --- a/backend/trade_manager.py +++ b/backend/services/trade_manager.py @@ -1,14 +1,54 @@ import asyncio -import uuid import logging +import uuid from dataclasses import dataclass, field +from datetime import datetime + from fastapi import WebSocket from sqlalchemy.orm import Session -from models import Card as CardModel, DeckCard as DeckCardModel +from core.models import Card as CardModel, DeckCard as DeckCardModel logger = logging.getLogger("app") +## Card transfer + +def transfer_cards( + from_user_id: uuid.UUID, + to_user_id: uuid.UUID, + card_ids: list[uuid.UUID], + db: Session, + now: datetime, +) -> None: + """ + Reassigns card ownership, stamps received_at, removes deck memberships, and clears WTT. + Does NOT commit — caller owns the transaction. + Clearing WTT on transfer prevents a card from auto-appearing as tradeable on the new owner's + profile without them explicitly opting in. + """ + if not card_ids: + return + + matched_cards = db.query(CardModel).filter( + CardModel.id.in_(card_ids), + CardModel.user_id == from_user_id, + ).all() + + # Bail out if any card is missing or no longer owned by the sender — a partial + # transfer would silently give the receiver fewer cards than agreed upon. + if len(matched_cards) != len(card_ids): + raise ValueError( + f"Expected {len(card_ids)} cards owned by {from_user_id}, " + f"found {len(matched_cards)}" + ) + + for card in matched_cards: + card.user_id = to_user_id + card.received_at = now + card.willing_to_trade = False + db.query(DeckCardModel).filter(DeckCardModel.card_id == card.id).delete(synchronize_session=False) + + ## Storage @dataclass @@ -47,7 +87,10 @@ def serialize_card_model(card: CardModel) -> dict: "defense": card.defense, "cost": card.cost, "text": card.text, - "created_at": card.created_at.isoformat() if card.created_at else None, + "generated_at": card.generated_at.isoformat() if card.generated_at else None, + "received_at": card.received_at.isoformat() if card.received_at else None, + "is_favorite": card.is_favorite, + "willing_to_trade": card.willing_to_trade, } def serialize_trade(session: TradeSession, perspective_user_id: str) -> dict: @@ -76,8 +119,8 @@ async def broadcast_trade(session: TradeSession) -> None: "type": "state", "state": serialize_trade(session, user_id), }) - except Exception: - pass + except Exception as e: + logger.debug(f"WebSocket send failed (stale connection): {e}") ## Matchmaking @@ -108,8 +151,8 @@ async def try_trade_match() -> None: for entry in [p1, p2]: try: await entry.websocket.send_json({"type": "trade_start", "trade_id": trade_id}) - except Exception: - pass + except Exception as e: + logger.debug(f"WebSocket send failed (stale connection): {e}") ## Action handling @@ -230,28 +273,17 @@ async def _complete_trade(trade_id: str, db: Session) -> None: "type": "error", "message": "Trade failed: ownership check failed. Offers have been reset.", }) - except Exception: - pass + except Exception as e: + logger.debug(f"WebSocket send failed (stale connection): {e}") for offer in session.offers.values(): offer.accepted = False await broadcast_trade(session) return # Transfer ownership and clear deck relationships - for cid_str in [c["id"] for c in cards_u1]: - cid = uuid.UUID(cid_str) - card = db.query(CardModel).filter(CardModel.id == cid).first() - if card: - card.user_id = uuid.UUID(u2) - db.query(DeckCardModel).filter(DeckCardModel.card_id == cid).delete() - - for cid_str in [c["id"] for c in cards_u2]: - cid = uuid.UUID(cid_str) - card = db.query(CardModel).filter(CardModel.id == cid).first() - if card: - card.user_id = uuid.UUID(u1) - db.query(DeckCardModel).filter(DeckCardModel.card_id == cid).delete() - + now = datetime.now() + transfer_cards(uuid.UUID(u1), uuid.UUID(u2), [uuid.UUID(c["id"]) for c in cards_u1], db, now) + transfer_cards(uuid.UUID(u2), uuid.UUID(u1), [uuid.UUID(c["id"]) for c in cards_u2], db, now) db.commit() active_trades.pop(trade_id, None) @@ -259,8 +291,8 @@ async def _complete_trade(trade_id: str, db: Session) -> None: for ws in list(session.connections.values()): try: await ws.send_json({"type": "trade_complete"}) - except Exception: - pass + except Exception as e: + logger.debug(f"WebSocket send failed (stale connection): {e}") ## Disconnect handling @@ -279,5 +311,5 @@ async def handle_trade_disconnect(trade_id: str, user_id: str) -> None: "type": "error", "message": "Your trade partner disconnected. Trade cancelled.", }) - except Exception: - pass + except Exception as e: + logger.debug(f"WebSocket send failed (stale connection): {e}") diff --git a/backend/test_game.py b/backend/test_game.py index 7a1e7ba..245f145 100644 --- a/backend/test_game.py +++ b/backend/test_game.py @@ -1,13 +1,14 @@ +import uuid + from dotenv import load_dotenv load_dotenv() -from game import ( +from game.rules import ( GameState, PlayerState, CardInstance, CombatEvent, GameResult, create_game, resolve_combat, check_win_condition, action_play_card, action_sacrifice, action_end_turn, BOARD_SIZE, HAND_SIZE, STARTING_LIFE, MAX_ENERGY_CAP, ) -import uuid # ── Helpers ────────────────────────────────────────────────────────────────── @@ -79,6 +80,8 @@ class TestCreateGame: card_rarity = "common" image_link = "" text = "" + is_favorite = False + willing_to_trade = False cards = [FakeCard() for _ in range(20)] state = create_game("p1", "player 1", "test", cards, "p2", "player 2", "test", cards) @@ -96,6 +99,8 @@ class TestCreateGame: card_rarity = "common" image_link = "" text = "" + is_favorite = False + willing_to_trade = False cards = [FakeCard() for _ in range(20)] state = create_game("p1", "player 1", "test", cards, "p2", "player 2", "test", cards) @@ -113,6 +118,8 @@ class TestCreateGame: card_rarity = "common" image_link = "" text = "" + is_favorite = False + willing_to_trade = False cards = [FakeCard() for _ in range(20)] state = create_game("p1", "player 1", "test", cards, "p2", "player 2", "test", cards) @@ -131,6 +138,8 @@ class TestCreateGame: card_rarity = "common" image_link = "" text = "" + is_favorite = False + willing_to_trade = False cards = [FakeCard() for _ in range(20)] state = create_game("p1", "player 1", "test", cards, "p2", "player 2", "test", cards) diff --git a/frontend/DESIGN.md b/frontend/DESIGN.md new file mode 100644 index 0000000..f626363 --- /dev/null +++ b/frontend/DESIGN.md @@ -0,0 +1,119 @@ +# Design Language + +## Aesthetic +Dark fantasy TCG aesthetic. Warm golds and bronzes on near-black brown backgrounds. Cinzel for headings/labels/buttons, Crimson Text for body/prose/inputs. + +## Colors + +All core colors are available as CSS custom properties on `:root` in `app.css` (e.g. `var(--color-bg)`, `var(--color-bronze)`). + +| Role | Value | +|------|-------| +| Page background | `#0d0a04` | +| Header background | `#1a1008` | +| Modal / dark surface | `#110d04` | +| Raised surface | `#3d2507` | +| Primary text / accent | `#f0d080` (gold) | +| Secondary text | `rgba(240, 180, 80, 0.6)` | +| Placeholder text | `rgba(240, 180, 80, 0.3–0.4)` | +| Interactive accent (buttons, borders, hover) | `#c8861a` (bronze-orange) | +| Interactive accent hover | `#e09820` | +| Border / divider | `#6b4c1e` | +| Subtle border | `rgba(107, 76, 30, 0.3–0.5)` | +| Button text | `#fff8e0` | +| Error / delete | `#c84040` | +| Success / positive | `#6aaa6a` | +| Energy cost indicator | `#6ea0ec` | + +## Typography +- **Headings / labels / buttons**: Cinzel (Google Fonts), weights 400/700/900 +- **Body / prose / inputs**: Crimson Text (Google Fonts), weights 400/600; italic for flavor/secondary text +- Button and label text: **uppercase**, `letter-spacing: 0.06–0.1em` +- Form labels: uppercase, `letter-spacing: 0.08em` + +### Type Scale + +All type scale tokens are CSS custom properties on `:root` in `app.css`. + +| Token | Value | Use for | +|-------|-------|---------| +| `--text-xs` | `9px` | Fine print, badges, metadata labels | +| `--text-sm` | `11px` | Secondary text, captions, small labels | +| `--text-base` | `13px` | Default body text, buttons, card details | +| `--text-md` | `15px` | Form inputs, emphasized body text | +| `--text-lg` | `18px` | Section headings, card titles | +| `--text-xl` | `22px` | Page headings, prominent labels | +| `--text-2xl` | `28px` | Large display headings | +| `--text-3xl` | `36px` | Hero headings, splash text | + +## Buttons + +| Variant | Background | Border | Text | +|---------|-----------|--------|------| +| Primary | `#c8861a` | none | `#fff8e0` | +| Secondary | `#3d2507` | `1px solid rgba(107,76,30,0.4)` | `#f0d080` | +| Destructive | `rgba(180,40,40,0.8)` | none | `#fff` | + +### Sizes + +All button size tokens are CSS custom properties on `:root` in `app.css`. + +| Size | Padding | Font-size | Border-radius | Use for | +|------|---------|-----------|---------------|---------| +| Small | `4px 10px` | `10px` | `var(--radius-sm)` | Toolbar filters, sort toggles, inline actions, edit/delete | +| Medium | `8px 18px` | `12px` | `var(--radius-md)` | Card actions, done/choose, friend, secondary, cancel | +| Large | `10px 32px` | `13px` | `var(--radius-md)` | Primary CTAs, auth submit, play, buy, accept trade | + +- Font: Cinzel 700 uppercase, letter-spacing 0.06–0.1em +- Disabled: opacity 0.5; hover: lighten background or brighten border + text + +## Inputs / Forms +- Background: `#1a1008`; border-radius: 6px; color: `#f0d080`; font: Crimson Text 15px +- Text inputs: `1.5px solid #6b4c1e`; focus border: `#c8861a` +- Selects: `1.5px solid #6b4c1e` +- Placeholder: `rgba(240, 180, 80, 0.4)`; accent-color (checkboxes, ranges): `#c8861a` + +## Containers / Panels + +Border-radius, shadows, z-index layers, and spacing are available as CSS custom properties on `:root` in `app.css` (e.g. `var(--radius-lg)`, `var(--shadow-card)`, `var(--z-modal)`, `var(--space-md)`). + +- Border-radius: 10–12px; box-shadow: `0 4px 24px rgba(0,0,0,0.5)` +- Borders: `1–2px solid #6b4c1e` standard, `#c8861a` for emphasis +- Backgrounds: `#1a1008` (surface), `#3d2507` (raised) +- Card hover lift: `translateY(-4px) scale(1.02)`, shadow `0 12px 40px rgba(0,0,0,0.6)` + +## Transitions +- Default: `0.15s ease` on background, border-color, color, transform +- Card hover: `0.2s ease` + +## Card Type Colors (CSS vars `--bg` / `--header`) + +| Type | Background | Header | +|------|-----------|--------| +| person | `#f0e0c8` | `#b87830` | +| location | `#d8e8d4` | `#4a7a50` | +| artwork | `#e4d4e8` | `#7a5090` | +| life_form | `#ccdce8` | `#3a6878` | +| event | `#e8d4d4` | `#8b2020` | +| group | `#e8e4d0` | `#748c12` | +| science_thing | `#c7c5c1` | `#060c17` | +| vehicle | `#c7c1c4` | `#801953` | +| organization | `#b7c1c4` | `#3c5251` | + +## Rarity Badge Colors + +| Rarity | Background | Text | +|--------|-----------|------| +| common | `#c8c8c8` | `#333` | +| uncommon | `#4a7a50` | `#fff` | +| rare | `#2a5a9b` | `#fff` | +| super_rare | `#7a3a9b` | `#fff` | +| epic | `#9b3a3a` | `#fff` | +| legendary | `#b87820` | `#fff` | + +## Card Component +- Outer border and internal borders: `#000` (pure black) — these are structural borders within the card face, distinct from the themed `#6b4c1e` borders on containers/panels. +- Card background: `#111`; border-radius: 12px; padding: 7px + +## Spacing +- Page padding: `2rem`; section gap: `1–1.5rem`; component internal gap: `0.4–0.75rem` diff --git a/frontend/src/app.css b/frontend/src/app.css index 02c6c3c..fb7524b 100644 --- a/frontend/src/app.css +++ b/frontend/src/app.css @@ -1,14 +1,115 @@ +@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;700;900&family=Crimson+Text:ital,wght@0,400;0,600;1,400&display=swap'); + +:root { + /* Colors */ + --color-bg: #0d0a04; + --color-surface: #1a1008; + --color-surface-raised: #3d2507; + --color-gold: #f0d080; + --color-gold-muted: rgba(240, 180, 80, 0.8); + --color-gold-dim: rgba(240, 180, 80, 0.6); + --color-gold-faint: rgba(240, 180, 80, 0.4); + --color-bronze: #c8861a; + --color-bronze-hover: #e09820; + --color-border: #6b4c1e; + --color-border-subtle: rgba(107, 76, 30, 0.4); + --color-border-dim: rgba(107, 76, 30, 0.3); + --color-overlay: rgba(0, 0, 0, 0.5); + --color-btn-text: #fff8e0; + --color-error: #c84040; + --color-success: #6aaa6a; + --color-energy: #6ea0ec; + --color-shard: #b87820; + --color-cyan: #7ecfcf; /* shard quantity / cyan accent */ + + /* Border-radius */ + --radius-sm: 4px; + --radius-md: 6px; + --radius-lg: 10px; + --radius-xl: 12px; + --radius-full: 50%; + + /* Shadows */ + --shadow-subtle: 0 2px 8px rgba(0, 0, 0, 0.3); + --shadow-card: 0 4px 24px rgba(0, 0, 0, 0.5); + --shadow-elevated: 0 12px 40px rgba(0, 0, 0, 0.6); + --shadow-glow: 0 0 20px rgba(200, 134, 26, 0.3); + + /* Z-index layers */ + --z-base: 1; + --z-card: 10; + --z-header: 100; + --z-dropdown: 200; + --z-modal: 300; + --z-toast: 400; + + /* Type scale */ + --text-xs: 9px; + --text-sm: 11px; + --text-base: 13px; + --text-md: 15px; + --text-lg: 18px; + --text-xl: 22px; + --text-2xl: 28px; + --text-3xl: 36px; + + /* Button sizes */ + --btn-padding-sm: 4px 10px; + --btn-font-sm: 10px; + --btn-padding-md: 8px 18px; + --btn-font-md: 12px; + --btn-padding-lg: 10px 32px; + --btn-font-lg: 13px; + + /* Spacing */ + --space-xs: 0.25rem; + --space-sm: 0.5rem; + --space-md: 1rem; + --space-lg: 1.5rem; + --space-xl: 2rem; +} + *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } +* { + scrollbar-width: thin; + scrollbar-color: var(--color-border) transparent; +} + body { - background: #0d0a04; + background: var(--color-bg); } html, body { height: 100%; overflow: hidden; +} + +::-webkit-scrollbar { + width: 8px; +} +::-webkit-scrollbar-track { + background: transparent; +} +::-webkit-scrollbar-thumb { + background: var(--color-border); + border-radius: 3px; +} +::-webkit-scrollbar-thumb:hover { + background: var(--color-bronze); +} + +@keyframes shard-pulse { + 0%, 100% { + filter: brightness(1); + text-shadow: 0 0 6px rgba(126, 207, 207, 0.45); + } + 50% { + filter: brightness(1.45); + text-shadow: 0 0 14px rgba(126, 207, 207, 0.9), 0 0 28px rgba(126, 207, 207, 0.35); + } } \ No newline at end of file diff --git a/frontend/src/lib/Card.svelte b/frontend/src/lib/Card.svelte index 875a676..fa22fb6 100644 --- a/frontend/src/lib/Card.svelte +++ b/frontend/src/lib/Card.svelte @@ -1,4 +1,4 @@ - @@ -47,7 +47,7 @@
{notif.payload.from_username ?? 'Someone'} sent you a friend request.
++ {notif.payload.from_username ?? 'Someone'} sent you a trade offer + ({notif.payload.offered_count ?? 0} offered, {notif.payload.requested_count ?? 0} requested). +
++ {notif.payload.from_username ?? 'Someone'} + {notif.payload.status === 'accepted' ? 'accepted' : 'declined'} your trade offer. +
+ + + {:else if notif.type === 'game_challenge'} + {#if notif.payload.status === 'accepted'} + +{notif.payload.from_username ?? 'Someone'} accepted your challenge!
+ + {:else} + + {@const secs = countdowns[notif.id] ?? Math.max(0, Math.floor((new Date(notif.expires_at ?? 0).getTime() - Date.now()) / 1000))} + {@const expired = secs <= 0} ++ {notif.payload.from_username ?? 'Someone'} challenged you with {notif.payload.deck_name ?? 'a deck'}. +
+ {#if expired} + Expired + {:else} + {Math.floor(secs / 60)}:{String(secs % 60).padStart(2, '0')} remaining +{notif.payload.message ?? ''}
+ {/if} + {#if notifErrors[notif.id]} +{notifErrors[notif.id]}
+ {/if} +