M include/negamax.c => include/negamax.c +8 -1
@@ 26,6 26,7 @@ const float infty = 3.0;
char negamax_ptn[9];
uint8_t negamax_search_depth = 3;
static uint64_t negamax_best_action;
+static nn_function evaluate;
// ===================================================================
// Helper declarations
@@ 43,6 44,12 @@ void negamax_init(const uint8_t new_board_size) {
action_list_init(new_board_size);
zobrist_init(new_board_size);
tt_init();
+
+ if (new_board_size == 5) {
+ evaluate = &nn1986_evaluate_black_win;
+ } else {
+ evaluate = &nn2690_evaluate_black_win;
+ }
}
void negamax_free(void) { zobrist_free(); }
@@ 132,7 139,7 @@ static float negamax(tak_state_p state, const uint8_t cur_depth,
node_value = -negamax(state, cur_depth - 1, init_depth, -beta, -alpha,
-colour, zobrist_compute(state));
} else {
- node_value = colour * nn1986_evaluate_black_win(state);
+ node_value = colour * evaluate(state);
}
action_undo(state, node->action);
M include/negamax.h => include/negamax.h +1 -1
@@ 19,7 19,7 @@
#include <stdint.h>
#include <actions.h>
-#include <nn1986.h>
+#include <nn.h>
#include <tak.h>
#include <tt_llcht.h>
#include <zobrist.h>
R include/nn1986.c => include/nn.c +77 -34
@@ 15,20 15,88 @@
along with ct. If not, see <https://www.gnu.org/licenses/>.
*/
-#include "nn1986.h"
+#include "nn.h"
#include "tak.h"
-#include "weights.h"
+#include "weights_5.h"
+#include "weights_6.h"
// ===================================================================
-// Implementation of a small neural network
+// Helpers
// ===================================================================
-static float cur_board[INP_NUM];
-static float dense1[DENSE_NUM];
-static float output[2];
-
#define RELU(x) ((x) = ((x) < 0) ? 0 : (x))
+
+static inline void prepare_input(float *cur_board, tak_state_p stat);
+
+// ===================================================================
+// Implementation of small neural networks
+// ===================================================================
+
float nn1986_evaluate_black_win(tak_state_p state) {
+ static float cur_board[FIVE_INP_NUM];
+ static float dense1[FIVE_DENSE_NUM];
+ static float output[2];
+
+ prepare_input(cur_board, state);
+ /* ------------------ *
+ * First dense layer *
+ * ------------------ */
+ for (unsigned int d1 = 0; d1 < FIVE_DENSE_NUM; d1++) {
+ dense1[d1] = five_dense_biases[d1];
+ for (unsigned int fl = 0; fl < FIVE_INP_NUM; fl++) {
+ dense1[d1] += cur_board[fl] * five_dense_weights[d1][fl];
+ }
+ RELU(dense1[d1]);
+ }
+ /* ------------- *
+ * Output layer *
+ * ------------- */
+ for (uint8_t k = 0; k < 2; k++) {
+ output[k] = five_output_bias[k];
+ for (unsigned int d2 = 0; d2 < FIVE_DENSE_NUM; d2++) {
+ output[k] += dense1[d2] * five_output_weights[k][d2];
+ }
+ RELU(output[k]);
+ }
+ const float norm = output[0] + output[1];
+ return (2 * output[0] / norm) - 1;
+}
+
+float nn2690_evaluate_black_win(tak_state_p state) {
+ static float cur_board[SIX_INP_NUM];
+ static float dense1[SIX_DENSE_NUM];
+ static float output[2];
+
+ prepare_input(cur_board, state);
+ /* ------------------ *
+ * First dense layer *
+ * ------------------ */
+ for (unsigned int d1 = 0; d1 < SIX_DENSE_NUM; d1++) {
+ dense1[d1] = six_dense_biases[d1];
+ for (unsigned int fl = 0; fl < SIX_INP_NUM; fl++) {
+ dense1[d1] += cur_board[fl] * six_dense_weights[d1][fl];
+ }
+ RELU(dense1[d1]);
+ }
+ /* ------------- *
+ * Output layer *
+ * ------------- */
+ for (uint8_t k = 0; k < 2; k++) {
+ output[k] = six_output_bias[k];
+ for (unsigned int d2 = 0; d2 < SIX_DENSE_NUM; d2++) {
+ output[k] += dense1[d2] * six_output_weights[k][d2];
+ }
+ RELU(output[k]);
+ }
+ const float norm = output[0] + output[1];
+ return (2 * output[0] / norm) - 1;
+}
+
+// ===================================================================
+// Helper implementation
+// ===================================================================
+
+static inline void prepare_input(float *cur_board, tak_state_p state) {
/* --------------- *
* Populate input *
* --------------- */
@@ 38,9 106,9 @@ float nn1986_evaluate_black_win(tak_state_p state) {
const unsigned int count = COUNT_AT(state, loc);
float lookup = 0;
if (count > 0) {
- if (STONE_AT(state, loc) == STONE_STANDING) {
+ if (STONE_AT(state, loc) == STONE_STANDING) {
lookup = (state->colours[loc] & 1) ? +0.25 : -0.25;
- } else if (STONE_AT(state, loc) == STONE_CAPSTONE) {
+ } else if (STONE_AT(state, loc) == STONE_CAPSTONE) {
lookup = (state->colours[loc] & 1) ? +1.00 : -1.00;
} else {
lookup = (state->colours[loc] & 1) ? +0.50 : -0.50;
@@ 49,33 117,8 @@ float nn1986_evaluate_black_win(tak_state_p state) {
cur_board[3 + loc] = lookup;
}
}
- /* ------------------ *
- * Convolution layer *
- * ------------------ */
// Add input of flat counts and ply parity
cur_board[0] = (state->ply & 1) ? 1 : -1;
cur_board[1] = (float)(state->white_count & 127) / 21.0;
cur_board[2] = (float)(state->black_count & 127) / 21.0;
- /* ------------------ *
- * First dense layer *
- * ------------------ */
- for (unsigned int d1 = 0; d1 < DENSE_NUM; d1++) {
- dense1[d1] = dense1_biases[d1];
- for (unsigned int fl = 0; fl < 3 + 5 * 5; fl++) {
- dense1[d1] += cur_board[fl] * dense1_weights[d1][fl];
- }
- RELU(dense1[d1]);
- }
- /* ------------- *
- * Output layer *
- * ------------- */
- for (uint8_t k = 0; k < 2; k++) {
- output[k] = output_bias[k];
- for (unsigned int d2 = 0; d2 < DENSE_NUM; d2++) {
- output[k] += dense1[d2] * output_weights[k][d2];
- }
- RELU(output[k]);
- }
- const float norm = output[0] + output[1];
- return (2 * output[0] / norm) - 1;
}
R include/nn1986.h => include/nn.h +3 -0
@@ 17,4 17,7 @@
#include <tak.h>
+typedef float (*nn_function)(tak_state_p);
+
float nn1986_evaluate_black_win(tak_state_p state);
+float nn2690_evaluate_black_win(tak_state_p state);
M include/tak.h => include/tak.h +1 -1
@@ 55,7 55,7 @@ typedef struct tak_state_s {
enum WIN_TYPE won;
enum COLOUR current_colour;
uint8_t white_count, black_count, ply, board_size;
-} * tak_state_p;
+} *tak_state_p;
#define NUM_SHIFT 4
#define NUM_MASK (0xF << NUM_SHIFT) // 0b11110000
M include/tps.c => include/tps.c +5 -5
@@ 76,7 76,7 @@ enum TPS_RESULT load_tps(tak_state_p state, char *tps) {
break;
}
default: {
- const int l = THE_COORDS(state->board_size, col, row);
+ const int l = THE_COORDS(state->board_size, col, row);
uint8_t num_read = 0, reading = 1;
// Read in a stack of colours, optionally terminated by an S
// or C to change the top stone type
@@ 121,7 121,7 @@ enum TPS_RESULT load_tps(tak_state_p state, char *tps) {
}
case 'S': {
// Have we already read a stone type?
- if (STONE_AT(state, l) != STONE_FLAT)
+ if (STONE_AT(state, l) != STONE_FLAT)
return TPS_INVALID;
state->celldat[l] |= STONE_STANDING;
tps++;
@@ 129,7 129,7 @@ enum TPS_RESULT load_tps(tak_state_p state, char *tps) {
break;
}
case 'C': {
- if (STONE_AT(state, l) != STONE_FLAT)
+ if (STONE_AT(state, l) != STONE_FLAT)
return TPS_INVALID;
state->celldat[l] |= STONE_CAPSTONE;
tps++;
@@ 207,8 207,8 @@ void generate_tps(tak_state_p state, char *out_tps) {
for (int8_t row = state->board_size - 1; row >= 0; row--) {
for (int8_t col = 0; col < state->board_size; col++) {
- const int8_t l = THE_COORDS(state->board_size, col, row);
- const uint8_t count = COUNT_AT(state, l);
+ const int8_t l = THE_COORDS(state->board_size, col, row);
+ const uint8_t count = COUNT_AT(state, l);
if (count) {
colour_stack_t c = state->colours[l], s = 1 << (count - 1);
for (int k = 0; k < count; k++, s >>= 1, out_tps++) {
D include/weights.c => include/weights.c +0 -33
@@ 1,33 0,0 @@
-/*
- * Model: "model"
- * _________________________________________________________________
- * Layer (type) Output Shape Param #
- * =================================================================
- * input_1 (InputLayer) [(None, 28)] 0
- *
- * dense (Dense) (None, 64) 1856
- *
- * dense_1 (Dense) (None, 2) 130
- *
- * =================================================================
- * Total params: 1,986
- * Trainable params: 1,986
- * Non-trainable params: 0
- * _________________________________________________________________
- * ([0.5177317261695862, 0.755382776260376], [0.5241230130195618, 0.7530876398086548])
-*/
-
-#include "weights.h"
-
-const float dense1_weights[DENSE_NUM][INP_NUM] =
-{{0.0335812121629715, -0.21365489065647125, -0.653753936290741, -0.13572198152542114, 0.18898768723011017, 0.06430475413799286, 0.1521165519952774, -0.6386323571205139, 0.5113293528556824, 0.3224753439426422, 0.3006350100040436, 0.4426257014274597, -0.4259096086025238, 0.34491172432899475, 0.26074907183647156, 0.30206671357154846, 0.2114274799823761, -0.5099963545799255, 0.38777005672454834, 0.23917558789253235, 0.32478395104408264, 0.2528369724750519, -0.5045477747917175, 0.10504062473773956, 0.34629005193710327, 0.28095799684524536, 0.31814444065093994, -0.7089307904243469}, {0.0565570704638958, -0.4527612030506134, 0.22363899648189545, -0.4776171147823334, -0.4429882764816284, 0.09122249484062195, 0.08279165625572205, 0.29376256465911865, -0.23718500137329102, -0.5789054036140442, 0.28780052065849304, 0.6442199945449829, 0.03741508722305298, -0.220468670129776, -0.644933819770813, -0.13106265664100647, 0.5042467713356018, 0.43313512206077576, 0.5279864072799683, -0.5684875249862671, -0.8156968355178833, -0.5465362668037415, -0.5424111485481262, 0.04707803204655647, 0.2047167718410492, -0.3449491560459137, -0.26257622241973877, -0.4042203426361084}, {0.002476541558280587, -0.21414169669151306, -0.11842579394578934, 0.14450429379940033, -0.01525128073990345, -0.12563736736774445, -0.27338773012161255, 0.009645791724324226, -0.25494587421417236, -0.2797246277332306, -0.2301362156867981, -0.40248778462409973, -0.2902604341506958, 0.19436009228229523, -0.11030247807502747, 0.08137191087007523, -0.1867382973432541, -0.7496097683906555, -0.008727616630494595, 0.22033251821994781, 0.19767463207244873, 0.11307194083929062, -0.8412720561027527, 0.2657962143421173, -0.07668104767799377, 0.06086883693933487, 0.3835994601249695, -1.091362476348877}, {0.05102699622511864, -0.8378904461860657, 0.4566768705844879, -0.2630152404308319, -0.23932738602161407, -0.19857573509216309, 0.30443575978279114, -0.14038261771202087, -0.14678728580474854, -0.40179580450057983, -0.35921597480773926, -0.14929337799549103, 0.12302257865667343, 0.10777170211076736, -0.12337932735681534, -0.33727583289146423, -0.28758835792541504, 0.37838035821914673, 0.3109462559223175, 0.15170936286449432, 0.17238374054431915, -0.7253879308700562, -0.23942553997039795, 0.11120962351560593, 0.2859588861465454, 0.4778689444065094, -0.679128885269165, -0.226375013589859}, {0.03254811838269234, -0.20261096954345703, -0.07562973350286484, -0.10781332850456238, -0.10312259197235107, -0.07764437049627304, -0.04054751992225647, -0.07112596929073334, -0.06557303667068481, -0.12047363817691803, -0.062015969306230545, -0.026542047038674355, -0.01934126764535904, -0.09312712401151657, -0.03113151155412197, -0.051008112728595734, -0.05768309533596039, -0.10491270571947098, -0.0717678889632225, -0.04455398768186569, -0.02723315730690956, -0.057788874953985214, -0.0033781195525079966, -0.03603564202785492, -0.006476488430052996, -0.021566126495599747, -0.04043968394398689, 0.007654271088540554}, {-0.08095347136259079, -0.26414069533348083, -0.09814666211605072, -0.04380079358816147, -0.5849603414535522, -0.7097421288490295, -0.9047000408172607, -1.3424301147460938, -0.31041404604911804, -0.25597554445266724, -0.11997552961111069, 0.20276427268981934, 0.36256903409957886, 0.019292958080768585, -0.041115161031484604, 0.12530303001403809, 0.20739392936229706, 0.3235205411911011, -0.05591806769371033, -0.05841316655278206, 0.038499265909194946, 0.18055571615695953, 0.293590784072876, 0.16785693168640137, 0.24048064649105072, 0.07176923751831055, 0.08983936905860901, 0.22106173634529114}, {-0.017707331106066704, 0.12255413830280304, -0.6240278482437134, -0.04464518278837204, -0.1846076399087906, 0.6399872899055481, 0.12881889939308167, 0.22656285762786865, -0.1679985672235489, -0.28858682513237, 0.5312493443489075, 0.049816571176052094, -0.24046465754508972, -0.1774766743183136, -0.09163064509630203, 0.7954617142677307, -0.39598366618156433, -0.4399476945400238, 0.6123018860816956, 0.45216771960258484, 0.6593272089958191, -0.07644930481910706, -0.4521935284137726, 0.012832398526370525, 0.028779083862900734, 0.6450971961021423, 0.575737714767456, 0.6349318027496338}, {-0.03650929406285286, -0.14473311603069305, -0.5584736466407776, -0.029627997428178787, -0.1539306640625, -0.12314235419034958, 0.08387640863656998, -0.0337577685713768, -0.17351587116718292, -0.19245818257331848, -0.16416308283805847, 0.016272591426968575, 0.36373433470726013, 0.04089183360338211, 0.02371835894882679, -0.22523774206638336, -0.15100933611392975, 0.45591863989830017, -0.1123512014746666, 0.061778921633958817, -0.13473178446292877, -0.40654733777046204, 0.4156742990016937, -0.03619186207652092, 0.24843069911003113, 0.29947373270988464, 0.36726078391075134, 1.2590346336364746}, {-0.1366739124059677, 0.41514185070991516, -0.2774442732334137, -0.3785100281238556, -0.43781572580337524, 0.0857686847448349, 0.548991322517395, 0.3008037805557251, -0.710213303565979, 0.02195434831082821, 0.5724306702613831, 0.5335829854011536, 0.09624887257814407, 1.017358660697937, 0.8264562487602234, 0.4335733652114868, 0.2976129651069641, -0.07695961743593216, 0.08250663429498672, 0.12967929244041443, -0.04427557811141014, 0.24989163875579834, 0.08119788765907288, 0.05688076093792915, 0.14414691925048828, -0.15780726075172424, 0.12778723239898682, 0.17664006352424622}, {0.045846302062273026, -0.4202306270599365, 0.24253332614898682, 0.058551233261823654, 0.13127459585666656, -0.08259733766317368, -0.5951005220413208, 0.010317057371139526, 0.32319802045822144, -0.2788604497909546, -0.10889868438243866, -0.6505680084228516, 0.0621410608291626, -0.22810311615467072, -0.0803237184882164, 0.4647519290447235, -0.6627072691917419, 0.20077340304851532, 0.1278313249349594, 0.021397558972239494, -0.017719708383083344, -0.65326988697052, 0.03247045353055, -0.003151470795273781, -0.089555524289608, -0.21280834078788757, -0.18042130768299103, -0.13124220073223114}, {0.08920250833034515, -0.4041590988636017, 0.11126764863729477, -0.38825124502182007, -0.37751445174217224, 0.3841644823551178, 0.13915617763996124, -0.427076131105423, -0.42071813344955444, -0.8185845017433167, -0.6395564675331116, -0.3830700218677521, -0.34343987703323364, 0.14143605530261993, 0.2065681666135788, -0.5982153415679932, -0.2753662168979645, -0.5253153443336487, 0.1136728972196579, 0.303848534822464, -0.3599269390106201, -0.48723894357681274, 0.1170220747590065, 0.1082770973443985, 0.2027408331632614, -0.6000553369522095, -0.2399190366268158, 0.21266664564609528}, {-0.044174984097480774, 0.10084715485572815, -0.7766823768615723, 0.5814716219902039, 0.2989753484725952, -0.04704820364713669, -0.23142951726913452, 0.16222569346427917, 0.026166614145040512, 0.3819707930088043, 0.0457681305706501, -0.0551467202603817, 0.09645840525627136, -0.28990161418914795, 0.11402436345815659, 0.445557564496994, 0.3328436315059662, 0.6563848853111267, -0.22550760209560394, 0.1100253015756607, -0.29362085461616516, 0.35912737250328064, 0.07314564287662506, 0.3241541087627411, -0.04152493178844452, -0.18172766268253326, 0.3779054582118988, 0.30225080251693726}, {0.0354388952255249, -0.45912227034568787, 0.07555098086595535, -0.047884486615657806, 0.12533819675445557, 0.11261603981256485, 0.5056780576705933, -0.15080063045024872, -0.14207696914672852, -0.24237896502017975, -0.4537515342235565, -0.7382211685180664, -1.396830439567566, -0.05796787142753601, -0.0972527340054512, -0.0011085039004683495, 0.15182892978191376, 0.38325998187065125, -0.013696794398128986, -0.05116301029920578, 0.24685567617416382, 0.17722700536251068, -0.011363615281879902, 0.032823070883750916, 0.23471832275390625, 0.2214534878730774, -0.12878315150737762, 0.07269603759050369}, {0.1021164283156395, -0.979482114315033, 0.10424260795116425, 0.20152615010738373, -0.4474649131298065, -0.5927112698554993, -0.4682328701019287, -0.25608980655670166, -0.03509359434247017, -0.3745705783367157, -0.5153190493583679, -0.5731074810028076, -0.558528482913971, -0.08479820191860199, -0.38562700152397156, -0.4411310851573944, -0.5317122340202332, -0.5145424604415894, -0.046643827110528946, -0.2316707819700241, -0.3664470911026001, -0.3545966148376465, -0.313737690448761, 0.09879656881093979, -0.2625102400779724, -0.306001216173172, -0.29944929480552673, 0.03161349147558212}, {-0.03801499307155609, -0.2233135849237442, -0.10620100051164627, 0.2713835537433624, 0.21967564523220062, 0.251351535320282, 0.16949021816253662, 0.15099139511585236, 0.05300286412239075, 0.08299478143453598, 0.011512423865497112, 0.01530615333467722, 0.07382016628980637, -0.18710920214653015, 0.03905392810702324, 0.16468313336372375, 0.22495073080062866, 0.3159700930118561, -0.1615748107433319, -0.16977524757385254, -0.17270493507385254, 0.1490594446659088, 0.4793047308921814, -0.0045040980912745, -0.3750409185886383, -0.5658650994300842, -0.7609032392501831, -0.9970420598983765}, {-0.06860953569412231, 0.1561063975095749, 0.41900986433029175, -0.09340472519397736, 0.05546368286013603, -0.32329270243644714, -0.3049590587615967, -0.057696402072906494, -0.17760413885116577, -0.21533682942390442, -0.06622635573148727, -0.20747050642967224, -0.13626375794410706, -0.16855809092521667, -0.06624997407197952, 0.17109455168247223, 0.265641987323761, 0.2269686758518219, -0.31261059641838074, -0.3254770040512085, -0.17686116695404053, -0.184734046459198, -0.17058107256889343, -0.13638293743133545, -0.25341087579727173, -0.06822904199361801, -0.17498566210269928, -0.15365538001060486}, {-0.09274652600288391, 0.8195863366127014, -0.6974982619285583, 0.19567207992076874, 0.3114858567714691, 0.3193179965019226, 0.3051777482032776, 0.1686609983444214, 0.28975042700767517, 0.3609328269958496, 0.34076830744743347, 0.3451266586780548, 0.2754822373390198, 0.2944789528846741, 0.3471467196941376, 0.3111295998096466, 0.36336469650268555, 0.3138508200645447, 0.3493599593639374, 0.3804861307144165, 0.3554949462413788, 0.38007041811943054, 0.304755836725235, 0.1720620095729828, 0.3196488618850708, 0.3476446270942688, 0.2819644510746002, 0.20534354448318481}, {-0.04308394342660904, 0.4313099980354309, 0.0190417543053627, -0.36723119020462036, -0.17420481145381927, 0.5145810842514038, 0.5347347855567932, 0.6282756328582764, 1.2653520107269287, 1.1850699186325073, 0.8361583352088928, 0.4141540825366974, 0.26177582144737244, 0.06430555135011673, 0.4607594609260559, -0.0807068794965744, -0.09359037131071091, 0.09638888388872147, 0.525905191898346, 0.5729591250419617, -0.02258281223475933, -0.17060524225234985, 0.12351763993501663, 0.08509236574172974, 0.4710988402366638, 0.17080940306186676, 0.250908762216568, -0.09069673717021942}, {0.07291662693023682, 0.08596876263618469, -0.08287191390991211, 0.26005038619041443, 0.46491068601608276, 0.5783225893974304, 0.15600703656673431, -0.26880383491516113, -0.17159603536128998, 0.18245145678520203, 0.6828884482383728, -0.21175506711006165, -0.057075608521699905, -0.31850534677505493, 0.12133979052305222, 0.5726630091667175, -0.07307758182287216, -0.0253745187073946, -0.05841955170035362, -0.2049519568681717, 0.542971670627594, -0.0039001810364425182, -0.027620088309049606, -0.4046057164669037, -0.07061299681663513, 0.5127297043800354, 0.17255832254886627, -0.37250733375549316}, {-0.11166863888502121, 0.055800892412662506, -0.5167198777198792, 0.2324250191450119, 0.40913817286491394, 0.6140636801719666, 0.4707394242286682, 1.522460699081421, 0.28594499826431274, 0.3309996426105499, 0.08542972803115845, -0.28014466166496277, 0.139140322804451, 0.1942225694656372, 0.1311720907688141, 0.06602678447961807, 0.13316340744495392, 0.5902721881866455, 0.03358441963791847, -0.01826644130051136, 0.2206089198589325, 0.3234162926673889, 0.29170212149620056, 0.027043171226978302, 0.2018718421459198, -0.010219907388091087, 0.35940054059028625, 0.07707080245018005}, {0.02553723379969597, 0.461318701505661, -0.4059189260005951, 0.05942573770880699, -0.010037711821496487, -0.13757778704166412, 0.22961010038852692, 0.2251977026462555, 1.0914969444274902, 0.9033216834068298, 0.83197420835495, 0.7612583637237549, 0.05771542713046074, -0.10955284535884857, -0.004019961226731539, 0.4693775475025177, 0.07826275378465652, -0.13095584511756897, -0.2168196588754654, -0.3515476584434509, 0.7580985426902771, 0.20290978252887726, -0.16279703378677368, -0.06892823427915573, -0.20307579636573792, 0.954958975315094, -0.2317219376564026, -0.1928693652153015}, {0.062168460339307785, -0.5123471617698669, -0.263359934091568, -0.7685256600379944, 0.08967547863721848, 0.24563723802566528, 0.3980844020843506, 0.3117550015449524, -0.7312137484550476, -0.06169243901968002, 0.25126340985298157, 0.2695813477039337, 0.23361706733703613, -0.969958484172821, 0.12066813558340073, 0.15110082924365997, 0.22164055705070496, 0.14506936073303223, -0.8025405406951904, 0.26169300079345703, 0.11112350225448608, 0.29015427827835083, 0.34564951062202454, -0.9369366765022278, 0.41549447178840637, 0.2582719624042511, 0.3374422788619995, 0.3025016188621521}, {-0.1270698755979538, 0.429225891828537, -0.49225398898124695, -0.11553260684013367, -0.23649732768535614, 0.8932956457138062, -0.11381787061691284, -0.300383061170578, -0.08516164869070053, -0.04815308749675751, 0.6397905349731445, 0.05467788130044937, -0.17419259250164032, 0.05954163148999214, 0.11605441570281982, 0.46235892176628113, 0.005171304568648338, -0.3957885801792145, 0.19777722656726837, 0.7243578433990479, 0.8090712428092957, 0.8684667348861694, 1.0440218448638916, 0.435382217168808, 0.20173248648643494, -0.50189208984375, -0.127868190407753, -0.049834541976451874}, {0.0026459188666194677, 0.11711517721414566, -0.7256444692611694, -0.08485592901706696, 0.9629834890365601, 0.09173507988452911, 0.244176983833313, 0.24677251279354095, 0.15705431997776031, 0.7062681913375854, -0.5933635234832764, -0.10675647109746933, 0.04850605130195618, 0.13815787434577942, 0.4868027865886688, -0.48046332597732544, 0.09973080456256866, 0.0552331916987896, 1.0236599445343018, 1.0715246200561523, 0.8364623188972473, 0.6795467138290405, 0.1431518793106079, -0.09264400601387024, -0.24593685567378998, 0.0526106022298336, 0.5356892347335815, 0.4176342785358429}, {-0.17575381696224213, 0.9493538737297058, -0.9680318832397461, 0.344186007976532, 0.37747424840927124, 0.3827437460422516, 0.3655855357646942, 0.32791411876678467, 0.3741169273853302, 0.42540842294692993, 0.4716174900531769, 0.4630044102668762, 0.4119097888469696, 0.43781936168670654, 0.4984303414821625, 0.3960149586200714, 0.4152538776397705, 0.3874683082103729, 0.37821871042251587, 0.41086938977241516, 0.436718225479126, 0.38621312379837036, 0.3685840666294098, 0.3631429970264435, 0.3682745099067688, 0.3622629940509796, 0.41871270537376404, 0.3119860589504242}, {-0.06097084656357765, 0.3522926867008209, -0.07554367929697037, 0.31942737102508545, 0.029151281341910362, 0.15592512488365173, -0.0009292215690948069, 0.18485626578330994, 0.39177006483078003, 0.2792249321937561, 0.12014344334602356, 0.09458812326192856, 0.028401147574186325, 1.115199089050293, 0.8369911313056946, 0.602891206741333, 0.28732630610466003, -0.11038826406002045, -0.5364417433738708, -0.08979910612106323, 0.6724634766578674, 0.34956303238868713, 0.27176162600517273, -0.5280332565307617, -0.5781199932098389, 0.6316017508506775, 0.41322362422943115, 0.18675293028354645}, {0.06110076978802681, 0.20676849782466888, -0.21055933833122253, 0.14543284475803375, -0.2691429555416107, 0.23192094266414642, -0.16181010007858276, -0.07387831062078476, 0.2630201280117035, -0.1249636858701706, 0.16139020025730133, 0.12681415677070618, 0.24008934199810028, 0.5166671872138977, 0.84417724609375, 0.928178071975708, 0.5734097361564636, 0.7494409680366516, 0.45103031396865845, 0.29169872403144836, -0.17037302255630493, -0.6708592176437378, 0.1958291381597519, 0.17509706318378448, 0.2388417273759842, -0.3683401942253113, -0.46702516078948975, -0.12833642959594727}, {0.00030645611695945263, -0.19412267208099365, -0.1942126452922821, 0.8911823034286499, 0.8041935563087463, 0.6952621936798096, 0.5451593399047852, 0.4937603175640106, -0.24343731999397278, -0.1464550644159317, -0.12816737592220306, 0.024196654558181763, 0.036258477717638016, -0.1814306229352951, -0.21442382037639618, -0.11105196923017502, -0.22053563594818115, -0.24859702587127686, -0.22910651564598083, -0.2101702243089676, -0.14243045449256897, -0.2865407168865204, -0.18984046578407288, -0.07871726900339127, -0.2595853805541992, -0.24533933401107788, -0.26216810941696167, -0.16304023563861847}, {0.052463531494140625, 0.1486791968345642, -0.579024612903595, 1.088742733001709, -0.13386118412017822, -0.1609494388103485, -0.09612634778022766, -0.09550110250711441, 0.9107480645179749, -0.14887897670269012, -0.017151640728116035, 0.020924121141433716, 0.04268282279372215, 0.9172422885894775, 0.04447457566857338, -0.02752840891480446, 0.022488543763756752, -0.09672117233276367, 0.8158107995986938, 0.15294760465621948, 0.04637422040104866, 0.024195043370127678, -0.08632858097553253, 0.4717424511909485, 0.18674905598163605, 0.10150022804737091, 0.025798514485359192, -0.1546076387166977}, {0.029881251975893974, 0.49499452114105225, -0.026262039318680763, 0.00900306273251772, -0.036245543509721756, -0.11946964263916016, 0.172474667429924, 0.5267413854598999, 0.07936062663793564, -0.15437465906143188, 0.16969208419322968, 0.7578750252723694, 0.4837819039821625, 0.08440805226564407, 0.20724894106388092, 0.07721617817878723, 0.7230514883995056, 0.023518960922956467, 0.3058747947216034, 0.1142619401216507, 0.08739539235830307, 0.8077057003974915, -0.38012027740478516, 0.23245155811309814, 0.10439647734165192, -0.07647071778774261, 1.3155752420425415, -0.46643584966659546}, {0.10903043299913406, -0.004875070881098509, 0.2575789988040924, 0.14737094938755035, 0.43150651454925537, -0.5420994162559509, -0.3059577941894531, -0.2527901232242584, 0.19769372045993805, 0.38301345705986023, -0.10965324938297272, -0.21152931451797485, -0.0738074779510498, 0.1658964455127716, 0.4326992332935333, 0.4845859110355377, 0.1578446626663208, -0.10062657296657562, -0.1752672642469406, -0.37322744727134705, 0.17257146537303925, 0.2496408224105835, 0.12594257295131683, -0.37234362959861755, -0.12441913038492203, -0.026296446099877357, 0.1662571132183075, -0.0028839746955782175}, {-0.014218885451555252, -0.5738092064857483, 0.23660679161548615, -0.10611919313669205, -0.12041497230529785, -0.1564393788576126, -0.2974553406238556, -0.13557544350624084, -0.03920785337686539, 0.22239501774311066, -0.6583126187324524, -0.4981720745563507, -0.34942877292633057, 0.09956511110067368, 0.07194441556930542, -0.8891360759735107, 0.09037145227193832, 0.4524118900299072, 0.1884671002626419, 0.04436931014060974, -0.9194300770759583, 0.5126015543937683, 0.5571795105934143, 0.25728949904441833, 0.03548843413591385, -1.0185256004333496, 0.30711427330970764, 0.39558374881744385}, {-0.014499297365546227, -0.6686705946922302, -0.036153871566057205, -1.3211073875427246, -0.6752616167068481, -0.7146933078765869, -0.549763023853302, -0.11895440518856049, 0.5944733619689941, 0.46897026896476746, 0.03513138368725777, -0.41634684801101685, -0.11872824281454086, 0.40422236919403076, 0.26827922463417053, 0.0015694501344114542, -0.1268347054719925, 0.18456166982650757, 0.060881517827510834, 0.1850985437631607, 0.20143119990825653, -0.07189079374074936, 0.19972868263721466, 0.16691307723522186, 0.16700705885887146, 0.14965561032295227, -0.07053949683904648, 0.2440711408853531}, {-0.30115965008735657, 0.3020112216472626, -0.6229689121246338, 0.19976438581943512, 0.25084272027015686, 0.08908466249704361, 0.12059653550386429, 0.03533867746591568, 0.2703179121017456, 0.3352479934692383, 0.3428271412849426, 0.4156206548213959, 0.3420707583427429, 0.2064814567565918, 0.35532060265541077, 0.08173895627260208, 0.07825019955635071, 0.221553236246109, 0.1776820570230484, 0.22577251493930817, 0.22278828918933868, 0.2640128433704376, 0.180125430226326, 0.11645812541246414, 0.3808441460132599, 0.1748972088098526, 0.04822747781872749, 0.20747071504592896}, {0.004458575043827295, 0.03752393275499344, 0.1197284460067749, 0.429423987865448, 0.2881259620189667, 0.6022155284881592, -0.4153423011302948, -0.5097853541374207, 0.42615923285484314, 0.44554516673088074, 0.7217490673065186, 0.8117141127586365, 0.72388756275177, 0.015255422331392765, -0.22130870819091797, 0.13519121706485748, 0.3975375294685364, 0.1678304821252823, 0.10857963562011719, -0.3138495981693268, 0.1589823067188263, 0.2486751675605774, 0.40141168236732483, 0.018049899488687515, -0.08904679864645004, -0.08511554449796677, 0.1515214890241623, 0.4401805102825165}, {-0.15634094178676605, -0.19944559037685394, -0.16159050166606903, 0.537737250328064, 0.047764409333467484, -0.14748850464820862, 0.1200181245803833, -0.07930611819028854, 0.1614770144224167, 0.7068870067596436, 0.5102498531341553, 0.8125320076942444, 0.9490340948104858, 0.2141641080379486, 0.5533105731010437, 0.23265130817890167, 0.15047943592071533, -0.514159083366394, -0.028046829625964165, 0.6813269257545471, 0.1514519900083542, -0.1020088791847229, -0.04611760750412941, 0.22561359405517578, 0.43252548575401306, -0.050761569291353226, -0.09585573524236679, -0.15603257715702057}, {-0.08421202749013901, 0.33921104669570923, -0.41581854224205017, -0.21174439787864685, 0.4582148492336273, 0.11856566369533539, 0.10920864343643188, -0.059966351836919785, 0.3425080180168152, 0.4195125102996826, 0.02871912717819214, 0.06811660528182983, 0.0683729499578476, 0.6100324988365173, 0.2850392162799835, -0.039775870740413666, -0.11169159412384033, -0.18508493900299072, 0.730349063873291, -0.10342872887849808, -0.19325177371501923, -0.12663674354553223, -0.11998621374368668, 1.3490771055221558, -0.5284110307693481, -0.12912636995315552, -0.060148727148771286, -0.1581180840730667}, {0.13426083326339722, -0.13176080584526062, 1.2296770811080933, -0.07961347699165344, -0.3992340862751007, -0.3328780233860016, -0.3540795147418976, -0.06446079909801483, -0.3728063106536865, -0.44019535183906555, -0.4748293459415436, -0.4214479923248291, -0.37979984283447266, -0.31887421011924744, -0.46707987785339355, -0.34212198853492737, -0.4332870543003082, -0.3801964819431305, -0.3589206337928772, -0.49498450756073, -0.5273376107215881, -0.4567064344882965, -0.40370914340019226, -0.004378970246762037, -0.3736163079738617, -0.3421406149864197, -0.34401506185531616, -0.011685256846249104}, {0.08239886164665222, -0.8746750354766846, 0.520552933216095, -0.2309003621339798, -0.27933767437934875, -0.20904868841171265, -0.29178568720817566, -0.056779034435749054, -0.28577834367752075, -0.25492337346076965, -0.26360198855400085, -0.2623720169067383, -0.2106320858001709, -0.11835736036300659, -0.04690302908420563, -0.06490934640169144, -0.13744433224201202, -0.21501925587654114, -0.036219630390405655, -0.11873988062143326, -0.09084317088127136, -0.2095029354095459, -0.11422516405582428, -0.016950659453868866, -0.2354726791381836, -0.17757123708724976, -0.05872594937682152, -0.23141008615493774}, {0.030258534476161003, -0.5337088108062744, -0.06049085408449173, -0.06599123775959015, -0.016824429854750633, -0.1420319825410843, -0.03433123230934143, -0.10755813121795654, -0.011755664832890034, -0.033444661647081375, -0.10537318140268326, -0.04665432870388031, -0.0709884762763977, -0.09382390230894089, -0.05977355316281319, -0.006864430848509073, -0.07894037663936615, -0.07580714672803879, -0.12620750069618225, -0.07429014146327972, -0.11756139993667603, -0.03486189246177673, -0.07912899553775787, -0.038790758699178696, -0.06529578566551208, -0.020097605884075165, -0.06760886311531067, 0.006338239647448063}, {-0.008149570785462856, -0.2281409353017807, -0.02317221276462078, 0.10482294857501984, -0.026631563901901245, -0.02272041141986847, -0.1762792021036148, -0.06379090994596481, 0.28265300393104553, 0.1829858273267746, -0.1753186285495758, -0.16000571846961975, -0.03318013623356819, 0.28647878766059875, 0.06253796070814133, -0.3300016224384308, -0.10609311610460281, -0.14531269669532776, -0.7605944275856018, -0.4989122152328491, -0.3356994390487671, -0.05982646346092224, 0.06342680007219315, -0.04135109484195709, 0.32415950298309326, 0.2208917886018753, -0.07768300175666809, -0.15703800320625305}, {0.03806011378765106, -0.6677188873291016, 0.15192484855651855, -0.16433456540107727, -0.34537896513938904, -0.020495647564530373, -0.03346096724271774, 0.223424032330513, -0.02972494252026081, -0.3487086594104767, -0.0456627681851387, -0.11218554526567459, -0.00014366689720191061, 0.4491022527217865, -0.5417236089706421, -0.6263294816017151, -0.6973318457603455, -0.9182674288749695, -0.2974551320075989, -0.7037410736083984, 0.0874515250325203, 0.14197714626789093, 0.4558337330818176, -0.5843172669410706, -0.5606727004051208, 0.45348820090293884, 0.44328850507736206, 0.4209005534648895}, {-0.08474959433078766, 0.15526627004146576, -0.7985652089118958, 0.21260187029838562, 0.3656609356403351, 0.12335719168186188, 0.060457415878772736, 0.24970696866512299, 0.4984481930732727, 0.3631579279899597, 0.26680564880371094, 0.5937404036521912, 0.2675668001174927, 0.26715323328971863, -0.2635864317417145, -0.6670373678207397, 0.5595815181732178, 0.3275291323661804, 0.3265022933483124, -0.0923314318060875, 0.2361195683479309, 0.8254050016403198, 0.5882598757743835, 0.8333842158317566, 0.4826344847679138, 0.6576237082481384, 0.013852320611476898, -0.13133659958839417}, {-0.03767941892147064, -0.16735343635082245, 0.07242633402347565, 0.09715986251831055, -0.08629732578992844, -0.12105050683021545, 0.19429436326026917, -1.189113974571228, -0.0438414141535759, -0.13045798242092133, 0.17313389480113983, 0.222298264503479, -0.6784869432449341, 0.044389013200998306, -0.04566064849495888, 0.1745270937681198, -0.18878957629203796, -0.68072509765625, -0.17901289463043213, -0.13348782062530518, -0.280407577753067, -0.5236465930938721, -0.09434037655591965, 0.3562553822994232, -0.14296357333660126, -0.17816492915153503, -0.262240469455719, 0.2708267867565155}, {-0.14643076062202454, 0.3134414553642273, -0.016158653423190117, 0.4832289218902588, 0.35327669978141785, 0.033485930413007736, 1.404250144958496, -0.4109203517436981, 0.3232615888118744, 0.03948039561510086, 0.14370359480381012, 1.0806249380111694, -0.43028610944747925, 0.19681444764137268, 0.3559668958187103, 0.24551646411418915, 0.7668668031692505, 0.26227831840515137, 0.24610893428325653, 0.03931723162531853, 0.1685093492269516, 0.42881014943122864, 0.605613648891449, 0.07715323567390442, 0.2259686291217804, 0.12414932996034622, 0.28258103132247925, 0.6711070537567139}, {-0.03460083529353142, 0.015175103209912777, -0.0020290936809033155, -0.2801230251789093, -0.049781594425439835, -0.08237257599830627, -0.24321754276752472, -0.30726316571235657, -0.1131473034620285, -0.016173556447029114, -0.0010477738687768579, -0.20699340105056763, -0.2045988142490387, -0.10566984117031097, -0.0597367063164711, -0.1446806639432907, -0.008996298536658287, -0.1636381596326828, -0.34909534454345703, -0.10394063591957092, 0.07907130569219589, 0.0491563156247139, 0.07572714239358902, 0.8712359666824341, 0.8652707934379578, 0.8136559128761292, 0.7329977750778198, 0.4842419922351837}, {0.028292212635278702, -0.6930311322212219, 0.4168195426464081, -0.722553014755249, 0.6128503084182739, 0.37802034616470337, -0.12130801379680634, -0.16137754917144775, -0.4547799825668335, 0.019849296659231186, -0.07699695229530334, 0.02751479111611843, 0.11456470936536789, -0.46225056052207947, -0.4128100574016571, -0.21820463240146637, -0.05070912092924118, -0.012455608695745468, 0.17457029223442078, -0.6548964381217957, 0.2514891028404236, 0.09665688127279282, -0.023784032091498375, 0.34345829486846924, -1.0899158716201782, 0.057933658361434937, -0.10579057782888412, -0.09446477890014648}, {0.06298044323921204, -0.5140762329101562, 0.10901061445474625, 0.25055184960365295, 0.16310572624206543, 0.1660183221101761, -0.2003139704465866, -0.25939759612083435, -0.759786069393158, -0.5441654324531555, -0.433865487575531, -0.2903525233268738, 0.20317135751247406, -0.05961161479353905, 0.1883774697780609, 0.07006954401731491, -0.348635733127594, 0.00569637306034565, -0.12705902755260468, 0.06386853754520416, 0.30274978280067444, -0.06455851346254349, -0.16498570144176483, -0.2735350728034973, -0.05759710818529129, -0.09640154242515564, -0.2553178668022156, 0.1108042374253273}, {0.16303423047065735, -0.840851902961731, 0.3045694828033447, 0.5177968144416809, 0.010460598394274712, -0.0009595230803824961, -0.164739727973938, -0.2865234613418579, -0.1834029257297516, 0.4267294108867645, 0.0837775319814682, -0.5739225745201111, -0.17942845821380615, 0.06667495518922806, 0.46038922667503357, 0.14962272346019745, -0.34685906767845154, 0.23869825899600983, -0.28814902901649475, -0.7657412886619568, -0.866352379322052, -0.9862637519836426, -0.18093055486679077, -0.2750402092933655, -0.2612379789352417, 0.14520415663719177, 0.41632893681526184, -0.3018798232078552}, {-0.15189743041992188, 0.24816209077835083, -0.39726874232292175, 0.10362628102302551, 0.22738219797611237, 0.13067540526390076, 0.29548943042755127, 0.37722209095954895, 0.17870138585567474, 0.2407064139842987, 0.19497083127498627, 0.3211122453212738, -0.09292492270469666, -0.12265130877494812, 0.4053817391395569, -0.11827366054058075, 0.45297837257385254, 0.11928819864988327, 0.9772109389305115, 0.5449104905128479, 0.39806750416755676, 0.4030953049659729, 0.16402702033519745, -0.14901259541511536, -0.15305542945861816, 0.16489744186401367, 0.21413367986679077, 0.5390959978103638}, {-0.054573457688093185, -0.22824183106422424, -0.3203968405723572, -0.15810002386569977, 0.5835301876068115, 0.38719215989112854, 0.4236435294151306, 0.640129566192627, -0.14881178736686707, 0.47540283203125, 0.09412529319524765, 0.06462755799293518, -0.6389226317405701, -0.10056259483098984, 0.5633905529975891, 0.08276329189538956, -0.1411363184452057, -0.009574373252689838, -0.03582749515771866, 0.6443657279014587, -0.017103971913456917, -0.17268119752407074, 0.06117372587323189, -0.04281193017959595, 0.7488794922828674, -0.06866982579231262, 0.06887611001729965, -0.11549514532089233}, {0.01342778280377388, -0.4836217761039734, -0.11072295904159546, 0.6476761698722839, 0.5931163430213928, -0.7808675169944763, -0.35797253251075745, -0.2272079437971115, 0.7021985054016113, -0.022765103727579117, -0.8641810417175293, -0.20821577310562134, -0.1716800034046173, -0.2285567671060562, -0.4907127618789673, -0.4427620768547058, 0.20067904889583588, 0.24365925788879395, -0.2677304446697235, -0.33728840947151184, 0.0702209398150444, 0.09022712707519531, 0.1330493539571762, -0.3614550530910492, -0.30246731638908386, 0.012839858420193195, 0.3226088583469391, 0.06072837859392166}, {-0.040193911641836166, -0.6861724853515625, -0.4070025682449341, 0.1424286812543869, 0.21161821484565735, 0.36073726415634155, 0.3628085255622864, -0.0990212932229042, 0.42990466952323914, 0.5575714707374573, 0.37092170119285583, 0.2522738575935364, 0.1157609149813652, 0.47637075185775757, 0.48690155148506165, 0.30947044491767883, 0.2960883677005768, 0.07852909713983536, 0.3973768353462219, 0.13431915640830994, 0.36592432856559753, 0.17452998459339142, 0.13116753101348877, -0.42777925729751587, -0.37024176120758057, -0.43283072113990784, -0.5338147878646851, -0.4905080199241638}, {-0.12332254648208618, 0.23759916424751282, -0.2621895968914032, 0.03406616672873497, 0.5511227250099182, -0.12509968876838684, -0.4177529215812683, -0.47927144169807434, 0.14296410977840424, 0.4820209741592407, 0.22033001482486725, -0.13066789507865906, -0.7484548091888428, 0.23563754558563232, 0.2622942626476288, 0.582843542098999, 0.7955005764961243, 0.9946928024291992, 0.14746436476707458, 0.043333325535058975, -0.07848695665597916, 0.10714565217494965, 0.12493138015270233, 0.1611987203359604, 0.04742865636944771, -0.26901474595069885, -0.10293031483888626, 0.010696852579712868}, {0.04099375382065773, -3.2305996417999268, 0.2543967366218567, -0.059577129781246185, -0.14682938158512115, -0.0733993723988533, -0.07150989025831223, -0.08204008638858795, -0.12635663151741028, -0.10393626242876053, -0.022796161472797394, 0.007641270756721497, -0.08665978163480759, -0.01694418303668499, -0.0025942830834537745, -0.03163212165236473, -0.022262264043092728, -0.07357636839151382, -0.07581206411123276, -0.06286846846342087, -0.1153038740158081, -0.04352688044309616, -0.08158870041370392, -0.08570341020822525, -0.06179278343915939, -0.11247510462999344, 0.0021329170558601618, -0.029320182278752327}, {0.029462160542607307, -0.5271976590156555, 0.18926401436328888, 0.02871791645884514, -0.23120182752609253, -0.786915123462677, 0.6471821665763855, 0.4379161298274994, 0.20970848202705383, -0.06591341644525528, -0.7760671973228455, 0.38167643547058105, 0.5764249563217163, 0.014545980840921402, 0.17091333866119385, -0.9253398776054382, -0.09902273863554001, -0.05899110808968544, 0.4204649329185486, 0.21064306795597076, -0.5640349984169006, -0.24353162944316864, -0.18500371277332306, -0.026613807305693626, -0.06437907367944717, -0.34146401286125183, -0.35460934042930603, -0.2743520736694336}, {-0.052965063601732254, -0.5605072379112244, 0.07962799817323685, -0.02648513950407505, -0.2291896939277649, -0.16507042944431305, -0.016116635873913765, 0.4122294485569, 0.023346038535237312, 0.06569206714630127, -0.0031419098377227783, 0.18163825571537018, 0.08935528993606567, -0.09544392675161362, -0.3773246705532074, 0.0589076466858387, 0.40520086884498596, -0.07905229926109314, -0.49348345398902893, -0.35177019238471985, -0.5805748105049133, 0.30384382605552673, 0.058458756655454636, -0.26937973499298096, -0.2887529134750366, -0.48755502700805664, 0.22864623367786407, 0.08268418908119202}, {-0.1134001687169075, -0.1595868170261383, 0.14256395399570465, 0.029054423794150352, 0.15920008718967438, 0.11821631342172623, 0.41081133484840393, 0.22583164274692535, 0.4875009059906006, -0.017819786444306374, 0.18353310227394104, 0.18164801597595215, 0.5451951622962952, 0.04068929702043533, 0.5024164319038391, 0.4954160749912262, 0.15857921540737152, 0.07034330070018768, 0.10076071321964264, -0.22763016819953918, 0.3141815662384033, 0.10078883916139603, 0.3922852873802185, 0.34453365206718445, 0.168269544839859, 0.42013704776763916, 0.07419819384813309, -0.14518938958644867}, {-0.06957618147134781, -0.06440338492393494, -0.7259829640388489, 0.5161219835281372, 0.09093577414751053, 0.4290890097618103, 0.4202098250389099, -0.027972804382443428, 0.545386791229248, 0.44505423307418823, -0.12706060707569122, 0.10054849833250046, 0.056948449462652206, 0.08831918239593506, 0.8375925421714783, 0.025092219933867455, 0.21887224912643433, 0.2599436938762665, -0.6995351910591125, 0.9659162163734436, 0.2467847764492035, 0.5137833952903748, 0.21108582615852356, -0.11285984516143799, 1.2240996360778809, -0.16404935717582703, 0.22046460211277008, 0.013526036404073238}, {-0.004826321732252836, -0.005929495673626661, 0.07865772396326065, -0.35655465722084045, -0.260633260011673, -0.37299594283103943, -0.3571874499320984, 0.6748940348625183, -0.013674028217792511, -0.27069777250289917, -0.28626859188079834, -0.02211541309952736, 0.8759161233901978, -0.2193540334701538, -0.2950937747955322, -0.1518949717283249, -0.01741132326424122, 0.7278527617454529, -0.10758645832538605, -0.14286479353904724, -0.12058365345001221, 0.05432174354791641, 0.7359171509742737, -0.20074452459812164, -0.24474677443504333, -0.20014965534210205, -0.2710004448890686, 0.5048877596855164}, {0.06318517029285431, -0.06626387685537338, 0.09102978557348251, 0.2806074619293213, -0.5871695280075073, 0.01448263693600893, -0.17774152755737305, -0.015175321139395237, 0.26823174953460693, -0.5144285559654236, -0.10162042826414108, -0.11051122844219208, -0.056919533759355545, -0.0963352620601654, -0.292245477437973, 0.07747644931077957, 0.049891501665115356, 0.04416292905807495, -0.10346058011054993, -0.27070391178131104, 0.16639839112758636, 0.13697180151939392, -0.03080388717353344, -0.3958549499511719, -0.08085988461971283, -0.15026159584522247, -0.2458583563566208, -0.1183728277683258}, {-0.031412992626428604, -0.5603559017181396, 0.23181116580963135, 0.13550354540348053, 0.1384330689907074, 0.466655433177948, 0.013126186095178127, -0.1315859854221344, 0.19236598908901215, 0.18724070489406586, 0.3651496469974518, -0.2081764191389084, -0.21705558896064758, -0.8947001695632935, -0.8844435811042786, -0.9548132419586182, -0.8363487720489502, -0.43193918466567993, 0.14401763677597046, 0.17948108911514282, 0.22730839252471924, -0.05247826129198074, -0.04454374313354492, 0.22061742842197418, 0.2703307569026947, 0.2895837426185608, -0.10765346139669418, -0.1715518683195114}, {-0.08773751556873322, 0.1905992329120636, -0.1878463476896286, -0.06142798811197281, -0.07157573848962784, -0.15859191119670868, 0.2888740599155426, 0.29501354694366455, -0.18804210424423218, 0.03719957917928696, 0.04348141327500343, 0.43497395515441895, 0.3348860740661621, 0.046619195491075516, -0.012931774370372295, 0.43330755829811096, 0.783429741859436, 0.7513718605041504, 0.42782992124557495, 0.4602666199207306, 0.8619009256362915, 0.21070736646652222, -0.6946675181388855, 0.36241528391838074, 0.5762568712234497, 0.41478705406188965, -0.7064434289932251, -0.7981423139572144}, {0.0158368032425642, -0.46186450123786926, -0.04968561232089996, 0.08248921483755112, 0.09503590315580368, -0.02358037419617176, -0.31207606196403503, 0.5838796496391296, -0.015739191323518753, 0.14295169711112976, 0.06756915897130966, -0.23699864745140076, -0.031251370906829834, 0.044411782175302505, 0.07595864683389664, -0.06131885573267937, -0.2911010682582855, -0.03894522413611412, 0.26580068469047546, 0.10324547439813614, -0.22770865261554718, -0.43839356303215027, -0.10662800073623657, -1.1684633493423462, -0.6824188828468323, -0.5405550003051758, -0.3048187494277954, 0.12504103779792786}};
-
-const float dense1_biases[DENSE_NUM] =
-{-0.1444406658411026, -0.9969395995140076, -0.6437257528305054, -0.5090100169181824, -0.4562266170978546, -0.7947681546211243, -0.66095370054245, -0.0757993534207344, -0.6305758357048035, -0.6522586345672607, -0.6137698292732239, 0.06795938313007355, -0.5988752841949463, -0.022649021819233894, -0.559893012046814, -0.34122252464294434, 0.21291229128837585, -0.9544443488121033, -0.5839042663574219, -0.3325875997543335, -0.8768086433410645, -0.3371303975582123, -0.804802417755127, -0.7296857833862305, -0.24707458913326263, -0.9100144505500793, -0.7247095704078674, -0.6324146389961243, -0.42117181420326233, -1.2145949602127075, -0.7118635177612305, -0.9112556576728821, -0.21369697153568268, -0.10298735648393631, -0.8274878263473511, -0.6126794219017029, -0.7786099314689636, -0.5083696246147156, -0.38434338569641113, -0.468181848526001, -0.5246707201004028, -0.6266580820083618, -0.3932459354400635, -0.6446056365966797, -0.8690927028656006, -0.7806448936462402, -0.7514670491218567, -0.4992736577987671, -0.4725331962108612, -0.8359085321426392, -0.3995131254196167, -0.701408326625824, 0.13735836744308472, -0.7701425552368164, 0.37747254967689514, -0.8496323227882385, -0.41388845443725586, -0.3626680374145508, -0.4750637412071228, -1.0076007843017578, -0.4247843325138092, -0.8280375599861145, -0.8584521412849426, -0.49181294441223145};
-
-const float output_weights[2][DENSE_NUM] =
-{{-0.10164133459329605, -0.06545510143041611, -0.12559004127979279, -0.09770263731479645, 0.020511239767074585, -0.11956804245710373, 0.0725698173046112, 0.09884587675333023, 0.03334106504917145, -0.07531746476888657, -0.04404358193278313, 0.04667624458670616, -0.10733920335769653, 0.11603111028671265, -0.09832630306482315, -0.029710080474615097, 0.6112914681434631, 0.09875980764627457, 0.04528747498989105, 0.04975724592804909, 0.05296019837260246, -0.1494731307029724, 0.06372635811567307, 0.05117323249578476, -0.4960876405239105, 0.08172430098056793, 0.09049712121486664, 0.16494503617286682, 0.12463495880365372, 0.10889994353055954, 0.0901939794421196, -0.07425925135612488, -0.09327994287014008, 0.07225991785526276, 0.0995996817946434, 0.1002214103937149, 0.13605892658233643, -0.2738678455352783, 0.07213583588600159, 0.031051557511091232, -0.09413432329893112, -0.05657240375876427, 0.023954149335622787, -0.11132869869470596, 0.0918613076210022, 0.1731780767440796, -0.048148252069950104, -0.08594620227813721, -0.07079077512025833, 0.028347637504339218, 0.04007003828883171, -0.08521876484155655, -0.13736766576766968, 0.0973486453294754, -0.3953056037425995, -0.09303829818964005, 0.0926792323589325, 0.08662958443164825, 0.07239469885826111, 0.12995171546936035, -0.08624651283025742, -0.13703757524490356, 0.1074426919221878, -0.05400789529085159}, {0.09475231915712357, 0.10763916373252869, 0.10490848124027252, 0.051702577620744705, -0.025973767042160034, 0.1243276372551918, -0.09184729307889938, -0.09110323339700699, -0.10927686840295792, 0.07648954540491104, 0.08314546942710876, -0.054432936012744904, 0.11420167982578278, -0.14501862227916718, 0.07449985295534134, 0.04114171117544174, -0.5540419816970825, -0.11702275276184082, -0.057106584310531616, -0.11389349400997162, -0.04799086973071098, 0.11528362333774567, -0.10561501979827881, -0.06099977344274521, 0.5406088829040527, -0.07843243330717087, -0.07121624052524567, -0.15534670650959015, -0.10739737004041672, -0.10599866509437561, -0.03090781159698963, 0.1024080142378807, 0.11164399981498718, -0.10347762703895569, -0.09762325882911682, -0.044070787727832794, -0.1382112205028534, 0.2635824978351593, -0.013381495140492916, -0.017522230744361877, 0.09075458347797394, 0.08058229833841324, -0.03840004280209541, 0.08596818149089813, -0.10802465677261353, -0.17988164722919464, 0.08185803890228271, 0.09076226502656937, 0.042497776448726654, -0.0991385206580162, -0.03188726678490639, 0.0789727196097374, 0.12080144137144089, -0.12002957612276077, 0.3941708207130432, 0.07739747315645218, -0.04954647645354271, -0.10626203566789627, -0.054530855268239975, -0.19077910482883453, 0.07939524203538895, 0.10724455863237381, -0.09315766394138336, 0.07806982845067978}};
-
-const float output_bias[2] =
-{0.3762611150741577, 0.6172211170196533};
-
A include/weights_5.c => include/weights_5.c +735 -0
@@ 0,0 1,735 @@
+/*
+ * Model: "model"
+ * _________________________________________________________________
+ * Layer (type) Output Shape Param #
+ * =================================================================
+ * input_1 (InputLayer) [(None, 28)] 0
+ *
+ * dense (Dense) (None, 64) 1856
+ *
+ * dense_1 (Dense) (None, 2) 130
+ *
+ * =================================================================
+ * Total params: 1,986
+ * Trainable params: 1,986
+ * Non-trainable params: 0
+ * _________________________________________________________________
+ * ([0.5177317261695862, 0.755382776260376], [0.5241230130195618,
+ * 0.7530876398086548])
+ */
+
+#include "weights_5.h"
+
+const float five_dense_weights[FIVE_DENSE_NUM][FIVE_INP_NUM] = {
+ {0.0335812121629715, -0.21365489065647125, -0.653753936290741,
+ -0.13572198152542114, 0.18898768723011017, 0.06430475413799286,
+ 0.1521165519952774, -0.6386323571205139, 0.5113293528556824,
+ 0.3224753439426422, 0.3006350100040436, 0.4426257014274597,
+ -0.4259096086025238, 0.34491172432899475, 0.26074907183647156,
+ 0.30206671357154846, 0.2114274799823761, -0.5099963545799255,
+ 0.38777005672454834, 0.23917558789253235, 0.32478395104408264,
+ 0.2528369724750519, -0.5045477747917175, 0.10504062473773956,
+ 0.34629005193710327, 0.28095799684524536, 0.31814444065093994,
+ -0.7089307904243469},
+ {0.0565570704638958, -0.4527612030506134, 0.22363899648189545,
+ -0.4776171147823334, -0.4429882764816284, 0.09122249484062195,
+ 0.08279165625572205, 0.29376256465911865, -0.23718500137329102,
+ -0.5789054036140442, 0.28780052065849304, 0.6442199945449829,
+ 0.03741508722305298, -0.220468670129776, -0.644933819770813,
+ -0.13106265664100647, 0.5042467713356018, 0.43313512206077576,
+ 0.5279864072799683, -0.5684875249862671, -0.8156968355178833,
+ -0.5465362668037415, -0.5424111485481262, 0.04707803204655647,
+ 0.2047167718410492, -0.3449491560459137, -0.26257622241973877,
+ -0.4042203426361084},
+ {0.002476541558280587, -0.21414169669151306, -0.11842579394578934,
+ 0.14450429379940033, -0.01525128073990345, -0.12563736736774445,
+ -0.27338773012161255, 0.009645791724324226, -0.25494587421417236,
+ -0.2797246277332306, -0.2301362156867981, -0.40248778462409973,
+ -0.2902604341506958, 0.19436009228229523, -0.11030247807502747,
+ 0.08137191087007523, -0.1867382973432541, -0.7496097683906555,
+ -0.008727616630494595, 0.22033251821994781, 0.19767463207244873,
+ 0.11307194083929062, -0.8412720561027527, 0.2657962143421173,
+ -0.07668104767799377, 0.06086883693933487, 0.3835994601249695,
+ -1.091362476348877},
+ {0.05102699622511864, -0.8378904461860657, 0.4566768705844879,
+ -0.2630152404308319, -0.23932738602161407, -0.19857573509216309,
+ 0.30443575978279114, -0.14038261771202087, -0.14678728580474854,
+ -0.40179580450057983, -0.35921597480773926, -0.14929337799549103,
+ 0.12302257865667343, 0.10777170211076736, -0.12337932735681534,
+ -0.33727583289146423, -0.28758835792541504, 0.37838035821914673,
+ 0.3109462559223175, 0.15170936286449432, 0.17238374054431915,
+ -0.7253879308700562, -0.23942553997039795, 0.11120962351560593,
+ 0.2859588861465454, 0.4778689444065094, -0.679128885269165,
+ -0.226375013589859},
+ {0.03254811838269234, -0.20261096954345703, -0.07562973350286484,
+ -0.10781332850456238, -0.10312259197235107, -0.07764437049627304,
+ -0.04054751992225647, -0.07112596929073334, -0.06557303667068481,
+ -0.12047363817691803, -0.062015969306230545, -0.026542047038674355,
+ -0.01934126764535904, -0.09312712401151657, -0.03113151155412197,
+ -0.051008112728595734, -0.05768309533596039, -0.10491270571947098,
+ -0.0717678889632225, -0.04455398768186569, -0.02723315730690956,
+ -0.057788874953985214, -0.0033781195525079966, -0.03603564202785492,
+ -0.006476488430052996, -0.021566126495599747, -0.04043968394398689,
+ 0.007654271088540554},
+ {-0.08095347136259079, -0.26414069533348083, -0.09814666211605072,
+ -0.04380079358816147, -0.5849603414535522, -0.7097421288490295,
+ -0.9047000408172607, -1.3424301147460938, -0.31041404604911804,
+ -0.25597554445266724, -0.11997552961111069, 0.20276427268981934,
+ 0.36256903409957886, 0.019292958080768585, -0.041115161031484604,
+ 0.12530303001403809, 0.20739392936229706, 0.3235205411911011,
+ -0.05591806769371033, -0.05841316655278206, 0.038499265909194946,
+ 0.18055571615695953, 0.293590784072876, 0.16785693168640137,
+ 0.24048064649105072, 0.07176923751831055, 0.08983936905860901,
+ 0.22106173634529114},
+ {-0.017707331106066704, 0.12255413830280304, -0.6240278482437134,
+ -0.04464518278837204, -0.1846076399087906, 0.6399872899055481,
+ 0.12881889939308167, 0.22656285762786865, -0.1679985672235489,
+ -0.28858682513237, 0.5312493443489075, 0.049816571176052094,
+ -0.24046465754508972, -0.1774766743183136, -0.09163064509630203,
+ 0.7954617142677307, -0.39598366618156433, -0.4399476945400238,
+ 0.6123018860816956, 0.45216771960258484, 0.6593272089958191,
+ -0.07644930481910706, -0.4521935284137726, 0.012832398526370525,
+ 0.028779083862900734, 0.6450971961021423, 0.575737714767456,
+ 0.6349318027496338},
+ {-0.03650929406285286, -0.14473311603069305, -0.5584736466407776,
+ -0.029627997428178787, -0.1539306640625, -0.12314235419034958,
+ 0.08387640863656998, -0.0337577685713768, -0.17351587116718292,
+ -0.19245818257331848, -0.16416308283805847, 0.016272591426968575,
+ 0.36373433470726013, 0.04089183360338211, 0.02371835894882679,
+ -0.22523774206638336, -0.15100933611392975, 0.45591863989830017,
+ -0.1123512014746666, 0.061778921633958817, -0.13473178446292877,
+ -0.40654733777046204, 0.4156742990016937, -0.03619186207652092,
+ 0.24843069911003113, 0.29947373270988464, 0.36726078391075134,
+ 1.2590346336364746},
+ {-0.1366739124059677, 0.41514185070991516, -0.2774442732334137,
+ -0.3785100281238556, -0.43781572580337524, 0.0857686847448349,
+ 0.548991322517395, 0.3008037805557251, -0.710213303565979,
+ 0.02195434831082821, 0.5724306702613831, 0.5335829854011536,
+ 0.09624887257814407, 1.017358660697937, 0.8264562487602234,
+ 0.4335733652114868, 0.2976129651069641, -0.07695961743593216,
+ 0.08250663429498672, 0.12967929244041443, -0.04427557811141014,
+ 0.24989163875579834, 0.08119788765907288, 0.05688076093792915,
+ 0.14414691925048828, -0.15780726075172424, 0.12778723239898682,
+ 0.17664006352424622},
+ {0.045846302062273026, -0.4202306270599365, 0.24253332614898682,
+ 0.058551233261823654, 0.13127459585666656, -0.08259733766317368,
+ -0.5951005220413208, 0.010317057371139526, 0.32319802045822144,
+ -0.2788604497909546, -0.10889868438243866, -0.6505680084228516,
+ 0.0621410608291626, -0.22810311615467072, -0.0803237184882164,
+ 0.4647519290447235, -0.6627072691917419, 0.20077340304851532,
+ 0.1278313249349594, 0.021397558972239494, -0.017719708383083344,
+ -0.65326988697052, 0.03247045353055, -0.003151470795273781,
+ -0.089555524289608, -0.21280834078788757, -0.18042130768299103,
+ -0.13124220073223114},
+ {0.08920250833034515, -0.4041590988636017, 0.11126764863729477,
+ -0.38825124502182007, -0.37751445174217224, 0.3841644823551178,
+ 0.13915617763996124, -0.427076131105423, -0.42071813344955444,
+ -0.8185845017433167, -0.6395564675331116, -0.3830700218677521,
+ -0.34343987703323364, 0.14143605530261993, 0.2065681666135788,
+ -0.5982153415679932, -0.2753662168979645, -0.5253153443336487,
+ 0.1136728972196579, 0.303848534822464, -0.3599269390106201,
+ -0.48723894357681274, 0.1170220747590065, 0.1082770973443985,
+ 0.2027408331632614, -0.6000553369522095, -0.2399190366268158,
+ 0.21266664564609528},
+ {-0.044174984097480774, 0.10084715485572815, -0.7766823768615723,
+ 0.5814716219902039, 0.2989753484725952, -0.04704820364713669,
+ -0.23142951726913452, 0.16222569346427917, 0.026166614145040512,
+ 0.3819707930088043, 0.0457681305706501, -0.0551467202603817,
+ 0.09645840525627136, -0.28990161418914795, 0.11402436345815659,
+ 0.445557564496994, 0.3328436315059662, 0.6563848853111267,
+ -0.22550760209560394, 0.1100253015756607, -0.29362085461616516,
+ 0.35912737250328064, 0.07314564287662506, 0.3241541087627411,
+ -0.04152493178844452, -0.18172766268253326, 0.3779054582118988,
+ 0.30225080251693726},
+ {0.0354388952255249, -0.45912227034568787, 0.07555098086595535,
+ -0.047884486615657806, 0.12533819675445557, 0.11261603981256485,
+ 0.5056780576705933, -0.15080063045024872, -0.14207696914672852,
+ -0.24237896502017975, -0.4537515342235565, -0.7382211685180664,
+ -1.396830439567566, -0.05796787142753601, -0.0972527340054512,
+ -0.0011085039004683495, 0.15182892978191376, 0.38325998187065125,
+ -0.013696794398128986, -0.05116301029920578, 0.24685567617416382,
+ 0.17722700536251068, -0.011363615281879902, 0.032823070883750916,
+ 0.23471832275390625, 0.2214534878730774, -0.12878315150737762,
+ 0.07269603759050369},
+ {0.1021164283156395, -0.979482114315033, 0.10424260795116425,
+ 0.20152615010738373, -0.4474649131298065, -0.5927112698554993,
+ -0.4682328701019287, -0.25608980655670166, -0.03509359434247017,
+ -0.3745705783367157, -0.5153190493583679, -0.5731074810028076,
+ -0.558528482913971, -0.08479820191860199, -0.38562700152397156,
+ -0.4411310851573944, -0.5317122340202332, -0.5145424604415894,
+ -0.046643827110528946, -0.2316707819700241, -0.3664470911026001,
+ -0.3545966148376465, -0.313737690448761, 0.09879656881093979,
+ -0.2625102400779724, -0.306001216173172, -0.29944929480552673,
+ 0.03161349147558212},
+ {-0.03801499307155609, -0.2233135849237442, -0.10620100051164627,
+ 0.2713835537433624, 0.21967564523220062, 0.251351535320282,
+ 0.16949021816253662, 0.15099139511585236, 0.05300286412239075,
+ 0.08299478143453598, 0.011512423865497112, 0.01530615333467722,
+ 0.07382016628980637, -0.18710920214653015, 0.03905392810702324,
+ 0.16468313336372375, 0.22495073080062866, 0.3159700930118561,
+ -0.1615748107433319, -0.16977524757385254, -0.17270493507385254,
+ 0.1490594446659088, 0.4793047308921814, -0.0045040980912745,
+ -0.3750409185886383, -0.5658650994300842, -0.7609032392501831,
+ -0.9970420598983765},
+ {-0.06860953569412231, 0.1561063975095749, 0.41900986433029175,
+ -0.09340472519397736, 0.05546368286013603, -0.32329270243644714,
+ -0.3049590587615967, -0.057696402072906494, -0.17760413885116577,
+ -0.21533682942390442, -0.06622635573148727, -0.20747050642967224,
+ -0.13626375794410706, -0.16855809092521667, -0.06624997407197952,
+ 0.17109455168247223, 0.265641987323761, 0.2269686758518219,
+ -0.31261059641838074, -0.3254770040512085, -0.17686116695404053,
+ -0.184734046459198, -0.17058107256889343, -0.13638293743133545,
+ -0.25341087579727173, -0.06822904199361801, -0.17498566210269928,
+ -0.15365538001060486},
+ {-0.09274652600288391, 0.8195863366127014, -0.6974982619285583,
+ 0.19567207992076874, 0.3114858567714691, 0.3193179965019226,
+ 0.3051777482032776, 0.1686609983444214, 0.28975042700767517,
+ 0.3609328269958496, 0.34076830744743347, 0.3451266586780548,
+ 0.2754822373390198, 0.2944789528846741, 0.3471467196941376,
+ 0.3111295998096466, 0.36336469650268555, 0.3138508200645447,
+ 0.3493599593639374, 0.3804861307144165, 0.3554949462413788,
+ 0.38007041811943054, 0.304755836725235, 0.1720620095729828,
+ 0.3196488618850708, 0.3476446270942688, 0.2819644510746002,
+ 0.20534354448318481},
+ {-0.04308394342660904, 0.4313099980354309, 0.0190417543053627,
+ -0.36723119020462036, -0.17420481145381927, 0.5145810842514038,
+ 0.5347347855567932, 0.6282756328582764, 1.2653520107269287,
+ 1.1850699186325073, 0.8361583352088928, 0.4141540825366974,
+ 0.26177582144737244, 0.06430555135011673, 0.4607594609260559,
+ -0.0807068794965744, -0.09359037131071091, 0.09638888388872147,
+ 0.525905191898346, 0.5729591250419617, -0.02258281223475933,
+ -0.17060524225234985, 0.12351763993501663, 0.08509236574172974,
+ 0.4710988402366638, 0.17080940306186676, 0.250908762216568,
+ -0.09069673717021942},
+ {0.07291662693023682, 0.08596876263618469, -0.08287191390991211,
+ 0.26005038619041443, 0.46491068601608276, 0.5783225893974304,
+ 0.15600703656673431, -0.26880383491516113, -0.17159603536128998,
+ 0.18245145678520203, 0.6828884482383728, -0.21175506711006165,
+ -0.057075608521699905, -0.31850534677505493, 0.12133979052305222,
+ 0.5726630091667175, -0.07307758182287216, -0.0253745187073946,
+ -0.05841955170035362, -0.2049519568681717, 0.542971670627594,
+ -0.0039001810364425182, -0.027620088309049606, -0.4046057164669037,
+ -0.07061299681663513, 0.5127297043800354, 0.17255832254886627,
+ -0.37250733375549316},
+ {-0.11166863888502121, 0.055800892412662506, -0.5167198777198792,
+ 0.2324250191450119, 0.40913817286491394, 0.6140636801719666,
+ 0.4707394242286682, 1.522460699081421, 0.28594499826431274,
+ 0.3309996426105499, 0.08542972803115845, -0.28014466166496277,
+ 0.139140322804451, 0.1942225694656372, 0.1311720907688141,
+ 0.06602678447961807, 0.13316340744495392, 0.5902721881866455,
+ 0.03358441963791847, -0.01826644130051136, 0.2206089198589325,
+ 0.3234162926673889, 0.29170212149620056, 0.027043171226978302,
+ 0.2018718421459198, -0.010219907388091087, 0.35940054059028625,
+ 0.07707080245018005},
+ {0.02553723379969597, 0.461318701505661, -0.4059189260005951,
+ 0.05942573770880699, -0.010037711821496487, -0.13757778704166412,
+ 0.22961010038852692, 0.2251977026462555, 1.0914969444274902,
+ 0.9033216834068298, 0.83197420835495, 0.7612583637237549,
+ 0.05771542713046074, -0.10955284535884857, -0.004019961226731539,
+ 0.4693775475025177, 0.07826275378465652, -0.13095584511756897,
+ -0.2168196588754654, -0.3515476584434509, 0.7580985426902771,
+ 0.20290978252887726, -0.16279703378677368, -0.06892823427915573,
+ -0.20307579636573792, 0.954958975315094, -0.2317219376564026,
+ -0.1928693652153015},
+ {0.062168460339307785, -0.5123471617698669, -0.263359934091568,
+ -0.7685256600379944, 0.08967547863721848, 0.24563723802566528,
+ 0.3980844020843506, 0.3117550015449524, -0.7312137484550476,
+ -0.06169243901968002, 0.25126340985298157, 0.2695813477039337,
+ 0.23361706733703613, -0.969958484172821, 0.12066813558340073,
+ 0.15110082924365997, 0.22164055705070496, 0.14506936073303223,
+ -0.8025405406951904, 0.26169300079345703, 0.11112350225448608,
+ 0.29015427827835083, 0.34564951062202454, -0.9369366765022278,
+ 0.41549447178840637, 0.2582719624042511, 0.3374422788619995,
+ 0.3025016188621521},
+ {-0.1270698755979538, 0.429225891828537, -0.49225398898124695,
+ -0.11553260684013367, -0.23649732768535614, 0.8932956457138062,
+ -0.11381787061691284, -0.300383061170578, -0.08516164869070053,
+ -0.04815308749675751, 0.6397905349731445, 0.05467788130044937,
+ -0.17419259250164032, 0.05954163148999214, 0.11605441570281982,
+ 0.46235892176628113, 0.005171304568648338, -0.3957885801792145,
+ 0.19777722656726837, 0.7243578433990479, 0.8090712428092957,
+ 0.8684667348861694, 1.0440218448638916, 0.435382217168808,
+ 0.20173248648643494, -0.50189208984375, -0.127868190407753,
+ -0.049834541976451874},
+ {0.0026459188666194677, 0.11711517721414566, -0.7256444692611694,
+ -0.08485592901706696, 0.9629834890365601, 0.09173507988452911,
+ 0.244176983833313, 0.24677251279354095, 0.15705431997776031,
+ 0.7062681913375854, -0.5933635234832764, -0.10675647109746933,
+ 0.04850605130195618, 0.13815787434577942, 0.4868027865886688,
+ -0.48046332597732544, 0.09973080456256866, 0.0552331916987896,
+ 1.0236599445343018, 1.0715246200561523, 0.8364623188972473,
+ 0.6795467138290405, 0.1431518793106079, -0.09264400601387024,
+ -0.24593685567378998, 0.0526106022298336, 0.5356892347335815,
+ 0.4176342785358429},
+ {-0.17575381696224213, 0.9493538737297058, -0.9680318832397461,
+ 0.344186007976532, 0.37747424840927124, 0.3827437460422516,
+ 0.3655855357646942, 0.32791411876678467, 0.3741169273853302,
+ 0.42540842294692993, 0.4716174900531769, 0.4630044102668762,
+ 0.4119097888469696, 0.43781936168670654, 0.4984303414821625,
+ 0.3960149586200714, 0.4152538776397705, 0.3874683082103729,
+ 0.37821871042251587, 0.41086938977241516, 0.436718225479126,
+ 0.38621312379837036, 0.3685840666294098, 0.3631429970264435,
+ 0.3682745099067688, 0.3622629940509796, 0.41871270537376404,
+ 0.3119860589504242},
+ {-0.06097084656357765, 0.3522926867008209, -0.07554367929697037,
+ 0.31942737102508545, 0.029151281341910362, 0.15592512488365173,
+ -0.0009292215690948069, 0.18485626578330994, 0.39177006483078003,
+ 0.2792249321937561, 0.12014344334602356, 0.09458812326192856,
+ 0.028401147574186325, 1.115199089050293, 0.8369911313056946,
+ 0.602891206741333, 0.28732630610466003, -0.11038826406002045,
+ -0.5364417433738708, -0.08979910612106323, 0.6724634766578674,
+ 0.34956303238868713, 0.27176162600517273, -0.5280332565307617,
+ -0.5781199932098389, 0.6316017508506775, 0.41322362422943115,
+ 0.18675293028354645},
+ {0.06110076978802681, 0.20676849782466888, -0.21055933833122253,
+ 0.14543284475803375, -0.2691429555416107, 0.23192094266414642,
+ -0.16181010007858276, -0.07387831062078476, 0.2630201280117035,
+ -0.1249636858701706, 0.16139020025730133, 0.12681415677070618,
+ 0.24008934199810028, 0.5166671872138977, 0.84417724609375,
+ 0.928178071975708, 0.5734097361564636, 0.7494409680366516,
+ 0.45103031396865845, 0.29169872403144836, -0.17037302255630493,
+ -0.6708592176437378, 0.1958291381597519, 0.17509706318378448,
+ 0.2388417273759842, -0.3683401942253113, -0.46702516078948975,
+ -0.12833642959594727},
+ {0.00030645611695945263, -0.19412267208099365, -0.1942126452922821,
+ 0.8911823034286499, 0.8041935563087463, 0.6952621936798096,
+ 0.5451593399047852, 0.4937603175640106, -0.24343731999397278,
+ -0.1464550644159317, -0.12816737592220306, 0.024196654558181763,
+ 0.036258477717638016, -0.1814306229352951, -0.21442382037639618,
+ -0.11105196923017502, -0.22053563594818115, -0.24859702587127686,
+ -0.22910651564598083, -0.2101702243089676, -0.14243045449256897,
+ -0.2865407168865204, -0.18984046578407288, -0.07871726900339127,
+ -0.2595853805541992, -0.24533933401107788, -0.26216810941696167,
+ -0.16304023563861847},
+ {0.052463531494140625, 0.1486791968345642, -0.579024612903595,
+ 1.088742733001709, -0.13386118412017822, -0.1609494388103485,
+ -0.09612634778022766, -0.09550110250711441, 0.9107480645179749,
+ -0.14887897670269012, -0.017151640728116035, 0.020924121141433716,
+ 0.04268282279372215, 0.9172422885894775, 0.04447457566857338,
+ -0.02752840891480446, 0.022488543763756752, -0.09672117233276367,
+ 0.8158107995986938, 0.15294760465621948, 0.04637422040104866,
+ 0.024195043370127678, -0.08632858097553253, 0.4717424511909485,
+ 0.18674905598163605, 0.10150022804737091, 0.025798514485359192,
+ -0.1546076387166977},
+ {0.029881251975893974, 0.49499452114105225, -0.026262039318680763,
+ 0.00900306273251772, -0.036245543509721756, -0.11946964263916016,
+ 0.172474667429924, 0.5267413854598999, 0.07936062663793564,
+ -0.15437465906143188, 0.16969208419322968, 0.7578750252723694,
+ 0.4837819039821625, 0.08440805226564407, 0.20724894106388092,
+ 0.07721617817878723, 0.7230514883995056, 0.023518960922956467,
+ 0.3058747947216034, 0.1142619401216507, 0.08739539235830307,
+ 0.8077057003974915, -0.38012027740478516, 0.23245155811309814,
+ 0.10439647734165192, -0.07647071778774261, 1.3155752420425415,
+ -0.46643584966659546},
+ {0.10903043299913406, -0.004875070881098509, 0.2575789988040924,
+ 0.14737094938755035, 0.43150651454925537, -0.5420994162559509,
+ -0.3059577941894531, -0.2527901232242584, 0.19769372045993805,
+ 0.38301345705986023, -0.10965324938297272, -0.21152931451797485,
+ -0.0738074779510498, 0.1658964455127716, 0.4326992332935333,
+ 0.4845859110355377, 0.1578446626663208, -0.10062657296657562,
+ -0.1752672642469406, -0.37322744727134705, 0.17257146537303925,
+ 0.2496408224105835, 0.12594257295131683, -0.37234362959861755,
+ -0.12441913038492203, -0.026296446099877357, 0.1662571132183075,
+ -0.0028839746955782175},
+ {-0.014218885451555252, -0.5738092064857483, 0.23660679161548615,
+ -0.10611919313669205, -0.12041497230529785, -0.1564393788576126,
+ -0.2974553406238556, -0.13557544350624084, -0.03920785337686539,
+ 0.22239501774311066, -0.6583126187324524, -0.4981720745563507,
+ -0.34942877292633057, 0.09956511110067368, 0.07194441556930542,
+ -0.8891360759735107, 0.09037145227193832, 0.4524118900299072,
+ 0.1884671002626419, 0.04436931014060974, -0.9194300770759583,
+ 0.5126015543937683, 0.5571795105934143, 0.25728949904441833,
+ 0.03548843413591385, -1.0185256004333496, 0.30711427330970764,
+ 0.39558374881744385},
+ {-0.014499297365546227, -0.6686705946922302, -0.036153871566057205,
+ -1.3211073875427246, -0.6752616167068481, -0.7146933078765869,
+ -0.549763023853302, -0.11895440518856049, 0.5944733619689941,
+ 0.46897026896476746, 0.03513138368725777, -0.41634684801101685,
+ -0.11872824281454086, 0.40422236919403076, 0.26827922463417053,
+ 0.0015694501344114542, -0.1268347054719925, 0.18456166982650757,
+ 0.060881517827510834, 0.1850985437631607, 0.20143119990825653,
+ -0.07189079374074936, 0.19972868263721466, 0.16691307723522186,
+ 0.16700705885887146, 0.14965561032295227, -0.07053949683904648,
+ 0.2440711408853531},
+ {-0.30115965008735657, 0.3020112216472626, -0.6229689121246338,
+ 0.19976438581943512, 0.25084272027015686, 0.08908466249704361,
+ 0.12059653550386429, 0.03533867746591568, 0.2703179121017456,
+ 0.3352479934692383, 0.3428271412849426, 0.4156206548213959,
+ 0.3420707583427429, 0.2064814567565918, 0.35532060265541077,
+ 0.08173895627260208, 0.07825019955635071, 0.221553236246109,
+ 0.1776820570230484, 0.22577251493930817, 0.22278828918933868,
+ 0.2640128433704376, 0.180125430226326, 0.11645812541246414,
+ 0.3808441460132599, 0.1748972088098526, 0.04822747781872749,
+ 0.20747071504592896},
+ {0.004458575043827295, 0.03752393275499344, 0.1197284460067749,
+ 0.429423987865448, 0.2881259620189667, 0.6022155284881592,
+ -0.4153423011302948, -0.5097853541374207, 0.42615923285484314,
+ 0.44554516673088074, 0.7217490673065186, 0.8117141127586365,
+ 0.72388756275177, 0.015255422331392765, -0.22130870819091797,
+ 0.13519121706485748, 0.3975375294685364, 0.1678304821252823,
+ 0.10857963562011719, -0.3138495981693268, 0.1589823067188263,
+ 0.2486751675605774, 0.40141168236732483, 0.018049899488687515,
+ -0.08904679864645004, -0.08511554449796677, 0.1515214890241623,
+ 0.4401805102825165},
+ {-0.15634094178676605, -0.19944559037685394, -0.16159050166606903,
+ 0.537737250328064, 0.047764409333467484, -0.14748850464820862,
+ 0.1200181245803833, -0.07930611819028854, 0.1614770144224167,
+ 0.7068870067596436, 0.5102498531341553, 0.8125320076942444,
+ 0.9490340948104858, 0.2141641080379486, 0.5533105731010437,
+ 0.23265130817890167, 0.15047943592071533, -0.514159083366394,
+ -0.028046829625964165, 0.6813269257545471, 0.1514519900083542,
+ -0.1020088791847229, -0.04611760750412941, 0.22561359405517578,
+ 0.43252548575401306, -0.050761569291353226, -0.09585573524236679,
+ -0.15603257715702057},
+ {-0.08421202749013901, 0.33921104669570923, -0.41581854224205017,
+ -0.21174439787864685, 0.4582148492336273, 0.11856566369533539,
+ 0.10920864343643188, -0.059966351836919785, 0.3425080180168152,
+ 0.4195125102996826, 0.02871912717819214, 0.06811660528182983,
+ 0.0683729499578476, 0.6100324988365173, 0.2850392162799835,
+ -0.039775870740413666, -0.11169159412384033, -0.18508493900299072,
+ 0.730349063873291, -0.10342872887849808, -0.19325177371501923,
+ -0.12663674354553223, -0.11998621374368668, 1.3490771055221558,
+ -0.5284110307693481, -0.12912636995315552, -0.060148727148771286,
+ -0.1581180840730667},
+ {0.13426083326339722, -0.13176080584526062, 1.2296770811080933,
+ -0.07961347699165344, -0.3992340862751007, -0.3328780233860016,
+ -0.3540795147418976, -0.06446079909801483, -0.3728063106536865,
+ -0.44019535183906555, -0.4748293459415436, -0.4214479923248291,
+ -0.37979984283447266, -0.31887421011924744, -0.46707987785339355,
+ -0.34212198853492737, -0.4332870543003082, -0.3801964819431305,
+ -0.3589206337928772, -0.49498450756073, -0.5273376107215881,
+ -0.4567064344882965, -0.40370914340019226, -0.004378970246762037,
+ -0.3736163079738617, -0.3421406149864197, -0.34401506185531616,
+ -0.011685256846249104},
+ {0.08239886164665222, -0.8746750354766846, 0.520552933216095,
+ -0.2309003621339798, -0.27933767437934875, -0.20904868841171265,
+ -0.29178568720817566, -0.056779034435749054, -0.28577834367752075,
+ -0.25492337346076965, -0.26360198855400085, -0.2623720169067383,
+ -0.2106320858001709, -0.11835736036300659, -0.04690302908420563,
+ -0.06490934640169144, -0.13744433224201202, -0.21501925587654114,
+ -0.036219630390405655, -0.11873988062143326, -0.09084317088127136,
+ -0.2095029354095459, -0.11422516405582428, -0.016950659453868866,
+ -0.2354726791381836, -0.17757123708724976, -0.05872594937682152,
+ -0.23141008615493774},
+ {0.030258534476161003, -0.5337088108062744, -0.06049085408449173,
+ -0.06599123775959015, -0.016824429854750633, -0.1420319825410843,
+ -0.03433123230934143, -0.10755813121795654, -0.011755664832890034,
+ -0.033444661647081375, -0.10537318140268326, -0.04665432870388031,
+ -0.0709884762763977, -0.09382390230894089, -0.05977355316281319,
+ -0.006864430848509073, -0.07894037663936615, -0.07580714672803879,
+ -0.12620750069618225, -0.07429014146327972, -0.11756139993667603,
+ -0.03486189246177673, -0.07912899553775787, -0.038790758699178696,
+ -0.06529578566551208, -0.020097605884075165, -0.06760886311531067,
+ 0.006338239647448063},
+ {-0.008149570785462856, -0.2281409353017807, -0.02317221276462078,
+ 0.10482294857501984, -0.026631563901901245, -0.02272041141986847,
+ -0.1762792021036148, -0.06379090994596481, 0.28265300393104553,
+ 0.1829858273267746, -0.1753186285495758, -0.16000571846961975,
+ -0.03318013623356819, 0.28647878766059875, 0.06253796070814133,
+ -0.3300016224384308, -0.10609311610460281, -0.14531269669532776,
+ -0.7605944275856018, -0.4989122152328491, -0.3356994390487671,
+ -0.05982646346092224, 0.06342680007219315, -0.04135109484195709,
+ 0.32415950298309326, 0.2208917886018753, -0.07768300175666809,
+ -0.15703800320625305},
+ {0.03806011378765106, -0.6677188873291016, 0.15192484855651855,
+ -0.16433456540107727, -0.34537896513938904, -0.020495647564530373,
+ -0.03346096724271774, 0.223424032330513, -0.02972494252026081,
+ -0.3487086594104767, -0.0456627681851387, -0.11218554526567459,
+ -0.00014366689720191061, 0.4491022527217865, -0.5417236089706421,
+ -0.6263294816017151, -0.6973318457603455, -0.9182674288749695,
+ -0.2974551320075989, -0.7037410736083984, 0.0874515250325203,
+ 0.14197714626789093, 0.4558337330818176, -0.5843172669410706,
+ -0.5606727004051208, 0.45348820090293884, 0.44328850507736206,
+ 0.4209005534648895},
+ {-0.08474959433078766, 0.15526627004146576, -0.7985652089118958,
+ 0.21260187029838562, 0.3656609356403351, 0.12335719168186188,
+ 0.060457415878772736, 0.24970696866512299, 0.4984481930732727,
+ 0.3631579279899597, 0.26680564880371094, 0.5937404036521912,
+ 0.2675668001174927, 0.26715323328971863, -0.2635864317417145,
+ -0.6670373678207397, 0.5595815181732178, 0.3275291323661804,
+ 0.3265022933483124, -0.0923314318060875, 0.2361195683479309,
+ 0.8254050016403198, 0.5882598757743835, 0.8333842158317566,
+ 0.4826344847679138, 0.6576237082481384, 0.013852320611476898,
+ -0.13133659958839417},
+ {-0.03767941892147064, -0.16735343635082245, 0.07242633402347565,
+ 0.09715986251831055, -0.08629732578992844, -0.12105050683021545,
+ 0.19429436326026917, -1.189113974571228, -0.0438414141535759,
+ -0.13045798242092133, 0.17313389480113983, 0.222298264503479,
+ -0.6784869432449341, 0.044389013200998306, -0.04566064849495888,
+ 0.1745270937681198, -0.18878957629203796, -0.68072509765625,
+ -0.17901289463043213, -0.13348782062530518, -0.280407577753067,
+ -0.5236465930938721, -0.09434037655591965, 0.3562553822994232,
+ -0.14296357333660126, -0.17816492915153503, -0.262240469455719,
+ 0.2708267867565155},
+ {-0.14643076062202454, 0.3134414553642273, -0.016158653423190117,
+ 0.4832289218902588, 0.35327669978141785, 0.033485930413007736,
+ 1.404250144958496, -0.4109203517436981, 0.3232615888118744,
+ 0.03948039561510086, 0.14370359480381012, 1.0806249380111694,
+ -0.43028610944747925, 0.19681444764137268, 0.3559668958187103,
+ 0.24551646411418915, 0.7668668031692505, 0.26227831840515137,
+ 0.24610893428325653, 0.03931723162531853, 0.1685093492269516,
+ 0.42881014943122864, 0.605613648891449, 0.07715323567390442,
+ 0.2259686291217804, 0.12414932996034622, 0.28258103132247925,
+ 0.6711070537567139},
+ {-0.03460083529353142, 0.015175103209912777, -0.0020290936809033155,
+ -0.2801230251789093, -0.049781594425439835, -0.08237257599830627,
+ -0.24321754276752472, -0.30726316571235657, -0.1131473034620285,
+ -0.016173556447029114, -0.0010477738687768579, -0.20699340105056763,
+ -0.2045988142490387, -0.10566984117031097, -0.0597367063164711,
+ -0.1446806639432907, -0.008996298536658287, -0.1636381596326828,
+ -0.34909534454345703, -0.10394063591957092, 0.07907130569219589,
+ 0.0491563156247139, 0.07572714239358902, 0.8712359666824341,
+ 0.8652707934379578, 0.8136559128761292, 0.7329977750778198,
+ 0.4842419922351837},
+ {0.028292212635278702, -0.6930311322212219, 0.4168195426464081,
+ -0.722553014755249, 0.6128503084182739, 0.37802034616470337,
+ -0.12130801379680634, -0.16137754917144775, -0.4547799825668335,
+ 0.019849296659231186, -0.07699695229530334, 0.02751479111611843,
+ 0.11456470936536789, -0.46225056052207947, -0.4128100574016571,
+ -0.21820463240146637, -0.05070912092924118, -0.012455608695745468,
+ 0.17457029223442078, -0.6548964381217957, 0.2514891028404236,
+ 0.09665688127279282, -0.023784032091498375, 0.34345829486846924,
+ -1.0899158716201782, 0.057933658361434937, -0.10579057782888412,
+ -0.09446477890014648},
+ {0.06298044323921204, -0.5140762329101562, 0.10901061445474625,
+ 0.25055184960365295, 0.16310572624206543, 0.1660183221101761,
+ -0.2003139704465866, -0.25939759612083435, -0.759786069393158,
+ -0.5441654324531555, -0.433865487575531, -0.2903525233268738,
+ 0.20317135751247406, -0.05961161479353905, 0.1883774697780609,
+ 0.07006954401731491, -0.348635733127594, 0.00569637306034565,
+ -0.12705902755260468, 0.06386853754520416, 0.30274978280067444,
+ -0.06455851346254349, -0.16498570144176483, -0.2735350728034973,
+ -0.05759710818529129, -0.09640154242515564, -0.2553178668022156,
+ 0.1108042374253273},
+ {0.16303423047065735, -0.840851902961731, 0.3045694828033447,
+ 0.5177968144416809, 0.010460598394274712, -0.0009595230803824961,
+ -0.164739727973938, -0.2865234613418579, -0.1834029257297516,
+ 0.4267294108867645, 0.0837775319814682, -0.5739225745201111,
+ -0.17942845821380615, 0.06667495518922806, 0.46038922667503357,
+ 0.14962272346019745, -0.34685906767845154, 0.23869825899600983,
+ -0.28814902901649475, -0.7657412886619568, -0.866352379322052,
+ -0.9862637519836426, -0.18093055486679077, -0.2750402092933655,
+ -0.2612379789352417, 0.14520415663719177, 0.41632893681526184,
+ -0.3018798232078552},
+ {-0.15189743041992188, 0.24816209077835083, -0.39726874232292175,
+ 0.10362628102302551, 0.22738219797611237, 0.13067540526390076,
+ 0.29548943042755127, 0.37722209095954895, 0.17870138585567474,
+ 0.2407064139842987, 0.19497083127498627, 0.3211122453212738,
+ -0.09292492270469666, -0.12265130877494812, 0.4053817391395569,
+ -0.11827366054058075, 0.45297837257385254, 0.11928819864988327,
+ 0.9772109389305115, 0.5449104905128479, 0.39806750416755676,
+ 0.4030953049659729, 0.16402702033519745, -0.14901259541511536,
+ -0.15305542945861816, 0.16489744186401367, 0.21413367986679077,
+ 0.5390959978103638},
+ {-0.054573457688093185, -0.22824183106422424, -0.3203968405723572,
+ -0.15810002386569977, 0.5835301876068115, 0.38719215989112854,
+ 0.4236435294151306, 0.640129566192627, -0.14881178736686707,
+ 0.47540283203125, 0.09412529319524765, 0.06462755799293518,
+ -0.6389226317405701, -0.10056259483098984, 0.5633905529975891,
+ 0.08276329189538956, -0.1411363184452057, -0.009574373252689838,
+ -0.03582749515771866, 0.6443657279014587, -0.017103971913456917,
+ -0.17268119752407074, 0.06117372587323189, -0.04281193017959595,
+ 0.7488794922828674, -0.06866982579231262, 0.06887611001729965,
+ -0.11549514532089233},
+ {0.01342778280377388, -0.4836217761039734, -0.11072295904159546,
+ 0.6476761698722839, 0.5931163430213928, -0.7808675169944763,
+ -0.35797253251075745, -0.2272079437971115, 0.7021985054016113,
+ -0.022765103727579117, -0.8641810417175293, -0.20821577310562134,
+ -0.1716800034046173, -0.2285567671060562, -0.4907127618789673,
+ -0.4427620768547058, 0.20067904889583588, 0.24365925788879395,
+ -0.2677304446697235, -0.33728840947151184, 0.0702209398150444,
+ 0.09022712707519531, 0.1330493539571762, -0.3614550530910492,
+ -0.30246731638908386, 0.012839858420193195, 0.3226088583469391,
+ 0.06072837859392166},
+ {-0.040193911641836166, -0.6861724853515625, -0.4070025682449341,
+ 0.1424286812543869, 0.21161821484565735, 0.36073726415634155,
+ 0.3628085255622864, -0.0990212932229042, 0.42990466952323914,
+ 0.5575714707374573, 0.37092170119285583, 0.2522738575935364,
+ 0.1157609149813652, 0.47637075185775757, 0.48690155148506165,
+ 0.30947044491767883, 0.2960883677005768, 0.07852909713983536,
+ 0.3973768353462219, 0.13431915640830994, 0.36592432856559753,
+ 0.17452998459339142, 0.13116753101348877, -0.42777925729751587,
+ -0.37024176120758057, -0.43283072113990784, -0.5338147878646851,
+ -0.4905080199241638},
+ {-0.12332254648208618, 0.23759916424751282, -0.2621895968914032,
+ 0.03406616672873497, 0.5511227250099182, -0.12509968876838684,
+ -0.4177529215812683, -0.47927144169807434, 0.14296410977840424,
+ 0.4820209741592407, 0.22033001482486725, -0.13066789507865906,
+ -0.7484548091888428, 0.23563754558563232, 0.2622942626476288,
+ 0.582843542098999, 0.7955005764961243, 0.9946928024291992,
+ 0.14746436476707458, 0.043333325535058975, -0.07848695665597916,
+ 0.10714565217494965, 0.12493138015270233, 0.1611987203359604,
+ 0.04742865636944771, -0.26901474595069885, -0.10293031483888626,
+ 0.010696852579712868},
+ {0.04099375382065773, -3.2305996417999268, 0.2543967366218567,
+ -0.059577129781246185, -0.14682938158512115, -0.0733993723988533,
+ -0.07150989025831223, -0.08204008638858795, -0.12635663151741028,
+ -0.10393626242876053, -0.022796161472797394, 0.007641270756721497,
+ -0.08665978163480759, -0.01694418303668499, -0.0025942830834537745,
+ -0.03163212165236473, -0.022262264043092728, -0.07357636839151382,
+ -0.07581206411123276, -0.06286846846342087, -0.1153038740158081,
+ -0.04352688044309616, -0.08158870041370392, -0.08570341020822525,
+ -0.06179278343915939, -0.11247510462999344, 0.0021329170558601618,
+ -0.029320182278752327},
+ {0.029462160542607307, -0.5271976590156555, 0.18926401436328888,
+ 0.02871791645884514, -0.23120182752609253, -0.786915123462677,
+ 0.6471821665763855, 0.4379161298274994, 0.20970848202705383,
+ -0.06591341644525528, -0.7760671973228455, 0.38167643547058105,
+ 0.5764249563217163, 0.014545980840921402, 0.17091333866119385,
+ -0.9253398776054382, -0.09902273863554001, -0.05899110808968544,
+ 0.4204649329185486, 0.21064306795597076, -0.5640349984169006,
+ -0.24353162944316864, -0.18500371277332306, -0.026613807305693626,
+ -0.06437907367944717, -0.34146401286125183, -0.35460934042930603,
+ -0.2743520736694336},
+ {-0.052965063601732254, -0.5605072379112244, 0.07962799817323685,
+ -0.02648513950407505, -0.2291896939277649, -0.16507042944431305,
+ -0.016116635873913765, 0.4122294485569, 0.023346038535237312,
+ 0.06569206714630127, -0.0031419098377227783, 0.18163825571537018,
+ 0.08935528993606567, -0.09544392675161362, -0.3773246705532074,
+ 0.0589076466858387, 0.40520086884498596, -0.07905229926109314,
+ -0.49348345398902893, -0.35177019238471985, -0.5805748105049133,
+ 0.30384382605552673, 0.058458756655454636, -0.26937973499298096,
+ -0.2887529134750366, -0.48755502700805664, 0.22864623367786407,
+ 0.08268418908119202},
+ {-0.1134001687169075, -0.1595868170261383, 0.14256395399570465,
+ 0.029054423794150352, 0.15920008718967438, 0.11821631342172623,
+ 0.41081133484840393, 0.22583164274692535, 0.4875009059906006,
+ -0.017819786444306374, 0.18353310227394104, 0.18164801597595215,
+ 0.5451951622962952, 0.04068929702043533, 0.5024164319038391,
+ 0.4954160749912262, 0.15857921540737152, 0.07034330070018768,
+ 0.10076071321964264, -0.22763016819953918, 0.3141815662384033,
+ 0.10078883916139603, 0.3922852873802185, 0.34453365206718445,
+ 0.168269544839859, 0.42013704776763916, 0.07419819384813309,
+ -0.14518938958644867},
+ {-0.06957618147134781, -0.06440338492393494, -0.7259829640388489,
+ 0.5161219835281372, 0.09093577414751053, 0.4290890097618103,
+ 0.4202098250389099, -0.027972804382443428, 0.545386791229248,
+ 0.44505423307418823, -0.12706060707569122, 0.10054849833250046,
+ 0.056948449462652206, 0.08831918239593506, 0.8375925421714783,
+ 0.025092219933867455, 0.21887224912643433, 0.2599436938762665,
+ -0.6995351910591125, 0.9659162163734436, 0.2467847764492035,
+ 0.5137833952903748, 0.21108582615852356, -0.11285984516143799,
+ 1.2240996360778809, -0.16404935717582703, 0.22046460211277008,
+ 0.013526036404073238},
+ {-0.004826321732252836, -0.005929495673626661, 0.07865772396326065,
+ -0.35655465722084045, -0.260633260011673, -0.37299594283103943,
+ -0.3571874499320984, 0.6748940348625183, -0.013674028217792511,
+ -0.27069777250289917, -0.28626859188079834, -0.02211541309952736,
+ 0.8759161233901978, -0.2193540334701538, -0.2950937747955322,
+ -0.1518949717283249, -0.01741132326424122, 0.7278527617454529,
+ -0.10758645832538605, -0.14286479353904724, -0.12058365345001221,
+ 0.05432174354791641, 0.7359171509742737, -0.20074452459812164,
+ -0.24474677443504333, -0.20014965534210205, -0.2710004448890686,
+ 0.5048877596855164},
+ {0.06318517029285431, -0.06626387685537338, 0.09102978557348251,
+ 0.2806074619293213, -0.5871695280075073, 0.01448263693600893,
+ -0.17774152755737305, -0.015175321139395237, 0.26823174953460693,
+ -0.5144285559654236, -0.10162042826414108, -0.11051122844219208,
+ -0.056919533759355545, -0.0963352620601654, -0.292245477437973,
+ 0.07747644931077957, 0.049891501665115356, 0.04416292905807495,
+ -0.10346058011054993, -0.27070391178131104, 0.16639839112758636,
+ 0.13697180151939392, -0.03080388717353344, -0.3958549499511719,
+ -0.08085988461971283, -0.15026159584522247, -0.2458583563566208,
+ -0.1183728277683258},
+ {-0.031412992626428604, -0.5603559017181396, 0.23181116580963135,
+ 0.13550354540348053, 0.1384330689907074, 0.466655433177948,
+ 0.013126186095178127, -0.1315859854221344, 0.19236598908901215,
+ 0.18724070489406586, 0.3651496469974518, -0.2081764191389084,
+ -0.21705558896064758, -0.8947001695632935, -0.8844435811042786,
+ -0.9548132419586182, -0.8363487720489502, -0.43193918466567993,
+ 0.14401763677597046, 0.17948108911514282, 0.22730839252471924,
+ -0.05247826129198074, -0.04454374313354492, 0.22061742842197418,
+ 0.2703307569026947, 0.2895837426185608, -0.10765346139669418,
+ -0.1715518683195114},
+ {-0.08773751556873322, 0.1905992329120636, -0.1878463476896286,
+ -0.06142798811197281, -0.07157573848962784, -0.15859191119670868,
+ 0.2888740599155426, 0.29501354694366455, -0.18804210424423218,
+ 0.03719957917928696, 0.04348141327500343, 0.43497395515441895,
+ 0.3348860740661621, 0.046619195491075516, -0.012931774370372295,
+ 0.43330755829811096, 0.783429741859436, 0.7513718605041504,
+ 0.42782992124557495, 0.4602666199207306, 0.8619009256362915,
+ 0.21070736646652222, -0.6946675181388855, 0.36241528391838074,
+ 0.5762568712234497, 0.41478705406188965, -0.7064434289932251,
+ -0.7981423139572144},
+ {0.0158368032425642, -0.46186450123786926, -0.04968561232089996,
+ 0.08248921483755112, 0.09503590315580368, -0.02358037419617176,
+ -0.31207606196403503, 0.5838796496391296, -0.015739191323518753,
+ 0.14295169711112976, 0.06756915897130966, -0.23699864745140076,
+ -0.031251370906829834, 0.044411782175302505, 0.07595864683389664,
+ -0.06131885573267937, -0.2911010682582855, -0.03894522413611412,
+ 0.26580068469047546, 0.10324547439813614, -0.22770865261554718,
+ -0.43839356303215027, -0.10662800073623657, -1.1684633493423462,
+ -0.6824188828468323, -0.5405550003051758, -0.3048187494277954,
+ 0.12504103779792786}};
+
+const float five_dense_biases[FIVE_DENSE_NUM] = {
+ -0.1444406658411026, -0.9969395995140076, -0.6437257528305054,
+ -0.5090100169181824, -0.4562266170978546, -0.7947681546211243,
+ -0.66095370054245, -0.0757993534207344, -0.6305758357048035,
+ -0.6522586345672607, -0.6137698292732239, 0.06795938313007355,
+ -0.5988752841949463, -0.022649021819233894, -0.559893012046814,
+ -0.34122252464294434, 0.21291229128837585, -0.9544443488121033,
+ -0.5839042663574219, -0.3325875997543335, -0.8768086433410645,
+ -0.3371303975582123, -0.804802417755127, -0.7296857833862305,
+ -0.24707458913326263, -0.9100144505500793, -0.7247095704078674,
+ -0.6324146389961243, -0.42117181420326233, -1.2145949602127075,
+ -0.7118635177612305, -0.9112556576728821, -0.21369697153568268,
+ -0.10298735648393631, -0.8274878263473511, -0.6126794219017029,
+ -0.7786099314689636, -0.5083696246147156, -0.38434338569641113,
+ -0.468181848526001, -0.5246707201004028, -0.6266580820083618,
+ -0.3932459354400635, -0.6446056365966797, -0.8690927028656006,
+ -0.7806448936462402, -0.7514670491218567, -0.4992736577987671,
+ -0.4725331962108612, -0.8359085321426392, -0.3995131254196167,
+ -0.701408326625824, 0.13735836744308472, -0.7701425552368164,
+ 0.37747254967689514, -0.8496323227882385, -0.41388845443725586,
+ -0.3626680374145508, -0.4750637412071228, -1.0076007843017578,
+ -0.4247843325138092, -0.8280375599861145, -0.8584521412849426,
+ -0.49181294441223145};
+
+const float five_output_weights[2][FIVE_DENSE_NUM] = {
+ {-0.10164133459329605, -0.06545510143041611, -0.12559004127979279,
+ -0.09770263731479645, 0.020511239767074585, -0.11956804245710373,
+ 0.0725698173046112, 0.09884587675333023, 0.03334106504917145,
+ -0.07531746476888657, -0.04404358193278313, 0.04667624458670616,
+ -0.10733920335769653, 0.11603111028671265, -0.09832630306482315,
+ -0.029710080474615097, 0.6112914681434631, 0.09875980764627457,
+ 0.04528747498989105, 0.04975724592804909, 0.05296019837260246,
+ -0.1494731307029724, 0.06372635811567307, 0.05117323249578476,
+ -0.4960876405239105, 0.08172430098056793, 0.09049712121486664,
+ 0.16494503617286682, 0.12463495880365372, 0.10889994353055954,
+ 0.0901939794421196, -0.07425925135612488, -0.09327994287014008,
+ 0.07225991785526276, 0.0995996817946434, 0.1002214103937149,
+ 0.13605892658233643, -0.2738678455352783, 0.07213583588600159,
+ 0.031051557511091232, -0.09413432329893112, -0.05657240375876427,
+ 0.023954149335622787, -0.11132869869470596, 0.0918613076210022,
+ 0.1731780767440796, -0.048148252069950104, -0.08594620227813721,
+ -0.07079077512025833, 0.028347637504339218, 0.04007003828883171,
+ -0.08521876484155655, -0.13736766576766968, 0.0973486453294754,
+ -0.3953056037425995, -0.09303829818964005, 0.0926792323589325,
+ 0.08662958443164825, 0.07239469885826111, 0.12995171546936035,
+ -0.08624651283025742, -0.13703757524490356, 0.1074426919221878,
+ -0.05400789529085159},
+ {0.09475231915712357, 0.10763916373252869, 0.10490848124027252,
+ 0.051702577620744705, -0.025973767042160034, 0.1243276372551918,
+ -0.09184729307889938, -0.09110323339700699, -0.10927686840295792,
+ 0.07648954540491104, 0.08314546942710876, -0.054432936012744904,
+ 0.11420167982578278, -0.14501862227916718, 0.07449985295534134,
+ 0.04114171117544174, -0.5540419816970825, -0.11702275276184082,
+ -0.057106584310531616, -0.11389349400997162, -0.04799086973071098,
+ 0.11528362333774567, -0.10561501979827881, -0.06099977344274521,
+ 0.5406088829040527, -0.07843243330717087, -0.07121624052524567,
+ -0.15534670650959015, -0.10739737004041672, -0.10599866509437561,
+ -0.03090781159698963, 0.1024080142378807, 0.11164399981498718,
+ -0.10347762703895569, -0.09762325882911682, -0.044070787727832794,
+ -0.1382112205028534, 0.2635824978351593, -0.013381495140492916,
+ -0.017522230744361877, 0.09075458347797394, 0.08058229833841324,
+ -0.03840004280209541, 0.08596818149089813, -0.10802465677261353,
+ -0.17988164722919464, 0.08185803890228271, 0.09076226502656937,
+ 0.042497776448726654, -0.0991385206580162, -0.03188726678490639,
+ 0.0789727196097374, 0.12080144137144089, -0.12002957612276077,
+ 0.3941708207130432, 0.07739747315645218, -0.04954647645354271,
+ -0.10626203566789627, -0.054530855268239975, -0.19077910482883453,
+ 0.07939524203538895, 0.10724455863237381, -0.09315766394138336,
+ 0.07806982845067978}};
+
+const float five_output_bias[2] = {0.3762611150741577, 0.6172211170196533};
R include/weights.h => include/weights_5.h +6 -6
@@ 15,10 15,10 @@
along with ct. If not, see <https://www.gnu.org/licenses/>.
*/
-#define INP_NUM 3 + 5 * 5
-#define DENSE_NUM 64
+#define FIVE_INP_NUM 3 + 5 * 5
+#define FIVE_DENSE_NUM 64
-extern const float dense1_weights[DENSE_NUM][INP_NUM];
-extern const float dense1_biases[DENSE_NUM];
-extern const float output_weights[2][DENSE_NUM];
-extern const float output_bias[2];
+extern const float five_dense_weights[FIVE_DENSE_NUM][FIVE_INP_NUM];
+extern const float five_dense_biases[FIVE_DENSE_NUM];
+extern const float five_output_weights[2][FIVE_DENSE_NUM];
+extern const float five_output_bias[2];
A include/weights_6.c => include/weights_6.c +927 -0
@@ 0,0 1,927 @@
+/*
+ * Model: "model"
+ * _________________________________________________________________
+ * Layer (type) Output Shape Param #
+ * =================================================================
+ * input_1 (InputLayer) [(None, 39)] 0
+ *
+ * dense (Dense) (None, 64) 2560
+ *
+ * dense_1 (Dense) (None, 2) 130
+ *
+ * =================================================================
+ * Total params: 2,690
+ * Trainable params: 2,690
+ * Non-trainable params: 0
+ * _________________________________________________________________
+ * ([0.43337419629096985, 0.8247458338737488], [0.439096063375473,
+ * 0.8229411244392395])
+ */
+
+#include "weights_6.h"
+
+const float six_dense_weights[SIX_DENSE_NUM][SIX_INP_NUM] = {
+ {0.0938403531908989, -0.1767289787530899, -0.2594544291496277,
+ 0.0691506490111351, -0.3403625190258026, 0.2910526692867279,
+ 0.2831748127937317, 0.09303940087556839, 0.2586047351360321,
+ 0.07098056375980377, -0.3649413287639618, 0.04592672362923622,
+ 0.2833174765110016, 0.009526161476969719, -0.14935271441936493,
+ -0.10905721783638, -0.09543487429618835, -0.1335684210062027,
+ 0.279418408870697, 0.21970123052597046, 0.03924116864800453,
+ 0.2525206208229065, -0.07575967162847519, 0.003592552850022912,
+ -0.3410177528858185, -0.2946719229221344, -0.42420369386672974,
+ 0.25425875186920166, 0.09701071679592133, 0.048269227147102356,
+ -0.12546728551387787, -0.13410994410514832, -0.021736539900302887,
+ 0.08405961841344833, 0.2916780710220337, -0.2674121856689453,
+ 0.11115898936986923, 0.15194286406040192, 0.05519171059131622},
+ {0.03854886814951897, 0.047170158475637436, -0.5652578473091125,
+ -0.1501774787902832, 0.19765394926071167, 0.49258941411972046,
+ 0.442907452583313, 0.6037927865982056, 0.7828888297080994,
+ 0.7239607572555542, 0.5416994690895081, 0.3247818350791931,
+ 0.1419774442911148, 0.07112716138362885, -0.48371824622154236,
+ 0.03897036612033844, 0.16006605327129364, -0.19231346249580383,
+ -0.11129150539636612, -0.04494927451014519, -0.2814842164516449,
+ -0.009567379020154476, 0.12357877939939499, -0.08806543052196503,
+ -0.3350891172885895, -0.21195265650749207, 0.0829022154211998,
+ 0.153797909617424, 0.13344310224056244, -0.23193320631980896,
+ -0.3241296708583832, -0.2072569876909256, -0.08946460485458374,
+ 0.19245360791683197, 0.06570465862751007, -0.07437288016080856,
+ -0.2344023883342743, -0.1934940367937088, -0.3033899962902069},
+ {0.09298650920391083, 0.1298256516456604, -0.26803141832351685,
+ 0.10323704034090042, 0.31999361515045166, 0.10086508840322495,
+ -0.25076261162757874, -0.24714693427085876, -0.07469244301319122,
+ -0.1501404047012329, 0.08652600646018982, 0.14937622845172882,
+ -0.20169629156589508, -0.2770548462867737, -0.19903460144996643,
+ -0.1816127896308899, 0.2517884373664856, 0.3161589205265045,
+ 0.5760500431060791, 0.6995037198066711, 1.0056625604629517,
+ -0.10604166984558105, -0.029168294742703438, -0.013238683342933655,
+ 0.28708288073539734, -0.5204426646232605, -0.2549469769001007,
+ -0.11407356709241867, 0.00998044852167368, 0.03189884498715401,
+ 0.05421498417854309, -0.1683892011642456, -0.1772622913122177,
+ 0.1778106987476349, -0.06838139146566391, 0.08891639113426208,
+ 0.046210043132305145, -0.03662918508052826, -0.14595364034175873},
+ {-0.09094150364398956, 0.34463661909103394, 0.09116946905851364,
+ -0.06449760496616364, -0.3147732615470886, 0.1268700808286667,
+ 0.1254865974187851, -0.0012171438429504633, 0.11133856326341629,
+ 0.16736876964569092, 0.438774973154068, 0.3511490225791931,
+ 0.37927722930908203, 0.38935965299606323, -0.0079469820484519,
+ 0.3172787129878998, 0.2990153729915619, -0.09792278707027435,
+ -0.10387258976697922, 0.41493046283721924, 0.0964023545384407,
+ 0.26486533880233765, 0.15529265999794006, -0.2944813370704651,
+ -0.34798750281333923, 0.5233692526817322, 0.1444278061389923,
+ 0.26051023602485657, 0.36869293451309204, 0.21834968030452728,
+ 0.26130184531211853, 0.6258428692817688, -0.23855987191200256,
+ 0.022854013368487358, 0.2632879316806793, 0.37072518467903137,
+ 0.1523171216249466, 0.25519171357154846, -0.16038407385349274},
+ {-0.032467667013406754, 0.7357418537139893, -0.045072030276060104,
+ -0.24760432541370392, 0.23623232543468475, 0.0744364857673645,
+ 0.14080816507339478, 0.1414225548505783, -0.06911414116621017,
+ 0.07192256301641464, 0.16631357371807098, 0.2408289909362793,
+ 0.17106670141220093, 0.2528420686721802, 0.10969230532646179,
+ 0.02076885662972927, 0.20825524628162384, 0.2517687976360321,
+ 0.015450780279934406, 0.2909148037433624, 0.28733131289482117,
+ 0.11145968735218048, 0.1526435911655426, 0.2711062729358673,
+ 0.1014212965965271, 0.3045900762081146, 0.25306183099746704,
+ -0.008300194516777992, 0.44009920954704285, 0.24647784233093262,
+ 0.1009436771273613, 0.27297350764274597, -0.030720824375748634,
+ -0.11540747433900833, 0.14160208404064178, 0.12604549527168274,
+ 0.2626807987689972, 0.008236709982156754, -0.18862208724021912},
+ {-0.023633155971765518, 0.031894486397504807, -0.4481360912322998,
+ -0.24594591557979584, 0.20171336829662323, -0.18470190465450287,
+ 0.2863655686378479, 0.6400246024131775, -0.0826200544834137,
+ 0.02861976809799671, 0.017064129933714867, -0.25840842723846436,
+ -0.30897530913352966, 0.5295916199684143, -0.16908574104309082,
+ 0.1952582597732544, -0.16432832181453705, -0.03602570295333862,
+ -0.04704880714416504, 0.3191918134689331, -0.1255466639995575,
+ -0.15681274235248566, 0.13616108894348145, 0.00557664642110467,
+ 0.16074173152446747, 0.19923390448093414, -0.3232885003089905,
+ 0.09312762320041656, 0.1622481346130371, 0.3235580325126648,
+ 0.4518657922744751, 0.49210718274116516, 1.1623464822769165,
+ 0.6036497950553894, 0.41296878457069397, 0.32431092858314514,
+ 0.012712906114757061, -0.3247729539871216, 0.07957495748996735},
+ {0.09208795428276062, -0.45911091566085815, -0.4499244689941406,
+ 0.4439805746078491, 0.2955973446369171, 0.3163372576236725,
+ 0.3850560784339905, 0.4180153012275696, 0.1610139012336731,
+ -0.23070935904979706, -0.15921248495578766, -0.09720172733068466,
+ -0.005319203715771437, 0.042631376534700394, 0.011843227781355381,
+ -0.2977549433708191, -0.3696579337120056, -0.34377896785736084,
+ -0.2770437002182007, -0.0684071034193039, -0.12180585414171219,
+ -0.3018224239349365, -0.3641885817050934, -0.4096143841743469,
+ -0.2906401455402374, -0.19256781041622162, -0.06858377903699875,
+ -0.3312127888202667, -0.2699941396713257, -0.29128533601760864,
+ -0.389739990234375, -0.16568920016288757, -0.15711554884910583,
+ -0.2741237282752991, -0.351249098777771, -0.382339209318161,
+ -0.22146785259246826, -0.2833898663520813, 0.23953834176063538},
+ {-0.03820355236530304, 0.2552051544189453, -0.41925331950187683,
+ 0.03598763793706894, 0.10766711086034775, -0.02723642811179161,
+ 0.13639701902866364, 0.09994057565927505, 0.143342986702919,
+ 0.7588191032409668, 0.2866367697715759, 0.17419223487377167,
+ 0.24415870010852814, 0.21330080926418304, 0.004984943196177483,
+ 0.04004876688122749, 0.14586566388607025, 0.48024749755859375,
+ 0.03794018179178238, -0.07516377419233322, 0.12968669831752777,
+ -0.15804070234298706, 0.07177191227674484, 0.6032015681266785,
+ -0.15146808326244354, -0.03773435950279236, 0.1546255350112915,
+ -0.05635025352239609, -0.2109125256538391, 0.827411949634552,
+ -0.08717553317546844, -0.03857292979955673, 0.028028415516018867,
+ -0.18814221024513245, -0.2918829321861267, 1.1850578784942627,
+ -0.13577929139137268, -0.10148927569389343, 0.04256230220198631},
+ {-0.02601557970046997, 0.33742624521255493, -0.6368851661682129,
+ -0.11502872407436371, -0.006779594346880913, 0.22280679643154144,
+ 0.9518709778785706, -0.08583897352218628, 0.022831641137599945,
+ 0.050563063472509384, -0.2883768677711487, -0.4006108045578003,
+ 0.9996275305747986, 0.09687786549329758, -0.11025010794401169,
+ -0.24142767488956451, -0.06659236550331116, -0.37431350350379944,
+ 1.0413575172424316, -0.26107892394065857, -0.15877346694469452,
+ -0.12956151366233826, -0.26938486099243164, -0.014049803838133812,
+ 0.7272130250930786, 0.15061414241790771, 0.34574928879737854,
+ 0.12261722981929779, 0.18262754380702972, 0.20603030920028687,
+ 0.3540857136249542, -0.1319534331560135, 0.006348802708089352,
+ 0.12992289662361145, -0.09367820620536804, 0.13560223579406738,
+ 0.03506556153297424, 0.15220433473587036, -0.09506703913211823},
+ {-0.027510305866599083, -0.08744045346975327, 0.10088697820901871,
+ -0.16025127470493317, -0.39402830600738525, -0.12110500782728195,
+ 0.00033584816264919937, 0.1830214112997055, 0.013741733506321907,
+ -0.2064538449048996, -0.20233610272407532, -0.2030220776796341,
+ -0.00568374153226614, 0.00947315152734518, -0.011110455729067326,
+ 0.9691393971443176, 0.6973731517791748, 0.5842689871788025,
+ 0.3661907911300659, 0.06880233436822891, 0.03835286200046539,
+ -0.0812736377120018, -0.08992814272642136, -0.0021860937122255564,
+ -0.19549955427646637, -0.02203563041985035, 0.184067964553833,
+ -0.02779618464410305, -0.061287496238946915, -0.16774046421051025,
+ 0.08576346188783646, -0.04513678699731827, -0.13194777071475983,
+ 0.0089359600096941, -0.106109119951725, -0.03850433602929115,
+ -0.04971720650792122, 0.13103286921977997, -0.05597721412777901},
+ {0.12395477294921875, 0.11519237607717514, 0.4307335615158081,
+ 0.23111329972743988, -0.06620656698942184, -0.2928609848022461,
+ -0.12718862295150757, -0.3016231060028076, -0.1542220264673233,
+ -0.17098219692707062, -0.30381983518600464, -0.1328248679637909,
+ -0.24070699512958527, 0.007853018119931221, -0.0711393728852272,
+ -0.2707550823688507, -0.31120726466178894, 0.02227850630879402,
+ 0.0255327969789505, -0.16943874955177307, -0.04841131716966629,
+ 0.24037189781665802, -0.39308667182922363, -0.028763458132743835,
+ -0.07026106119155884, -0.1107557862997055, -0.15088650584220886,
+ -0.048882197588682175, -0.3547615706920624, -0.1544690579175949,
+ -0.240713968873024, -0.148503378033638, 0.05130862072110176,
+ 0.04129426181316376, -0.1989937126636505, 0.0551915280520916,
+ 0.20009897649288177, -0.08838912844657898, -0.13858556747436523},
+ {-0.028077255934476852, -0.263008177280426, -0.5300689339637756,
+ -0.10596363246440887, -0.09365787357091904, -0.013477037660777569,
+ 0.04924667999148369, 0.09180082380771637, -0.01897270977497101,
+ -0.04043424874544144, -0.2346002459526062, -0.0974813848733902,
+ -0.19844530522823334, -0.30621716380119324, -0.1341116577386856,
+ -0.14365428686141968, -0.06251399964094162, -0.0489807054400444,
+ -0.23918361961841583, -0.1425667256116867, -0.21056917309761047,
+ -0.35075387358665466, -0.17768961191177368, -0.12176710367202759,
+ -0.09238579869270325, -0.196614608168602, -0.05159621313214302,
+ -0.049563776701688766, 0.14390434324741364, 0.2449982762336731,
+ 0.037236813455820084, 0.09001156687736511, -0.05301392450928688,
+ 0.4487733542919159, 0.5985151529312134, 0.8237573504447937,
+ 0.6123289465904236, 0.6252710223197937, 0.5433018207550049},
+ {0.05674484744668007, -0.21794266998767853, -0.0690106600522995,
+ -0.08234122395515442, 0.44869762659072876, 0.004432729445397854,
+ -0.3464958369731903, -0.31199976801872253, -0.11329516768455505,
+ -0.012647184543311596, 0.2955891788005829, -0.21412324905395508,
+ -0.26033464074134827, -0.2529742419719696, -0.24078789353370667,
+ 0.08507192879915237, 0.2723209857940674, 0.015907486900687218,
+ -0.29949259757995605, -0.28530392050743103, -0.02822747640311718,
+ 0.11166887730360031, 0.31645849347114563, 0.5450040698051453,
+ 0.4759218990802765, 0.44462448358535767, 0.5667102336883545,
+ 0.10570478439331055, 0.09147173166275024, -0.41521045565605164,
+ -0.24335461854934692, -0.00928646419197321, -0.03280903026461601,
+ 0.31309986114501953, -0.24746572971343994, -0.21630574762821198,
+ -0.13891689479351044, -0.12678468227386475, 0.019493935629725456},
+ {0.04230424389243126, -0.17447374761104584, -0.0054184612818062305,
+ -0.1435929834842682, 0.07816848158836365, 0.01746261492371559,
+ -0.1170244812965393, -0.08390635997056961, -0.4032331705093384,
+ 0.2041037529706955, -0.37552720308303833, -0.3711363673210144,
+ -0.5806295871734619, -0.4234464764595032, -0.46351099014282227,
+ 0.0038801373448222876, -0.5021129250526428, -0.26015907526016235,
+ 0.17223067581653595, 0.22177451848983765, 0.1517171710729599,
+ -0.1822986751794815, -0.5590958595275879, 0.09114786982536316,
+ 0.5952406525611877, 0.33933141827583313, 0.03543508052825928,
+ -0.20312638580799103, -0.5193464756011963, 0.25523340702056885,
+ 0.18237729370594025, 0.2616051733493805, 0.19942516088485718,
+ -0.37625813484191895, -0.38257360458374023, 0.4214632213115692,
+ 0.13992303609848022, 0.0217701755464077, 0.23177187144756317},
+ {0.005834002047777176, 0.23899783194065094, -0.41326916217803955,
+ -0.13743731379508972, -0.3743237555027008, 0.4712757170200348,
+ -0.10728587210178375, -0.04690147936344147, -0.012469782494008541,
+ 0.07590505480766296, 0.10256650298833847, 0.47178372740745544,
+ 0.053982872515916824, 0.31672534346580505, 0.412813663482666,
+ 0.2627776265144348, 0.18552833795547485, 0.14499321579933167,
+ 0.32800236344337463, -0.046492982655763626, 0.1306823045015335,
+ 0.12194890528917313, -0.0015641561476513743, 0.04291989654302597,
+ 0.418734610080719, -0.03684232383966446, 0.30009517073631287,
+ 0.30650120973587036, 0.4684486389160156, -0.21988525986671448,
+ 0.3141425848007202, -0.25648489594459534, 0.06124741956591606,
+ -0.030600840225815773, 0.17773891985416412, 0.2336452305316925,
+ 0.3999963104724884, 0.020692361518740654, 0.18085549771785736},
+ {0.11810404807329178, -0.7503068447113037, 0.7131581902503967,
+ -0.35430383682250977, -0.1701233834028244, 0.13195589184761047,
+ -0.01765187829732895, -0.053697261959314346, 0.2731173634529114,
+ -0.2667081952095032, -0.26116088032722473, -0.3444633185863495,
+ -0.03905782848596573, -0.12970533967018127, -0.19899319112300873,
+ -0.04842638969421387, -0.03616137057542801, -0.6086732745170593,
+ 0.2113611400127411, -0.2217029333114624, -0.1709582358598709,
+ 0.2114928811788559, 0.023476190865039825, -0.8627800941467285,
+ -0.03373906761407852, 0.012901186011731625, 0.06300046294927597,
+ 0.1862776279449463, 0.18965467810630798, -0.7734775543212891,
+ -0.25880807638168335, -0.15576335787773132, -0.3291377127170563,
+ -0.17058822512626648, -0.17738814651966095, -0.5053722262382507,
+ -0.0760255977511406, -0.018039755523204803, 0.12310857325792313},
+ {0.012235699221491814, -0.7647572159767151, -0.2546156644821167,
+ -0.4500848948955536, 0.10941850394010544, 0.38997986912727356,
+ 0.3581389784812927, -0.003363049356266856, 0.0036796655040234327,
+ -0.4430975317955017, -0.07385789602994919, 0.2950358986854553,
+ 0.37601223587989807, 0.3072056174278259, 0.23226331174373627,
+ -0.5541632771492004, -0.07721558958292007, 0.264434278011322,
+ 0.2797820270061493, 0.31403404474258423, 0.2906499207019806,
+ -0.61859530210495, -0.10902882367372513, 0.24570897221565247,
+ 0.2738577425479889, 0.19494420289993286, 0.3179767429828644,
+ -0.5087208151817322, -0.09575092792510986, 0.23232176899909973,
+ 0.33741360902786255, 0.31438568234443665, 0.08774504065513611,
+ -0.49948495626449585, 0.19878768920898438, 0.2790905833244324,
+ 0.29347583651542664, 0.1983964890241623, 0.09773805737495422},
+ {-0.0032250366639345884, -0.37647745013237, 0.6387284994125366,
+ 0.13085906207561493, -0.09420748800039291, -0.12043486535549164,
+ -0.09859363734722137, -0.0322415791451931, 0.04104577749967575,
+ -0.38428738713264465, -0.13782109320163727, -0.1875448226928711,
+ -0.06216205283999443, -0.2468096762895584, -0.06001574173569679,
+ -0.43252620100975037, -0.27882707118988037, 0.05153997614979744,
+ -0.009829982183873653, -0.11981815099716187, 0.0300542414188385,
+ -0.1466187983751297, 0.025079259648919106, -0.1809065043926239,
+ -0.03972958028316498, -0.4312286078929901, -0.4774928390979767,
+ -0.27705708146095276, -0.21875113248825073, -0.3127034902572632,
+ -0.33481720089912415, -0.3148377537727356, -0.043604955077171326,
+ -0.04302991181612015, 0.09840089082717896, -0.14721018075942993,
+ -0.15153250098228455, -0.014881080947816372, -0.02777133323252201},
+ {-0.04917523264884949, 0.2966659963130951, -0.7679271697998047,
+ 0.3640339970588684, 0.34488141536712646, 0.07351113855838776,
+ -0.12390706688165665, 0.14672523736953735, -0.07746648788452148,
+ -0.00766491936519742, 0.10812146216630936, 0.05404716730117798,
+ 0.40622562170028687, 0.1562882512807846, 0.13887682557106018,
+ 0.04630090668797493, -0.011864696629345417, 0.05228237062692642,
+ 0.42454883456230164, 0.13458392024040222, 0.2257036566734314,
+ 0.13114555180072784, 0.03705087676644325, 0.0656241849064827,
+ 0.35340118408203125, -0.06443953514099121, -0.1823679655790329,
+ 0.2514023184776306, 0.09720294922590256, -0.019431205466389656,
+ 0.3230215311050415, 0.4974989891052246, -0.18957103788852692,
+ -0.13709215819835663, 0.09134995192289352, 0.1397637277841568,
+ -0.008464223705232143, 0.17737899720668793, 0.03209936246275902},
+ {-0.03908495977520943, -1.0460025072097778, -0.05153942108154297,
+ 0.026418883353471756, 0.06435004621744156, 0.006159078795462847,
+ 0.15285664796829224, 0.062372539192438126, -0.5784406065940857,
+ 0.14293059706687927, 0.23948584496974945, 0.2244279682636261,
+ 0.246318981051445, -0.21105478703975677, -0.6629570126533508,
+ 0.21185217797756195, 0.23563574254512787, 0.20618721842765808,
+ 0.04664134234189987, -0.21646244823932648, -0.673760712146759,
+ 0.12595318257808685, 0.17568759620189667, 0.23138532042503357,
+ 0.2950378954410553, -0.011088527739048004, -0.580833375453949,
+ 0.08069223165512085, 0.07044622302055359, 0.14007239043712616,
+ 0.10782857984304428, -0.09233247488737106, -0.7082332372665405,
+ 0.10116635262966156, 0.08682199567556381, 0.20869381725788116,
+ 0.25533464550971985, 0.22365421056747437, -0.642400860786438},
+ {-0.003839278593659401, -0.2167002409696579, -0.6415968537330627,
+ -0.16575638949871063, -0.3923284709453583, -0.34253621101379395,
+ -0.36767926812171936, -0.320792019367218, 0.5579889416694641,
+ 0.005732373800128698, -0.2975113093852997, -0.3011917769908905,
+ -0.25562208890914917, 0.01141179446130991, 0.6485363841056824,
+ -0.0862603709101677, 0.04852183908224106, -0.038507815450429916,
+ -0.13976459205150604, 0.1937519609928131, 0.6379382610321045,
+ -0.05357546731829643, -0.24442288279533386, -0.25377416610717773,
+ -0.1373913437128067, 0.23521901667118073, 0.7838800549507141,
+ -0.05167048051953316, -0.23681536316871643, -0.3086036741733551,
+ -0.2782636880874634, 0.0061825113371014595, 0.6706840991973877,
+ -0.2933875024318695, -0.18405349552631378, -0.3292210102081299,
+ -0.22080861032009125, -0.05667194351553917, 0.605210542678833},
+ {0.02069830521941185, 0.2981274724006653, -0.3914235532283783,
+ 0.20096059143543243, -0.21127276122570038, -0.16849693655967712,
+ -0.1829996109008789, 0.46842166781425476, -0.2292943298816681,
+ 0.14870710670948029, -0.06101277843117714, -0.11750083416700363,
+ -0.2847902476787567, 0.13143742084503174, 0.03900734707713127,
+ 0.09039174020290375, 0.07133065164089203, -0.18593473732471466,
+ -0.18768148124217987, 0.19852562248706818, -0.043533019721508026,
+ 0.08044888824224472, 0.12620572745800018, 0.5135767459869385,
+ 0.6216572523117065, 0.7337477803230286, 0.746058464050293,
+ 0.21274936199188232, 0.19879361987113953, 0.23473167419433594,
+ 0.1503111571073532, -0.11616628617048264, -0.4425128102302551,
+ 0.008272693492472172, 0.17732416093349457, 0.30413180589675903,
+ -0.09211753308773041, -0.2845708727836609, -0.08629859983921051},
+ {-0.05689625069499016, 0.9471213817596436, -0.5018173456192017,
+ 0.04427840933203697, 0.3289225697517395, 0.26457977294921875,
+ 0.3357226848602295, 0.33164182305336, 0.11942484229803085,
+ 0.20864133536815643, 0.3231998085975647, 0.38270941376686096,
+ 0.43079355359077454, 0.35918405652046204, 0.29414018988609314,
+ 0.2913033664226532, 0.4075305461883545, 0.3389551341533661,
+ 0.3205471336841583, 0.39065444469451904, 0.21498320996761322,
+ 0.2667761445045471, 0.46903330087661743, 0.3333382308483124,
+ 0.3752078115940094, 0.3759205639362335, 0.23441870510578156,
+ 0.29539817571640015, 0.34879130125045776, 0.454723984003067,
+ 0.3740314841270447, 0.2922436594963074, 0.26244717836380005,
+ 0.06231944262981415, 0.21697081625461578, 0.2948298752307892,
+ 0.26524433493614197, 0.2656134366989136, 0.11897537112236023},
+ {-0.13353700935840607, 0.2326587289571762, -0.5015689134597778,
+ 0.24408653378486633, 0.18027469515800476, 0.43729129433631897,
+ 0.1669936180114746, 0.136101633310318, 0.15424752235412598,
+ -0.5091984868049622, -0.24085140228271484, 0.6771426200866699,
+ 0.3479400873184204, 0.413055419921875, 0.7057263851165771,
+ -0.44812604784965515, -0.19928161799907684, 0.5678461194038391,
+ 0.07917710393667221, -0.0942612886428833, -0.15630804002285004,
+ -0.03382237255573273, 0.1808028221130371, 0.5306615233421326,
+ -0.10813526809215546, -0.09537903964519501, 0.08486992865800858,
+ 0.2879536747932434, 0.16382691264152527, 0.23430010676383972,
+ -0.16726075112819672, -0.2076461911201477, -0.05950525403022766,
+ 0.4207715094089508, 0.24981559813022614, 0.017079824581742287,
+ 0.10926308482885361, 0.24555648863315582, -0.11280246078968048},
+ {0.02831106260418892, 0.2297302782535553, -0.4488084614276886,
+ 0.2393302619457245, 0.12326180934906006, -0.3354022800922394,
+ -0.021324923262000084, 0.15588989853858948, -0.22342416644096375,
+ 0.21207521855831146, 0.1676362007856369, -0.031246595084667206,
+ -0.15418510138988495, 0.1134251281619072, 0.01112314686179161,
+ 0.06827264279127121, 0.3957652747631073, -0.11789149045944214,
+ -0.06304426491260529, -0.04616375267505646, -0.028245581313967705,
+ 0.03746696934103966, 0.2729150056838989, 0.2980518043041229,
+ -0.13247166574001312, 0.06033218279480934, 0.1739385426044464,
+ -0.14827759563922882, 0.2237948477268219, 0.22004494071006775,
+ 0.02568027190864086, 0.025399191305041313, -0.06991585344076157,
+ 0.09142088890075684, -0.10177119076251984, -0.013064135797321796,
+ -0.02862808108329773, 0.1302715688943863, 0.38543301820755005},
+ {0.013769070617854595, -0.5846911072731018, 0.5512388348579407,
+ -0.11272523552179337, -0.19490034878253937, -0.2565457224845886,
+ -0.23317329585552216, -0.19030486047267914, -0.1578485518693924,
+ -0.24035201966762543, -0.24803556501865387, -0.26435545086860657,
+ -0.25116589665412903, -0.22503158450126648, -0.22953854501247406,
+ -0.21021223068237305, -0.31216686964035034, -0.22333157062530518,
+ -0.32187363505363464, -0.3029765784740448, -0.24051706492900848,
+ -0.23034712672233582, -0.3314359486103058, -0.37219488620758057,
+ -0.28849393129348755, -0.20002073049545288, -0.21362800896167755,
+ -0.2628699839115143, -0.2628925144672394, -0.2963508069515228,
+ -0.307897686958313, -0.268155038356781, -0.19812746345996857,
+ -0.13893698155879974, -0.1573473960161209, -0.2011474370956421,
+ -0.18585704267024994, -0.14873166382312775, -0.13824716210365295},
+ {-0.05314579978585243, 0.7523375749588013, 0.2598535716533661,
+ -0.17727185785770416, 0.1135229840874672, 0.06993293762207031,
+ -0.04812946543097496, 0.00823946949094534, -0.14942558109760284,
+ 0.054347969591617584, 0.2968735098838806, 0.34287720918655396,
+ 0.280839741230011, 0.3146897852420807, 0.17328380048274994,
+ 0.1584632396697998, 0.21966080367565155, 0.07573126256465912,
+ 0.17618675529956818, 0.32475289702415466, 0.2940802276134491,
+ 0.24076588451862335, 0.2897166609764099, 0.25118488073349,
+ 0.36707302927970886, 0.26570045948028564, 0.15859922766685486,
+ -0.027950963005423546, 0.22941812872886658, 0.20708845555782318,
+ 0.3975226581096649, 0.32050493359565735, 0.13060817122459412,
+ -0.09379860758781433, 0.21186305582523346, 0.09792902320623398,
+ 0.2692076861858368, 0.2900049090385437, -0.07906053960323334},
+ {0.09708496928215027, -0.4479731619358063, 0.4129363000392914,
+ -0.12813898921012878, -0.24501551687717438, -0.007147803902626038,
+ 0.12501578032970428, 0.15972444415092468, -0.046475086361169815,
+ 0.04627211391925812, -0.1779445856809616, 0.15999722480773926,
+ 0.012248773127794266, 0.2567426562309265, -0.1534310132265091,
+ -0.5407706499099731, -0.5251794457435608, -0.620708703994751,
+ -0.7966707944869995, -0.8259286284446716, -1.1531893014907837,
+ -0.06282037496566772, 0.018866484984755516, 0.25254976749420166,
+ 0.016242794692516327, -0.1762991100549698, 0.0400409922003746,
+ 0.039974261075258255, 0.057034797966480255, 0.09409859031438828,
+ -0.023920977488160133, -0.23220209777355194, 0.02257700078189373,
+ -0.02287943847477436, -0.1351003497838974, 0.26738467812538147,
+ -0.06289515644311905, -0.36144575476646423, -0.1757649928331375},
+ {-0.04892367497086525, -0.14533080160617828, 0.04394098371267319,
+ 0.18445837497711182, 0.1654195934534073, -0.1834501475095749,
+ -0.2684222161769867, -0.1297248899936676, 0.1869022101163864,
+ -0.24817773699760437, -0.09519034624099731, -0.07335233688354492,
+ 0.08445251733064651, 0.09258349984884262, 0.074198417365551,
+ 0.10382183641195297, -0.28430473804473877, 0.1751958578824997,
+ -0.0352930948138237, -0.002168126869946718, -0.18006852269172668,
+ -0.15727508068084717, -0.05538100376725197, -0.29070398211479187,
+ -0.020768627524375916, 0.007405313663184643, -0.010987472720444202,
+ 0.09963808953762054, 0.22944900393486023, -0.14513982832431793,
+ -0.2741614878177643, -0.10022988170385361, 0.0023409912828356028,
+ 0.21414153277873993, -0.022510847076773643, 0.026841502636671066,
+ -0.022834783419966698, 0.033971697092056274, -0.0652812272310257},
+ {0.06941910833120346, 0.2307884395122528, -0.4258730411529541,
+ 0.04212229326367378, 0.11142948269844055, 0.0009856694377958775,
+ 0.053949449211359024, 0.05996058136224747, 0.21680369973182678,
+ 0.28738898038864136, 0.29150739312171936, 0.32928434014320374,
+ 0.3541754484176636, 0.3368116021156311, -0.00803755410015583,
+ 0.4782446324825287, 0.2437545210123062, 0.13553491234779358,
+ 0.24511919915676117, 0.17652280628681183, 0.11028104275465012,
+ 0.2833288908004761, 0.05559786409139633, 0.2165931761264801,
+ 0.18077352643013, 0.22178128361701965, 0.14124399423599243,
+ 0.3074718415737152, 0.3921816051006317, 0.08296487480401993,
+ -0.0009235194884240627, 0.23364491760730743, 0.17246603965759277,
+ -0.058974068611860275, 0.07222584635019302, 0.2051154226064682,
+ 0.02858741767704487, 0.12297876179218292, 0.13099366426467896},
+ {-0.03531448170542717, -0.4284868836402893, 0.45774978399276733,
+ 0.012738638557493687, -0.06293029338121414, 0.03293687477707863,
+ -0.030897106975317, 0.05215216800570488, 0.01656010001897812,
+ -0.25508102774620056, -0.1763158142566681, -0.10658129304647446,
+ -0.09591252356767654, -0.30167704820632935, -0.10403881967067719,
+ -0.14604578912258148, -0.21161964535713196, -0.10734705626964569,
+ -0.1167154535651207, -0.17722226679325104, -0.15885475277900696,
+ -0.01667427085340023, -0.0850716084241867, -0.015633581206202507,
+ -0.17956818640232086, -0.14674407243728638, -0.17541185021400452,
+ -0.057880498468875885, -0.2453235387802124, -0.06759515404701233,
+ -0.1290999799966812, -0.17508059740066528, -0.0815165713429451,
+ -0.011897263117134571, -0.008339732885360718, -0.065400131046772,
+ -0.060210105031728745, -0.11520595848560333, -0.024683095514774323},
+ {-0.007051828783005476, -0.5795698165893555, 0.2616208493709564,
+ 0.18928714096546173, -0.1103731095790863, 0.391353964805603,
+ 0.02108949050307274, -0.17036226391792297, -0.058789730072021484,
+ 0.09170607477426529, 0.10390841215848923, 0.24596062302589417,
+ 0.05414801836013794, -0.05131004750728607, -0.15742118656635284,
+ 0.11092648655176163, 0.17388789355754852, 0.3716771900653839,
+ 0.06327736377716064, -0.11533021181821823, -0.2478092908859253,
+ -0.660697877407074, -0.6997424364089966, -0.9039795994758606,
+ -0.7242019176483154, -0.49191704392433167, 0.015874626114964485,
+ 2.688910171855241e-05, -0.02389361523091793, 0.2530113160610199,
+ 0.1475967913866043, -0.0922568291425705, -0.007132359314709902,
+ -0.0904783383011818, -0.132267028093338, 0.2668149173259735,
+ 0.06903543323278427, -0.10994337499141693, -0.1272840052843094},
+ {0.0471239872276783, 0.020695969462394714, -0.7168578505516052,
+ 0.5093693733215332, -0.030140938237309456, -0.22747023403644562,
+ -0.25409042835235596, -0.18175582587718964, -0.18896658718585968,
+ 0.5227402448654175, 0.08515218645334244, -0.10671238601207733,
+ -0.15312309563159943, -0.04302205145359039, 0.012804902158677578,
+ 0.6859827041625977, 0.1906748116016388, -0.08938924968242645,
+ -0.21533559262752533, -0.1416926234960556, 0.020838038995862007,
+ 0.6381765604019165, 0.2380950003862381, 0.030860643833875656,
+ -0.19294621050357819, -0.05344831198453903, -0.11034175753593445,
+ 0.7216230034828186, 0.2766082286834717, -0.04102609306573868,
+ -0.14435695111751556, -0.006446989253163338, 0.00232849083840847,
+ 0.5642573237419128, -0.05836543068289757, -0.13878457248210907,
+ -0.20316267013549805, -0.14023350179195404, 0.14346078038215637},
+ {-0.01100603211671114, 0.6119253039360046, -0.4091959595680237,
+ 0.06558851897716522, 0.42609697580337524, -0.0037159561179578304,
+ 0.14729297161102295, 0.10666079819202423, -0.2884645164012909,
+ -0.5240380764007568, -0.19934652745723724, -0.08860992640256882,
+ -0.020556263625621796, 0.35477107763290405, 0.18759052455425262,
+ 0.12712500989437103, -0.07009907811880112, 0.05242597684264183,
+ 0.038918398320674896, 0.006009542383253574, 0.17693501710891724,
+ 0.041911158710718155, 0.14298038184642792, 0.1873207986354828,
+ 0.04587671533226967, 0.2144293636083603, 0.03615890070796013,
+ 0.05550087243318558, 0.16231825947761536, 0.15559819340705872,
+ 0.1552893966436386, 0.09440326690673828, -0.18670734763145447,
+ -0.2709261476993561, -0.04157088324427605, 0.3122725188732147,
+ 0.28980329632759094, 0.2264399230480194, -0.10634451359510422},
+ {0.06254897266626358, -0.6196362376213074, 0.6025203466415405,
+ 0.11161265522241592, -0.052786458283662796, -0.13132710754871368,
+ -0.7247132658958435, 0.18568913638591766, 0.2994799315929413,
+ 0.1251952201128006, 0.02946236915886402, -0.060985174030065536,
+ -0.797828197479248, 0.23308810591697693, -0.014649142511188984,
+ -0.09823044389486313, 0.15667954087257385, 0.07838951796293259,
+ -0.6033301949501038, 0.014825675636529922, 0.25095334649086,
+ -0.06793476641178131, 0.013121623545885086, 0.15114790201187134,
+ -0.49352335929870605, 0.031811729073524475, 0.08815255016088486,
+ -0.028477605432271957, -0.1797739714384079, -0.09114011377096176,
+ -0.3749612271785736, -0.37460947036743164, -0.3760620355606079,
+ -0.28513404726982117, -0.1054958626627922, 0.10960482060909271,
+ 0.06615965068340302, -0.055675894021987915, -0.1737530380487442},
+ {0.13888423144817352, -0.5873562097549438, 0.16978712379932404,
+ 0.28093019127845764, 0.15046755969524384, 0.2237604409456253,
+ -0.28529003262519836, -0.3790174722671509, -0.20795367658138275,
+ 0.3284621238708496, 0.21306420862674713, 0.25143730640411377,
+ -0.6542672514915466, -0.4556262195110321, -0.38185837864875793,
+ -0.011103777214884758, 0.11563294380903244, -0.3716322183609009,
+ -0.5330761075019836, -0.012916614301502705, 0.02007022500038147,
+ -0.099933922290802, -0.22296938300132751, -0.534605085849762,
+ 0.01949145831167698, 0.004943278152495623, 0.03775583207607269,
+ -0.05682786554098129, -0.21848495304584503, -0.537432849407196,
+ -0.12041954696178436, 0.1908755898475647, 0.10865109413862228,
+ -0.19548214972019196, -0.26482370495796204, -0.36857008934020996,
+ 0.2674756348133087, 0.08855781704187393, 0.04570328816771507},
+ {-0.05368964746594429, 0.6192870736122131, -0.33081063628196716,
+ 0.20783433318138123, 0.17222492396831512, 0.36503294110298157,
+ 0.18480457365512848, -0.061916716396808624, -0.14408442378044128,
+ 0.33203545212745667, 0.4111200273036957, 0.3994615077972412,
+ 0.06768767535686493, -0.2823660671710968, -0.21365390717983246,
+ 0.18245723843574524, 0.42606449127197266, 0.6058452725410461,
+ 0.574960470199585, 0.07236404716968536, -0.13103023171424866,
+ -0.020808663219213486, -0.4865782558917999, 0.07700340449810028,
+ 0.40107402205467224, 0.501979410648346, 0.3799593150615692,
+ 0.1941077709197998, -0.17883147299289703, -0.0941716805100441,
+ 0.1814143806695938, 0.5436035990715027, 0.37424829602241516,
+ -0.23359154164791107, 0.011516157537698746, -0.002633195137605071,
+ -0.21482859551906586, 0.518133282661438, 0.30436035990715027},
+ {0.01807929389178753, -0.6852098703384399, 0.41992881894111633,
+ 0.1636180281639099, -0.5590972900390625, 0.102825827896595,
+ -0.09045758098363876, -0.2971607744693756, 0.0519467331469059,
+ 0.05366506427526474, -0.30030307173728943, 0.14812466502189636,
+ -0.03506183251738548, -0.5761938095092773, 0.34073740243911743,
+ -0.04346977546811104, -0.3271547257900238, -0.20639684796333313,
+ 0.0607980415225029, -0.4846431016921997, 0.012289587408304214,
+ -0.15252438187599182, 0.2407602071762085, 0.03090772219002247,
+ -0.022936997935175896, -0.28920990228652954, 0.17836830019950867,
+ 0.09673251211643219, -0.03682679682970047, -0.02382533811032772,
+ -0.2599126100540161, -0.557720422744751, -0.10576503723859787,
+ -0.36833760142326355, -0.1256437748670578, 0.0599532313644886,
+ -0.10303642600774765, 0.21623671054840088, -0.14162445068359375},
+ {-0.09308505058288574, 0.19999635219573975, -0.3973280191421509,
+ -0.03686906024813652, -0.13052146136760712, -0.26824745535850525,
+ 0.9706709980964661, -0.0929502621293068, -0.40638747811317444,
+ 0.13770918548107147, 0.19181790947914124, 0.3553939461708069,
+ 0.3697066009044647, -0.14043213427066803, 0.14021499454975128,
+ 0.2260977029800415, -0.34186357259750366, 0.4376569092273712,
+ 0.3898400664329529, 0.4258025884628296, 0.5386190414428711,
+ 0.15920431911945343, 0.2519061863422394, 0.2692123055458069,
+ 0.1363021582365036, 0.20871557295322418, -0.06225498393177986,
+ -0.004307935945689678, -0.03956025466322899, -0.14571115374565125,
+ 0.2034275233745575, 0.4023353159427643, 0.009865602478384972,
+ 0.04790698364377022, -0.03805490955710411, 0.10599266737699509,
+ -0.12662111222743988, 0.37499362230300903, 0.2709113359451294},
+ {0.029566174373030663, 0.034292761236429214, -0.5210411548614502,
+ -0.3817058503627777, 0.2122848480939865, 0.29063475131988525,
+ 0.3653823733329773, 0.2473134994506836, -0.416418194770813,
+ -0.02994663454592228, 0.2222173810005188, 0.32992371916770935,
+ 0.2550458014011383, 0.10767468065023422, 0.09665524959564209,
+ -0.17182691395282745, -0.03997958451509476, 0.11355490982532501,
+ -0.007655668538063765, -0.11215823143720627, -0.019112741574645042,
+ -0.05037914961576462, 0.025794440880417824, -0.1344989836215973,
+ 0.06139484792947769, 0.09545400738716125, -0.1101912185549736,
+ 0.1344105303287506, 0.08588050305843353, 0.3810788691043854,
+ 0.22621816396713257, 0.153024822473526, 0.16792044043540955,
+ -0.353424996137619, 0.22742122411727905, 0.1755727380514145,
+ 0.2354748696088791, 0.3006261885166168, -0.32519757747650146},
+ {0.057807255536317825, -0.6952963471412659, 0.33396047353744507,
+ -0.020888041704893112, 0.17092721164226532, -0.9945868253707886,
+ 0.2201383411884308, 0.17976316809654236, 0.15334481000900269,
+ 0.19435787200927734, 0.08431463688611984, -0.7710793018341064,
+ 0.3121849596500397, 0.15167559683322906, 0.012426916509866714,
+ 0.12697003781795502, 0.14792561531066895, -0.5363337397575378,
+ 0.22877441346645355, 0.15429824590682983, 0.09144335240125656,
+ -0.14000125229358673, -0.050841886550188065, -0.42057234048843384,
+ -0.2393963485956192, -0.05129554122686386, -0.003026802558451891,
+ -0.3014281094074249, -0.2342134416103363, 0.10446413606405258,
+ -0.26319751143455505, -0.23222744464874268, -0.061295825988054276,
+ -0.28431037068367004, 0.23245635628700256, 0.3659917116165161,
+ -0.10064941644668579, -0.08006837218999863, -0.27883410453796387},
+ {0.048384301364421844, 0.12694862484931946, -0.5294657349586487,
+ -0.19357776641845703, -0.11984686553478241, -0.11530221253633499,
+ 0.039698582142591476, 0.1026274561882019, 0.3602553904056549,
+ -0.11306337267160416, -0.1790277510881424, -0.1661999374628067,
+ 0.15976718068122864, 0.3324804902076721, 0.19267262518405914,
+ 0.01033808384090662, -0.30160263180732727, 0.016503019258379936,
+ 0.2756708264350891, 0.2520870566368103, -0.1468469351530075,
+ 0.9820060729980469, 0.7080676555633545, 0.4326748251914978,
+ 0.5233202576637268, 0.009801066480576992, -0.35402387380599976,
+ -0.22784560918807983, 0.0738571360707283, -0.14552663266658783,
+ 0.03377949073910713, 0.19883984327316284, 0.04282594472169876,
+ -0.021550295874476433, -0.13228420913219452, 0.10770928859710693,
+ 0.33394408226013184, 0.20864664018154144, 0.08860652148723602},
+ {0.11843646317720413, -0.4159732460975647, 0.22597195208072662,
+ -0.12180208414793015, 0.01564262993633747, -0.042087212204933167,
+ 0.2620064318180084, -0.09275996685028076, -0.09910421073436737,
+ -0.017230799421668053, -0.040522366762161255, -0.061305586248636246,
+ -0.2112894356250763, -0.33811381459236145, -0.6066606640815735,
+ -0.11849819868803024, -0.08867447078227997, 0.1799202710390091,
+ -0.37285658717155457, -0.3814027011394501, -0.2755228579044342,
+ -0.16796298325061798, -0.17450657486915588, -0.06374989449977875,
+ -0.737914502620697, 0.017732812091708183, -0.022192994132637978,
+ -0.08882194012403488, -0.13826707005500793, -0.14508335292339325,
+ -0.7481937408447266, 0.32625290751457214, 0.36770156025886536,
+ -0.022060895338654518, -0.2565731704235077, -0.11025233566761017,
+ -0.7961760759353638, 0.10780394077301025, 0.2117353081703186},
+ {0.11192512512207031, 0.11834308505058289, 0.5577203035354614,
+ -0.03312584385275841, 0.0023232190869748592, 0.015572037547826767,
+ -0.07309339940547943, -0.14679454267024994, 0.014682219363749027,
+ -0.06854266673326492, -0.46989065408706665, 0.040680255740880966,
+ -0.1096443384885788, -0.245248481631279, 0.025246765464544296,
+ -0.25469234585762024, -0.1891217827796936, 0.19857315719127655,
+ 0.1814412921667099, -0.2385609894990921, 0.06672833114862442,
+ -0.008001350797712803, -0.4511914551258087, -0.06387469917535782,
+ 0.3029514253139496, -0.3925434947013855, -0.0821698009967804,
+ -0.24875248968601227, -0.3012814521789551, -0.4584299623966217,
+ -0.4808945953845978, -0.8514521718025208, -0.18306726217269897,
+ -0.14097513258457184, -0.08257997035980225, -0.16689318418502808,
+ 0.06947899609804153, 0.20391350984573364, -0.018619174137711525},
+ {-0.057785648852586746, 0.09300954639911652, -0.4689059853553772,
+ 0.1648426651954651, 0.08396702259778976, 0.6266127824783325,
+ -0.1838971972465515, -0.014227857813239098, 0.03471587598323822,
+ 0.2750912308692932, 0.10733473300933838, 0.2744787931442261,
+ -0.10809953510761261, -0.00512967724353075, -0.06013353541493416,
+ 0.0035724337212741375, 0.024675004184246063, 0.35025787353515625,
+ 0.2641094923019409, 0.010884558781981468, -0.04900132119655609,
+ -0.27635055780410767, -0.12622179090976715, 0.00905398465692997,
+ 0.48454591631889343, -0.13357502222061157, 0.07618013024330139,
+ 0.10635453462600708, -0.17450925707817078, -0.17418527603149414,
+ 0.8409889340400696, 0.03345108404755592, -0.2688232660293579,
+ -0.3569256663322449, -0.21527869999408722, -0.25498533248901367,
+ 1.2241272926330566, -0.21915435791015625, -0.08330924808979034},
+ {0.004237764980643988, -0.0697011724114418, 0.07490330189466476,
+ 0.151766836643219, -0.046227775514125824, -0.15489302575588226,
+ -0.2799900472164154, -0.2698216736316681, -0.5129883885383606,
+ -0.9737141132354736, -0.6817946434020996, -0.4960925281047821,
+ -0.3450271189212799, -0.3200645446777344, 0.49029162526130676,
+ 0.06646835058927536, -0.1842162162065506, 0.014307484030723572,
+ -0.384706050157547, -0.10603685677051544, 0.42862147092819214,
+ -0.013858359307050705, 0.24292044341564178, 0.033750273287296295,
+ -0.2667754590511322, -0.29077163338661194, 0.05820542201399803,
+ -0.03900567442178726, 0.32569894194602966, -0.032738421112298965,
+ -0.1134883314371109, -0.40433362126350403, -0.06395091116428375,
+ 0.6905305981636047, 0.026921946555376053, -0.33929914236068726,
+ 0.07160123437643051, -0.06491907685995102, -0.15973888337612152},
+ {0.05856530740857124, 0.12397844344377518, 0.8701387047767639,
+ -0.03182496875524521, -0.253333181142807, -0.2643032371997833,
+ -0.23728829622268677, -0.19366268813610077, -0.06383927911520004,
+ -0.24550992250442505, -0.2905799150466919, -0.33510372042655945,
+ -0.3031189739704132, -0.2552282512187958, -0.20421618223190308,
+ -0.3083699345588684, -0.40120765566825867, -0.37575456500053406,
+ -0.37582531571388245, -0.2911745309829712, -0.22100944817066193,
+ -0.26318031549453735, -0.3063667118549347, -0.2890870273113251,
+ -0.24152839183807373, -0.293684184551239, -0.24957194924354553,
+ -0.28916534781455994, -0.3299136459827423, -0.34165674448013306,
+ -0.3278287649154663, -0.25623515248298645, -0.20293454825878143,
+ -0.04264979436993599, -0.22871538996696472, -0.26124200224876404,
+ -0.3007521331310272, -0.22610771656036377, -0.047738876193761826},
+ {0.008099772036075592, -0.026990875601768494, -0.6562643647193909,
+ -0.1732867807149887, -0.03836319223046303, -0.11747653782367706,
+ -0.10076865553855896, 0.18221215903759003, 0.31610503792762756,
+ -0.09964249283075333, 0.08951083570718765, -0.05511249229311943,
+ 0.023738596588373184, 0.04848606511950493, -0.061765026301145554,
+ 0.015505236573517323, 0.7778626084327698, 0.6121479272842407,
+ 0.41325464844703674, 0.08419603109359741, -0.01971576362848282,
+ 0.1394922137260437, 0.4005868136882782, -0.6327587366104126,
+ -0.3502107858657837, 0.13893648982048035, 0.07222487032413483,
+ 0.4995418190956116, 0.25574782490730286, -0.2530134916305542,
+ -0.05046958476305008, -0.10536065697669983, 0.084915891289711,
+ 0.18073856830596924, 0.04707670584321022, 0.17313352227210999,
+ 0.06347852200269699, 0.01503056287765503, -0.14396433532238007},
+ {0.05618756636977196, -1.1257985830307007, -0.032062873244285583,
+ -0.04225843399763107, 0.1537216752767563, 0.08330311626195908,
+ 0.015296880155801773, 0.048019398003816605, -0.39732494950294495,
+ 0.02106216549873352, 0.0906020849943161, -0.18998688459396362,
+ -0.2668699026107788, -0.3087880611419678, 0.035110559314489365,
+ -0.04405481368303299, 0.07853103429079056, 0.3210843801498413,
+ 0.6562601327896118, -0.3573419451713562, 0.082290418446064,
+ -0.09696493297815323, -0.0413985550403595, 0.5873149633407593,
+ 0.4086696207523346, -0.13120432198047638, -0.06535608321428299,
+ -0.16010484099388123, 0.030071159824728966, 0.004400661680847406,
+ -0.01075437106192112, -0.16102257370948792, -0.23914122581481934,
+ -0.12876267731189728, -0.3061940371990204, -0.13859744369983673,
+ -0.30442050099372864, -0.3546913266181946, -0.14033646881580353},
+ {0.03816864266991615, 0.14652034640312195, 0.8200114369392395,
+ -0.029319215565919876, -0.3189127743244171, -0.009894227609038353,
+ -0.12137188017368317, -0.13517610728740692, -0.08066229522228241,
+ -0.17944090068340302, -0.19172446429729462, -0.24901947379112244,
+ -0.09477812051773071, -0.28478261828422546, -0.1498398780822754,
+ -0.13534021377563477, -0.2655714750289917, -0.2982761859893799,
+ -0.14183183014392853, -0.2471006214618683, -0.10375222563743591,
+ -0.046588215976953506, -0.20732241868972778, -0.24160407483577728,
+ -0.4383890926837921, -0.27370938658714294, -0.23451142013072968,
+ 0.0587785467505455, -0.14989061653614044, -0.15256793797016144,
+ -0.21864338219165802, -0.11427301168441772, -0.20889413356781006,
+ 0.0709853246808052, -0.0015882400330156088, -0.16054107248783112,
+ -0.22748447954654694, -0.21164453029632568, 0.13715031743049622},
+ {-0.10669813305139542, 0.4550288915634155, -0.5413661003112793,
+ 0.047230008989572525, 0.02943628840148449, 0.1881634145975113,
+ 0.12487112730741501, 0.1046290248632431, 0.01660250872373581,
+ 0.23414616286754608, 0.2699434757232666, 0.30508384108543396,
+ 0.3037533164024353, 0.2730182111263275, 0.12995439767837524,
+ 0.1981477588415146, 0.2838549017906189, 0.33812886476516724,
+ 0.36038830876350403, 0.37624818086624146, 0.28888678550720215,
+ 0.214364692568779, 0.2618316113948822, 0.37668055295944214,
+ 0.333994597196579, 0.38658320903778076, 0.2441367506980896,
+ 0.19940316677093506, 0.24155522882938385, 0.28061676025390625,
+ 0.36215323209762573, 0.3436132073402405, 0.2027190774679184,
+ 0.15724585950374603, 0.2277892380952835, 0.1275474727153778,
+ 0.21776363253593445, 0.19035212695598602, 0.06998556852340698},
+ {0.022960787639021873, -0.7563416957855225, -0.025262214243412018,
+ 0.06822142750024796, 0.03639568015933037, 0.18217436969280243,
+ 0.1544090062379837, 0.07040825486183167, 0.11660395562648773,
+ 0.0816863626241684, 0.14353832602500916, 0.13758431375026703,
+ 0.30361858010292053, 0.196904256939888, 0.04577496647834778,
+ 0.28219860792160034, 0.2656918168067932, 0.3110378086566925,
+ 0.26560842990875244, 0.21243052184581757, 0.18152369558811188,
+ 0.21091584861278534, 0.19034746289253235, 0.08909028023481369,
+ 0.21522489190101624, 0.14173030853271484, 0.3417768180370331,
+ 0.18507526814937592, -0.14283543825149536, -0.1351975053548813,
+ -0.20199553668498993, -0.1379869133234024, 0.16734367609024048,
+ -0.6747453212738037, -0.5369736552238464, -0.6321397423744202,
+ -0.7276831269264221, -0.5738474726676941, -0.5508933663368225},
+ {0.10244058072566986, 0.1430080085992813, -0.8841925859451294,
+ 0.13737766444683075, 0.4065133333206177, 0.13872089982032776,
+ 0.027350980788469315, 0.05535401403903961, 0.08024198561906815,
+ 0.12011479586362839, 0.3620052635669708, 0.24636347591876984,
+ 0.20221582055091858, 0.052145157009363174, -0.19492198526859283,
+ 0.1409502774477005, -0.4506304860115051, 0.12152507901191711,
+ 0.21950629353523254, 0.09734559059143066, 0.016400445252656937,
+ -0.07077250629663467, 0.17797574400901794, -0.03637973964214325,
+ -0.17412734031677246, 0.3339464068412781, 0.0325598381459713,
+ 0.3033127784729004, -0.11466757208108902, -0.13417819142341614,
+ -0.10457408428192139, 0.44079792499542236, 0.015621546655893326,
+ -0.37506139278411865, 0.13041412830352783, 0.18205110728740692,
+ -0.15250539779663086, -0.07956011593341827, 0.25120970606803894},
+ {0.046278294175863266, -0.11740633845329285, 1.089350700378418,
+ 0.020376795902848244, -0.19688086211681366, -0.1805310696363449,
+ -0.209486186504364, -0.16701819002628326, -0.045592620968818665,
+ -0.21368589997291565, -0.21747377514839172, -0.2843824028968811,
+ -0.23390117287635803, -0.21289955079555511, -0.23041605949401855,
+ -0.26539912819862366, -0.3547888398170471, -0.3421434462070465,
+ -0.3327845335006714, -0.250760555267334, -0.2523375153541565,
+ -0.27749374508857727, -0.2744956314563751, -0.25130772590637207,
+ -0.21133682131767273, -0.2509552836418152, -0.23444898426532745,
+ -0.2372768372297287, -0.2850545644760132, -0.316015362739563,
+ -0.2975063621997833, -0.24354492127895355, -0.20178793370723724,
+ -0.0038140355609357357, -0.21768881380558014, -0.18353962898254395,
+ -0.23831598460674286, -0.2384571135044098, 0.003989584278315306},
+ {0.017063545063138008, -0.6385512351989746, -0.005161669570952654,
+ -0.44543272256851196, -0.5459991097450256, -0.762334942817688,
+ -0.8478168845176697, -0.5584686994552612, -0.46507367491722107,
+ 0.09076783806085587, 0.046751830726861954, -0.08217187225818634,
+ -0.1637035608291626, 0.13195332884788513, 0.15706226229667664,
+ 0.41283345222473145, 0.11738578975200653, 0.0944710373878479,
+ -0.1402560919523239, 0.2571197748184204, 0.28270983695983887,
+ 0.272771418094635, 0.06263969093561172, 0.15666712820529938,
+ 0.1466274857521057, 0.19896674156188965, 0.3420456349849701,
+ 0.07097689807415009, 0.13848717510700226, 0.01657203771173954,
+ 0.060617633163928986, 0.31763288378715515, -0.03253256902098656,
+ 0.09531920403242111, 0.13176977634429932, 0.14079827070236206,
+ 0.012504402548074722, 0.25632742047309875, 0.14230354130268097},
+ {0.05398796871304512, -0.5419279336929321, 0.8166227340698242,
+ -0.16385658085346222, -0.2860194146633148, -0.23915031552314758,
+ -0.2613343298435211, -0.23814897239208221, -0.17554517090320587,
+ -0.25778838992118835, -0.25481143593788147, -0.3060426115989685,
+ -0.26207107305526733, -0.2708345353603363, -0.238281711935997,
+ -0.3117419481277466, -0.3786850869655609, -0.3606913685798645,
+ -0.36739954352378845, -0.2842467427253723, -0.27185383439064026,
+ -0.30130186676979065, -0.3089122772216797, -0.27165958285331726,
+ -0.25264182686805725, -0.27011173963546753, -0.2608575224876404,
+ -0.27912378311157227, -0.33230409026145935, -0.3313448429107666,
+ -0.32644760608673096, -0.29419687390327454, -0.25220757722854614,
+ -0.17173077166080475, -0.2718055546283722, -0.24170760810375214,
+ -0.29690635204315186, -0.2668360471725464, -0.13791951537132263},
+ {0.04249582067131996, -0.9812335968017578, 0.3505050539970398,
+ -0.2518409192562103, -0.2315329611301422, -0.1967104971408844,
+ 0.12303876131772995, -0.11617061495780945, 0.03054429590702057,
+ -0.2603994607925415, -0.16490623354911804, -0.007859586738049984,
+ -0.3128829300403595, 0.13055944442749023, -0.11283731460571289,
+ 0.19011594355106354, -0.3774714171886444, -0.15656964480876923,
+ -0.20725825428962708, 0.4084702134132385, 0.01729133538901806,
+ 0.2706211805343628, 0.23963765799999237, -0.3194586932659149,
+ -0.45846274495124817, -0.6791356801986694, -0.9183771014213562,
+ 0.041772112250328064, -0.16868390142917633, -0.2744351625442505,
+ 0.07300782948732376, 0.1570117175579071, -0.0391424335539341,
+ -0.16010679304599762, -0.2705878019332886, -0.265911728143692,
+ -0.07749602198600769, -0.15926562249660492, -0.010405438020825386},
+ {-0.15670263767242432, 0.06552654504776001, -0.49708303809165955,
+ 0.10627339780330658, 0.19418950378894806, 0.33137384057044983,
+ -0.04863457381725311, -0.0002866242139134556, 0.02486383356153965,
+ -0.23289883136749268, -0.10767053067684174, 0.10891299694776535,
+ -0.13933154940605164, -0.0562131442129612, 0.15280990302562714,
+ 0.05856317654252052, -0.003019270719960332, -0.01955210603773594,
+ -0.0786638855934143, 0.02273860014975071, 0.38086843490600586,
+ 0.015750713646411896, 0.30021101236343384, 0.17668351531028748,
+ -0.07889775186777115, 0.11917363107204437, 0.24197813868522644,
+ -0.14974965155124664, -0.008704896084964275, 0.3209841847419739,
+ 0.2929234504699707, 0.3452242910861969, 0.25984227657318115,
+ -0.1037081629037857, -0.03097035177052021, -0.03904604911804199,
+ 0.21592877805233002, 0.20093800127506256, -0.02984934113919735},
+ {0.1110723614692688, -0.30117979645729065, 0.2043790966272354,
+ -0.6383538246154785, -0.536280632019043, -0.14966197311878204,
+ 0.08101044595241547, 0.1640348583459854, -0.025126993656158447,
+ 0.23246164619922638, -0.3118591010570526, -0.2548341453075409,
+ -0.3442353904247284, -0.28033414483070374, -0.5860548615455627,
+ 0.3573434352874756, 0.22373342514038086, 0.014313971623778343,
+ -0.033178698271512985, -0.20280389487743378, 0.16429084539413452,
+ -0.03785719722509384, 0.0856257900595665, 0.015941767022013664,
+ -0.18273063004016876, -0.41066375374794006, -0.3517788350582123,
+ -0.1534031331539154, 0.13926997780799866, 0.20684924721717834,
+ -0.061256807297468185, -0.2896139919757843, 0.07138903439044952,
+ 0.2864929735660553, -0.009915164671838284, -0.05350836366415024,
+ 0.25035423040390015, -0.5975751876831055, -0.006170668173581362},
+ {0.12005040049552917, -0.3359397351741791, 0.06920599192380905,
+ -0.16209834814071655, -0.3759506940841675, 0.29765793681144714,
+ -0.052548088133335114, -0.3501579463481903, -0.06446950882673264,
+ -0.36970844864845276, -0.1581408679485321, 0.2836640179157257,
+ -0.2969404458999634, -0.26580333709716797, -0.30694854259490967,
+ -0.20928078889846802, -0.06659498065710068, 0.06262539327144623,
+ -0.28173190355300903, -0.5303751826286316, -0.18141047656536102,
+ -0.08660170435905457, 0.06916430592536926, 0.16866236925125122,
+ -0.27958157658576965, -0.34707725048065186, -0.31698885560035706,
+ -0.21292375028133392, 0.05616316571831703, 0.16938413679599762,
+ 0.10741657018661499, 0.168862447142601, 0.23488201200962067,
+ 0.015468287281692028, -0.03646502271294594, -0.2648639380931854,
+ -0.2527640461921692, -0.14823690056800842, -0.06456912308931351},
+ {0.04210243001580238, 0.45387983322143555, -0.44824910163879395,
+ -0.11651042848825455, 0.0024438428226858377, 0.07898260653018951,
+ 0.14961649477481842, 0.127238467335701, -0.26453179121017456,
+ 0.030821237713098526, -0.0625578761100769, 0.0073285470716655254,
+ 0.1412707269191742, 0.02810809388756752, 0.24902337789535522,
+ 0.1821228265762329, 0.4875296950340271, 0.009102149866521358,
+ 0.2329307645559311, 0.20934829115867615, 0.06645675748586655,
+ 0.26638221740722656, 0.11245708167552948, 0.0901046171784401,
+ 0.09851130098104477, 0.26848214864730835, 0.20406296849250793,
+ 0.2567901313304901, 0.2970711290836334, 0.250925213098526,
+ 0.19565463066101074, 0.1478186994791031, 0.10656914114952087,
+ 0.12078160047531128, 0.2093629390001297, 0.18492747843265533,
+ 0.05206095799803734, 0.18785063922405243, 0.14206662774085999},
+ {-0.04112589359283447, 0.39927321672439575, -0.19951465725898743,
+ -0.35009706020355225, -0.09900064766407013, 0.7361993193626404,
+ -0.18245524168014526, 0.2941736578941345, 0.0583181232213974,
+ -0.12379385530948639, -0.36719080805778503, 0.21095477044582367,
+ 0.09004422277212143, -0.10622923076152802, 0.08987374603748322,
+ -0.18611569702625275, -0.258846253156662, 0.3114860951900482,
+ 0.30926087498664856, 0.18416263163089752, 0.3564222753047943,
+ 0.12976090610027313, 0.5256466269493103, 0.6567301154136658,
+ 0.13811467587947845, 0.11827583611011505, -0.20710952579975128,
+ 0.5976359844207764, 0.4360915422439575, 0.1256430596113205,
+ -0.047309305518865585, -0.03823299705982208, -0.11956600099802017,
+ 0.2341434359550476, 0.3158662021160126, -0.050737254321575165,
+ -0.08090120553970337, -0.047405995428562164, -0.03023303672671318},
+ {0.10158651322126389, -0.5521547794342041, 0.6178520917892456,
+ -0.1693457067012787, -0.2557540237903595, -0.2649931311607361,
+ -0.3328563868999481, -0.20785102248191833, -0.1229957640171051,
+ -0.09505331516265869, -0.17078441381454468, -0.2452021837234497,
+ -0.18229705095291138, -0.23286975920200348, -0.1692340075969696,
+ -0.1465841829776764, -0.3245551884174347, -0.28645777702331543,
+ -0.2977093458175659, -0.25731781125068665, -0.17705601453781128,
+ -0.1440218687057495, -0.17916043102741241, -0.22442571818828583,
+ -0.20666608214378357, -0.29822927713394165, -0.21789993345737457,
+ -0.06410680711269379, -0.1657690405845642, -0.24488262832164764,
+ -0.2960679531097412, -0.32856786251068115, -0.14379723370075226,
+ -0.055669285356998444, -0.15729306638240814, -0.06751980632543564,
+ -0.15515989065170288, -0.18442828953266144, -0.10962274670600891},
+ {-0.1334318369626999, 0.3918937146663666, 0.1863659918308258,
+ -0.2498036026954651, -0.15366065502166748, -0.09301190078258514,
+ 0.41642525792121887, 0.06160397455096245, -0.04211530461907387,
+ -0.1072499081492424, 0.26343709230422974, -0.17040394246578217,
+ 0.3029728829860687, 0.36989137530326843, 0.24300719797611237,
+ 0.07592061907052994, 0.5085697174072266, 0.48401325941085815,
+ 0.5596055388450623, 0.16305021941661835, 0.11628902703523636,
+ 0.206899031996727, 0.314456045627594, 0.23190821707248688,
+ 0.2607883810997009, -0.18294231593608856, 0.11955120414495468,
+ 0.08547386527061462, 0.3099992871284485, 0.21271653473377228,
+ -0.0970039963722229, 0.21062302589416504, -0.12806379795074463,
+ -0.21578791737556458, 0.7068646550178528, -0.14216339588165283,
+ 0.01908116042613983, -0.13280142843723297, -0.1397237330675125}};
+
+const float six_dense_biases[SIX_DENSE_NUM] = {
+ -0.06967716664075851, -0.44022783637046814, -0.5417478084564209,
+ -0.9069390892982483, -0.5126388072967529, -0.6354130506515503,
+ -0.10972009599208832, -0.562232494354248, -0.6675834655761719,
+ -0.6644823551177979, -0.8808755278587341, -0.3119734525680542,
+ -0.7456325888633728, -0.5520071983337402, -0.35148730874061584,
+ -0.4321696162223816, 0.20877626538276672, -0.39401814341545105,
+ -0.34259599447250366, -0.05571189150214195, -0.20628471672534943,
+ -0.6253416538238525, -0.06269057095050812, -0.5957340002059937,
+ -0.3175065815448761, -0.3733671009540558, -0.4160494804382324,
+ -0.7057332396507263, -0.0038920114748179913, -0.22997768223285675,
+ -0.6255137324333191, -0.7110783457756042, -0.1551521271467209,
+ -0.24990537762641907, -0.6163766980171204, -0.4247187077999115,
+ -0.7986910939216614, -0.4614383280277252, -0.3101421296596527,
+ -0.26032987236976624, -0.6711196899414062, -0.5886708498001099,
+ -0.46851369738578796, -0.5316239595413208, -0.6672037243843079,
+ -0.5897069573402405, -0.6752277612686157, -0.2791188359260559,
+ 0.08230648934841156, -0.3046773374080658, -0.20194388926029205,
+ -0.20666947960853577, -0.332783579826355, -0.6711490750312805,
+ -0.32295775413513184, -0.17244867980480194, -0.37504926323890686,
+ -0.28200626373291016, -0.5700741410255432, -0.363629549741745,
+ -0.5895812511444092, -0.7540486454963684, -0.5940008163452148,
+ -0.6399450302124023};
+
+const float six_output_weights[2][SIX_DENSE_NUM] = {
+ {-0.07302232086658478, 0.13510112464427948, 0.1300254911184311,
+ 0.1799755096435547, 0.04949653893709183, 0.07790026068687439,
+ 0.1633823662996292, 0.18218885362148285, 0.14318706095218658,
+ 0.12348434329032898, -0.059174586087465286, 0.1362956464290619,
+ 0.12713192403316498, -0.11747836321592331, 0.04890844225883484,
+ -0.10521009564399719, -0.1504904329776764, -0.06776679307222366,
+ -0.011088703759014606, -0.1176120936870575, 0.11910095065832138,
+ 0.17112720012664795, 0.40426141023635864, 0.117193304002285,
+ 0.03174498677253723, 0.2071460783481598, 0.1914520561695099,
+ -0.10132134705781937, 0.038214121013879776, 0.0016146935522556305,
+ -0.06785089522600174, -0.16885392367839813, 0.22577765583992004,
+ -0.02406524494290352, -0.107661671936512, -0.03207802027463913,
+ 0.14433519542217255, -0.10634109377861023, 0.11385593563318253,
+ -0.09148751199245453, -0.12748983502388, 0.09944026917219162,
+ -0.11984292417764664, -0.06870798766613007, 0.07336993515491486,
+ -0.06733305752277374, -0.2037811577320099, 0.08543498069047928,
+ -0.08490556478500366, -0.02513868920505047, -0.22716110944747925,
+ -0.11461621522903442, 0.09373198449611664, -0.19322800636291504,
+ -0.1750950962305069, -0.12388377636671066, -0.13034087419509888,
+ 0.17253483831882477, -0.11518114805221558, 0.11116097122430801,
+ -0.10767245292663574, 0.1428501009941101, 0.21024677157402039,
+ 0.09458904713392258},
+ {-0.04867282137274742, -0.12133938074111938, -0.12863431870937347,
+ -0.22873400151729584, -0.10455438494682312, -0.0994892343878746,
+ -0.12702268362045288, -0.10685571283102036, -0.11664576828479767,
+ -0.18876326084136963, 0.024635830894112587, -0.16811606287956238,
+ -0.1487940102815628, 0.07733053714036942, -0.04051893949508667,
+ 0.14585408568382263, 0.15599925816059113, -0.029253050684928894,
+ -0.056079715490341187, 0.1628628373146057, -0.15175913274288177,
+ -0.09187500923871994, -0.4156719446182251, -0.13169778883457184,
+ -0.027643941342830658, -0.155934140086174, -0.02847992070019245,
+ 0.12021031230688095, 0.03525504097342491, 0.037111807614564896,
+ -0.08677919209003448, 0.09230437129735947, -0.17035338282585144,
+ -0.028646811842918396, 0.19761770963668823, 0.048951324075460434,
+ -0.16993199288845062, 0.009519846178591251, -0.05790598317980766,
+ 0.13865339756011963, 0.17961318790912628, -0.1378742903470993,
+ 0.11909746378660202, 0.13531020283699036, -0.07563496381044388,
+ 0.1344599574804306, 0.10990381985902786, -0.06671777367591858,
+ -0.005469973664730787, 0.23519796133041382, 0.22312238812446594,
+ 0.1941014975309372, -0.06822828948497772, 0.14889642596244812,
+ 0.11146791279315948, 0.09140922129154205, 0.1110391691327095,
+ -0.12873628735542297, 0.13196496665477753, -0.10414397716522217,
+ 0.06405720114707947, -0.0693216398358345, -0.09506542235612869,
+ -0.03883719816803932}};
+
+const float six_output_bias[2] = {0.39013445377349854, 0.4827316999435425};
A include/weights_6.h => include/weights_6.h +24 -0
@@ 0,0 1,24 @@
+/*
+ This file is part of ct.
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with ct. If not, see <https://www.gnu.org/licenses/>.
+*/
+
+#define SIX_INP_NUM (3 + 6 * 6)
+#define SIX_DENSE_NUM 64
+
+extern const float six_dense_weights[SIX_DENSE_NUM][SIX_INP_NUM];
+extern const float six_dense_biases[SIX_DENSE_NUM];
+extern const float six_output_weights[2][SIX_DENSE_NUM];
+extern const float six_output_bias[2];
M => +1 -1
@@ 60,7 60,7 @@ fi
make pptdb
for size in 5; do
for size in 5 6; do
echo
extract $size notation,result
prepare $size
M src/ct1986.c => src/ct1986.c +2 -1
@@ 30,7 30,8 @@
static int human;
static char *gamelog = 0;
-tak_state_p state;
+static struct tak_state_s state_s;
+static tak_state_p state = &state_s;
static void new_game(uint8_t size) {
reset_state(state, size);
M src/ctlm.c => src/ctlm.c +47 -42
@@ 36,6 36,9 @@ static const char *und = "\033[4m", *rst = "\033[0m";
#define CHAR_STN '/'
#define CHAR_CAP '*'
+static struct tak_state_s state_s;
+static tak_state_p state = &state_s;
+
static void put_stone(const enum STONE_VARIANT stone, const enum COLOUR colour,
const uint8_t top, const uint8_t beyond_carry_limit) {
if (beyond_carry_limit) {
@@ 64,8 67,8 @@ static void put_stone(const enum STONE_VARIANT stone, const enum COLOUR colour,
fputs(rst, stdout);
}
-static void print_cell_line(tak_state_p state, const uint8_t line,
- const uint8_t col, const uint8_t row) {
+static void print_cell_line(const uint8_t line, const uint8_t col,
+ const uint8_t row) {
const uint8_t location = THE_COORDS(state->board_size, col, row),
stack_size = COUNT_AT(state, location);
@@ 97,7 100,7 @@ static void print_cell_line(tak_state_p state, const uint8_t line,
// It takes board_size*(SQUARE_H+1)+1 lines to print the board, they
// may be requested in any order and at any time
-static void print_board_line(tak_state_p state, const uint8_t line) {
+static void print_board_line(const uint8_t line) {
const uint8_t mod = line % (SQUARE_H + 1),
row = state->board_size - line / (SQUARE_H + 1) - 1;
@@ 121,7 124,7 @@ static void print_board_line(tak_state_p state, const uint8_t line) {
if (line < state->board_size * (SQUARE_H + 1)) {
for (uint8_t x = 0; x < state->board_size; x++) {
putchar('|');
- print_cell_line(state, mod - 1, x, row);
+ print_cell_line(mod - 1, x, row);
}
puts("|");
} else {
@@ 139,15 142,14 @@ static void print_board_line(tak_state_p state, const uint8_t line) {
}
// Simple wrapper to print the whole board in one go
-static void print_board(tak_state_p state) {
+static void print_board(void) {
for (uint8_t k = 0; k < state->board_size * (SQUARE_H + 1) + 2; k++) {
- print_board_line(state, k);
+ print_board_line(k);
}
}
// Print the contents of a single square
-static void print_square(tak_state_p state, const uint8_t col,
- const uint8_t row) {
+static void print_square(const uint8_t col, const uint8_t row) {
if (row < state->board_size && col < state->board_size) {
printf("%c%c: ", 'a' + col, '1' + row);
const uint8_t stack_size =
@@ 172,7 174,7 @@ static void print_square(tak_state_p state, const uint8_t col,
}
}
-static void print_info(tak_state_p state) {
+static void print_info() {
printf("Turn: %2d, %s%s%s%s\n", state->ply / 2 + 1,
(state->ply & 1) ? blk : wht, (state->ply & 1) ? "Black" : "White",
rst, (state->ply < 2) ? " (counter-play start)" : "");
@@ 185,8 187,7 @@ static int human;
static char *gamelog = NULL;
static uint8_t auto_board = 0xFF, auto_info = 0xFF;
-static int append_to_gamelog(tak_state_p state, const char *line,
- const uint8_t win_line) {
+static int append_to_gamelog(const char *line, const uint8_t win_line) {
// I _could_ dynamically compute the size but ... don't let
// `perfect' be the enemy of `good' ?
@@ 214,16 215,16 @@ static int append_to_gamelog(tak_state_p state, const char *line,
return EXIT_SUCCESS;
}
-static void end_game(tak_state_p state, char *line, char *win) {
- append_to_gamelog(state, line, 0);
- append_to_gamelog(state, win, 1);
- print_board(state);
+static void end_game(char *line, char *win) {
+ append_to_gamelog(line, 0);
+ append_to_gamelog(win, 1);
+ print_board();
puts("Game over:");
puts(gamelog);
putchar('\n');
}
-static int handle_turn(tak_state_p state, char *line) {
+static int handle_turn(char *line) {
// Track win state
uint8_t new_win = (state->won == 0xFF);
switch (do_ptn(state, line)) {
@@ 246,23 247,23 @@ static int handle_turn(tak_state_p state, char *line) {
if (new_win) {
switch (state->won) {
case WIN_DRAW: {
- end_game(state, line, "1/2-1/2");
+ end_game(line, "1/2-1/2");
break;
}
case WIN_FLAT_BLACK: {
- end_game(state, line, "0-F");
+ end_game(line, "0-F");
break;
}
case WIN_FLAT_WHITE: {
- end_game(state, line, "F-0");
+ end_game(line, "F-0");
break;
}
case WIN_ROAD_BLACK: {
- end_game(state, line, "0-R");
+ end_game(line, "0-R");
break;
}
case WIN_ROAD_WHITE: {
- end_game(state, line, "R-0");
+ end_game(line, "R-0");
break;
}
}
@@ 274,18 275,18 @@ static int handle_turn(tak_state_p state, char *line) {
}
// Valid, append to game log
case ACT_OK: {
- append_to_gamelog(state, line, 0);
+ append_to_gamelog(line, 0);
if (auto_board)
- print_board(state);
+ print_board();
if (auto_info)
- print_info(state);
+ print_info();
break;
}
}
return EXIT_SUCCESS;
}
-static void new_game(tak_state_p state, uint8_t size) {
+static void new_game(uint8_t size) {
reset_state(state, size);
printf("New %dx%d game! negamax at search depth %d.\n", size, size,
negamax_search_depth);
@@ 296,7 297,7 @@ static void new_game(tak_state_p state, uint8_t size) {
gamelog[0] = 0;
}
-static int load_ptn(tak_state_p state, const char *fn) {
+static int load_ptn(const char *fn) {
FILE *fh = NULL;
fh = fopen(fn, "r");
@@ 325,14 326,14 @@ static int load_ptn(tak_state_p state, const char *fn) {
space2++;
line[space2] = 0;
// Try the first piece we found
- r = handle_turn(state, line + space1);
+ r = handle_turn(line + space1);
if (r) {
printf("Error on: %s\n", line + space1);
break;
}
// If there's a second piece, try it
if (space2 + 1 < read) {
- r = handle_turn(state, line + space2 + 1);
+ r = handle_turn(line + space2 + 1);
if (r) {
printf("Error on: %s", line + space2 + 1);
break;
@@ 384,21 385,21 @@ static int negamax_turn(tak_state_p state) {
puts("Opponent concedes!");
printf("Result: %s (%.2f, checked %.1e)\n", negamax_ptn, minimax * 100.0,
num_check);
- return handle_turn(state, negamax_ptn);
+ return handle_turn(negamax_ptn);
} else {
return EXIT_FAILURE;
}
}
-static int input_is_not_turn(tak_state_p state, const char *line) {
+static int input_is_not_turn(const char *line) {
if (!strcmp(line, "help")) {
puts("Valid commands: auto (board|info), board, depth [0-9], eval, \
help, info, load <file.ptn>, log, new, play (b|w), self-play, square\
<col><row>, tps, <PTN>.");
} else if (!strcmp(line, "board")) {
- print_board(state);
+ print_board();
} else if (!strcmp(line, "info")) {
- print_info(state);
+ print_info();
} else if (!strcmp(line, "eval")) {
float eval = nn1986_evaluate_black_win(state) * 100;
if (state->ply & 1) {
@@ 408,8 409,14 @@ help, info, load <file.ptn>, log, new, play (b|w), self-play, square\
}
} else if (!strcmp(line, "log")) {
puts(gamelog);
- } else if (!strcmp(line, "new")) {
- new_game(state, 5);
+ } else if (!strncmp(line, "new", 3)) {
+ if (strnlen(line, 5) == 5 && line[4] >= '5' && line[4] <= '6') {
+ new_game(line[4] - '0');
+ negamax_free();
+ negamax_init(state->board_size);
+ } else {
+ puts("Usage: size [56].");
+ }
} else if (!strcmp(line, "tps")) {
char buf[1000];
generate_tps(state, buf);
@@ 426,7 433,7 @@ help, info, load <file.ptn>, log, new, play (b|w), self-play, square\
}
} else if (!strncmp(line, "load", 4)) {
if (strnlen(line, 6) >= 6) {
- if (load_ptn(state, line + 5)) {
+ if (load_ptn(line + 5)) {
printf("Errors in file %s\n", line);
}
} else {
@@ 448,7 455,7 @@ help, info, load <file.ptn>, log, new, play (b|w), self-play, square\
if (strnlen(line, 10) == 9 && line[7] >= 'a' &&
line[7] <= '`' + state->board_size && line[8] >= '1' &&
line[8] <= '0' + state->board_size) {
- print_square(state, line[7] - 'a', line[8] - '1');
+ print_square(line[7] - 'a', line[8] - '1');
} else {
printf("Usage: square [a-%c][1-%c].\n", '`' + state->board_size,
'0' + state->board_size);
@@ 458,7 465,7 @@ help, info, load <file.ptn>, log, new, play (b|w), self-play, square\
(line[5] == 'w' || line[5] == 'W'))) {
// 'b' is even :)
human = 1 - (line[5] & 1);
- new_game(state, 5);
+ new_game(5);
} else {
puts("Usage: play (b|w).");
}
@@ 480,10 487,8 @@ int main(int argc, char **argv) {
puts(license);
- tak_state_p state = new_tak_state(5);
-
negamax_search_depth = 5;
- new_game(state, 5);
+ new_game(5);
negamax_init(5);
char *line = NULL;
@@ 498,8 503,8 @@ int main(int argc, char **argv) {
read = getline(&line, &alloc_size, stdin);
if (read > 0) {
line[read - 1] = 0;
- if (input_is_not_turn(state, line)) {
- int r = handle_turn(state, line);
+ if (input_is_not_turn(line)) {
+ int r = handle_turn(line);
if (r == EXIT_SUCCESS && state->won == 0xFF) {
human = 1;
}
M src/cttei.c => src/cttei.c +2 -1
@@ 137,7 137,8 @@ int main(int argc, char **argv) {
fflush(stdout);
// Set default option
- tak_state_p state = new_tak_state(5);
+ struct tak_state_s state_s;
+ tak_state_p state = &state_s;
negamax_search_depth = 4;
negamax_init(5);
reset_state(state, 5);
M src/geminict.c => src/geminict.c +2 -2
@@ 39,7 39,8 @@
#define STR_CHF_BLK "b"
#define STR_CHF_WHT "w"
-static tak_state_p state;
+struct tak_state_s state_s;
+static tak_state_p state = &state_s;
static void put_stone(const enum STONE_VARIANT stone, const enum COLOUR colour,
const uint8_t top, const uint8_t beyond_carry_limit) {
@@ 306,7 307,6 @@ int main(int argc, char **argv) {
return EXIT_FAILURE;
};
- state = new_tak_state(5);
negamax_search_depth = 5;
new_game(5);
negamax_init(5);
M src/nn_train.py => src/nn_train.py +16 -15
@@ 56,7 56,7 @@ def train(size, model, data, iterations=1, epochs=10, batch=None):
tra_res = model.evaluate(tra_input, tra_outcome, verbose=False)
results.append((tra_res, val_res))
print(val_res)
- write_weights(model, str(i+1).zfill(len(str(iterations))), (tra_res, val_res))
+ write_weights(size, model, str(i+1).zfill(len(str(iterations))), (tra_res, val_res))
print("\nScores")
for i, data in enumerate(results):
print(f"Iteration {i+1}: {data}")
@@ 74,33 74,34 @@ def make_model(size, magic):
return model
-def write_weights(model, iteration, performance):
+def write_weights(size, model, iteration, performance):
def fix(val):
string = str(np.array(val).tolist())
string = string.replace("[", "{").replace("]", "}")
return string
- dense1_weights = transpose(model.trainable_variables[0], perm=[1, 0])
- dense1_biases = model.trainable_variables[1]
+ size_str = "five" if size==5 else "six"
+ dense_weights = transpose(model.trainable_variables[0], perm=[1, 0])
+ dense_biases = model.trainable_variables[1]
output_weights = transpose(model.trainable_variables[2], perm=[1, 0])
output_bias = model.trainable_variables[3]
# Prepare output
- to_output = [("dense1_weights[DENSE_NUM][INP_NUM]", dense1_weights),
- ("dense1_biases[DENSE_NUM]", dense1_biases),
- ("output_weights[2][DENSE_NUM]", output_weights),
- ("output_bias[2]", output_bias)]
+ to_output = [(f"{size_str}_dense_weights[{size_str.upper()}_DENSE_NUM][{size_str.upper()}_INP_NUM]", dense_weights),
+ (f"{size_str}_dense_biases[{size_str.upper()}_DENSE_NUM]", dense_biases),
+ (f"{size_str}_output_weights[2][{size_str.upper()}_DENSE_NUM]", output_weights),
+ (f"{size_str}_output_bias[2]", output_bias)]
# Write to file
- f = open("weights-"+iteration+".txt", "w")
+ f = open(f"{size_str}_weights-"+iteration+".txt", "w")
f.write("/*\n")
model.summary(print_fn=lambda l: f.write(" * "+l+"\n"))
f.write(" * "+str(performance)+"\n*/\n\n")
- f.write("#include \"weights.h\"\n\n")
+ f.write(f"#include \"weights_{size}.h\"\n\n")
for (name, val) in to_output:
f.write("const float "+name+" =\n"+fix(val)+";\n\n")
f.close()
-data = load_data(5)
-model = make_model(5, 64)
-
-print("Before training", model.evaluate(data[1][0], data[1][1], verbose=False, batch_size=16))
-results = train(5, model, data, iterations=5, epochs=10, batch=128)
+for size in (5,6):
+ data = load_data(size)
+ model = make_model(size, 64)
+ print("Before training", model.evaluate(data[1][0], data[1][1], verbose=False, batch_size=16))
+ results = train(size, model, data, iterations=5, epochs=10, batch=128)