~tslil/ctak

c9b108b767de285037e408e6fc88b91469da803e — tslil clingman 8 months ago f3b67eb
might as well enable size 6

Same network architecture, same training principle. Predictably this is
too slow.

Also statically allocate state in driver programmes.
17 files changed, 1857 insertions(+), 143 deletions(-)

M include/negamax.c
M include/negamax.h
R include/{nn1986.c => nn.c}
R include/{nn1986.h => nn.h}
M include/tak.h
M include/tps.c
D include/weights.c
A include/weights_5.c
R include/{weights.h => weights_5.h}
A include/weights_6.c
A include/weights_6.h
M resources/extract.sh
M src/ct1986.c
M src/ctlm.c
M src/cttei.c
M src/geminict.c
M src/nn_train.py
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 resources/extract.sh => resources/extract.sh +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)