diff --git a/src/evaluate.c b/src/evaluate.c index b5f70073..db6f7d71 100644 --- a/src/evaluate.c +++ b/src/evaluate.c @@ -25,11 +25,14 @@ #include "board.h" #include "evalcache.h" #include "evaluate.h" +#include "move.h" #include "masks.h" +#include "network.h" #include "thread.h" #include "transposition.h" #include "types.h" +extern PKNetwork PKNN; EvalTrace T, EmptyTrace; int PSQT[32][SQUARE_NB]; @@ -426,16 +429,24 @@ int evaluateBoard(Thread *thread, Board *board) { EvalInfo ei; int phase, factor, eval, pkeval, hashed; + // We can recognize positions we just evaluated + if (thread->moveStack[thread->height-1] == NULL_MOVE) + return -thread->evalStack[thread->height-1] + 2 * Tempo; + // Check for this evaluation being cached already if (!TRACE && getCachedEvaluation(thread, board, &hashed)) return hashed; initEvalInfo(thread, board, &ei); - eval = evaluatePieces(&ei, board); + eval = evaluatePieces(&ei, board); + pkeval = ei.pkeval[WHITE] - ei.pkeval[BLACK]; - eval += pkeval + board->psqtmat + thread->contempt; - eval += evaluateClosedness(&ei, board); - eval += evaluateComplexity(&ei, board, eval); + if (ei.pkentry == NULL) + pkeval += partiallyComputePKNetwork(thread); + + eval += pkeval + board->psqtmat + thread->contempt; + eval += evaluateClosedness(&ei, board); + eval += evaluateComplexity(&ei, board, eval); // Calculate the game phase based on remaining material (Fruit Method) phase = 24 - 4 * popcount(board->pieces[QUEEN ]) @@ -458,8 +469,7 @@ int evaluateBoard(Thread *thread, Board *board) { storeCachedPawnKingEval(thread, board, ei.passedPawns, pkeval); // Factor in the Tempo after interpolation and scaling, so that - // in the search we can assume that if a null move is made, then - // then `eval = last_eval + 2 * Tempo` + // if a null move is made, then we know eval = last_eval + 2 * Tempo return Tempo + (board->turn == WHITE ? eval : -eval); } diff --git a/src/history.c b/src/history.c index 03022724..54ad8d76 100644 --- a/src/history.c +++ b/src/history.c @@ -25,25 +25,25 @@ #include "thread.h" #include "types.h" -void updateHistoryHeuristics(Thread *thread, uint16_t *moves, int length, int height, int depth) { +void updateHistoryHeuristics(Thread *thread, uint16_t *moves, int length, int depth) { int entry, bonus, colour = thread->board.turn; uint16_t bestMove = moves[length-1]; // Extract information from last move - uint16_t counter = thread->moveStack[height-1]; - int cmPiece = thread->pieceStack[height-1]; + uint16_t counter = thread->moveStack[thread->height-1]; + int cmPiece = thread->pieceStack[thread->height-1]; int cmTo = MoveTo(counter); // Extract information from two moves ago - uint16_t follow = thread->moveStack[height-2]; - int fmPiece = thread->pieceStack[height-2]; + uint16_t follow = thread->moveStack[thread->height-2]; + int fmPiece = thread->pieceStack[thread->height-2]; int fmTo = MoveTo(follow); // Update Killer Moves (Avoid duplicates) - if (thread->killers[height][0] != bestMove) { - thread->killers[height][1] = thread->killers[height][0]; - thread->killers[height][0] = bestMove; + if (thread->killers[thread->height][0] != bestMove) { + thread->killers[thread->height][1] = thread->killers[thread->height][0]; + thread->killers[thread->height][0] = bestMove; } // Update Counter Moves (BestMove refutes the previous move) @@ -88,13 +88,13 @@ void updateHistoryHeuristics(Thread *thread, uint16_t *moves, int length, int he } } -void updateKillerMoves(Thread *thread, int height, uint16_t move) { +void updateKillerMoves(Thread *thread, uint16_t move) { // Avoid saving the same Killer Move twice - if (thread->killers[height][0] == move) return; + if (thread->killers[thread->height][0] == move) return; - thread->killers[height][1] = thread->killers[height][0]; - thread->killers[height][0] = move; + thread->killers[thread->height][1] = thread->killers[thread->height][0]; + thread->killers[thread->height][0] = move; } @@ -150,7 +150,7 @@ void getCaptureHistories(Thread *thread, uint16_t *moves, int *scores, int start } -void getHistory(Thread *thread, uint16_t move, int height, int *hist, int *cmhist, int *fmhist) { +void getHistory(Thread *thread, uint16_t move, int *hist, int *cmhist, int *fmhist) { // Extract information from this move int to = MoveTo(move); @@ -158,13 +158,13 @@ void getHistory(Thread *thread, uint16_t move, int height, int *hist, int *cmhis int piece = pieceType(thread->board.squares[from]); // Extract information from last move - uint16_t counter = thread->moveStack[height-1]; - int cmPiece = thread->pieceStack[height-1]; + uint16_t counter = thread->moveStack[thread->height-1]; + int cmPiece = thread->pieceStack[thread->height-1]; int cmTo = MoveTo(counter); // Extract information from two moves ago - uint16_t follow = thread->moveStack[height-2]; - int fmPiece = thread->pieceStack[height-2]; + uint16_t follow = thread->moveStack[thread->height-2]; + int fmPiece = thread->pieceStack[thread->height-2]; int fmTo = MoveTo(follow); // Set basic Butterfly history @@ -179,16 +179,16 @@ void getHistory(Thread *thread, uint16_t move, int height, int *hist, int *cmhis else *fmhist = thread->continuation[1][fmPiece][fmTo][piece][to]; } -void getHistoryScores(Thread *thread, uint16_t *moves, int *scores, int start, int length, int height) { +void getHistoryScores(Thread *thread, uint16_t *moves, int *scores, int start, int length) { // Extract information from last move - uint16_t counter = thread->moveStack[height-1]; - int cmPiece = thread->pieceStack[height-1]; + uint16_t counter = thread->moveStack[thread->height-1]; + int cmPiece = thread->pieceStack[thread->height-1]; int cmTo = MoveTo(counter); // Extract information from two moves ago - uint16_t follow = thread->moveStack[height-2]; - int fmPiece = thread->pieceStack[height-2]; + uint16_t follow = thread->moveStack[thread->height-2]; + int fmPiece = thread->pieceStack[thread->height-2]; int fmTo = MoveTo(follow); for (int i = start; i < start + length; i++) { @@ -211,16 +211,16 @@ void getHistoryScores(Thread *thread, uint16_t *moves, int *scores, int start, i } } -void getRefutationMoves(Thread *thread, int height, uint16_t *killer1, uint16_t *killer2, uint16_t *counter) { +void getRefutationMoves(Thread *thread, uint16_t *killer1, uint16_t *killer2, uint16_t *counter) { // Extract information from last move - uint16_t previous = thread->moveStack[height-1]; - int cmPiece = thread->pieceStack[height-1]; + uint16_t previous = thread->moveStack[thread->height-1]; + int cmPiece = thread->pieceStack[thread->height-1]; int cmTo = MoveTo(previous); // Set Killer Moves by height - *killer1 = thread->killers[height][0]; - *killer2 = thread->killers[height][1]; + *killer1 = thread->killers[thread->height][0]; + *killer2 = thread->killers[thread->height][1]; // Set Counter Move if one exists if (previous == NONE_MOVE || previous == NULL_MOVE) *counter = NONE_MOVE; diff --git a/src/history.h b/src/history.h index a8c6feca..d87b4bce 100644 --- a/src/history.h +++ b/src/history.h @@ -26,12 +26,12 @@ static const int HistoryMax = 400; static const int HistoryMultiplier = 32; static const int HistoryDivisor = 512; -void updateHistoryHeuristics(Thread *thread, uint16_t *moves, int length, int height, int depth); -void updateKillerMoves(Thread *thread, int height, uint16_t move); +void updateHistoryHeuristics(Thread *thread, uint16_t *moves, int length, int depth); +void updateKillerMoves(Thread *thread, uint16_t move); void updateCaptureHistories(Thread *thread, uint16_t best, uint16_t *moves, int length, int depth); void getCaptureHistories(Thread *thread, uint16_t *moves, int *scores, int start, int length); -void getHistory(Thread *thread, uint16_t move, int height, int *hist, int *cmhist, int *fmhist); -void getHistoryScores(Thread *thread, uint16_t *moves, int *scores, int start, int length, int height); -void getRefutationMoves(Thread *thread, int height, uint16_t *killer1, uint16_t *killer2, uint16_t *counter); +void getHistory(Thread *thread, uint16_t move, int *hist, int *cmhist, int *fmhist); +void getHistoryScores(Thread *thread, uint16_t *moves, int *scores, int start, int length); +void getRefutationMoves(Thread *thread, uint16_t *killer1, uint16_t *killer2, uint16_t *counter); diff --git a/src/move.c b/src/move.c index 69f7d3c5..5c1ece25 100644 --- a/src/move.c +++ b/src/move.c @@ -48,36 +48,51 @@ int castleRookTo(int king, int rook) { return square(rankOf(king), (rook > king) ? 5 : 3); } -int apply(Thread *thread, Board *board, uint16_t move, int height) { + +int apply(Thread *thread, Board *board, uint16_t move) { // NULL moves are only tried when legal if (move == NULL_MOVE) { - thread->moveStack[height] = NULL_MOVE; - applyNullMove(board, &thread->undoStack[height]); - return 1; + thread->moveStack[thread->height] = NULL_MOVE; + applyNullMove(board, &thread->undoStack[thread->height]); } - // Track some move information for history lookups - thread->moveStack[height] = move; - thread->pieceStack[height] = pieceType(board->squares[MoveFrom(move)]); + else { + + // Track some move information for history lookups + thread->moveStack[thread->height] = move; + thread->pieceStack[thread->height] = pieceType(board->squares[MoveFrom(move)]); + + // Apply the move and reject if illegal + applyMove(board, move, &thread->undoStack[thread->height]); + if (!moveWasLegal(board)) + return revertMove(board, move, &thread->undoStack[thread->height]), 0; + } + + // Advance the Stack before updating + thread->height++; - // Apply the move and reject if illegal - applyMove(board, move, &thread->undoStack[height]); - if (!moveWasLegal(board)) - return revertMove(board, move, &thread->undoStack[height]), 0; + // Update the collected [PKNETWORK_LAYERS1] Neurons + updatePKNetworkAfterMove(thread, move); return 1; } -void applyLegal(Thread *thread, Board *board, uint16_t move, int height) { +void applyLegal(Thread *thread, Board *board, uint16_t move) { // Track some move information for history lookups - thread->moveStack[height] = move; - thread->pieceStack[height] = pieceType(board->squares[MoveFrom(move)]); + thread->moveStack[thread->height] = move; + thread->pieceStack[thread->height] = pieceType(board->squares[MoveFrom(move)]); // Assumed that this move is legal - applyMove(board, move, &thread->undoStack[height]); + applyMove(board, move, &thread->undoStack[thread->height]); assert(moveWasLegal(board)); + + // Advance the Stack before updating + thread->height++; + + // Update the collected [PKNETWORK_LAYERS1] Neurons + updatePKNetworkAfterMove(thread, move); } void applyMove(Board *board, uint16_t move, Undo *undo) { @@ -330,9 +345,16 @@ void applyNullMove(Board *board, Undo *undo) { } } -void revert(Thread *thread, Board *board, uint16_t move, int height) { - if (move == NULL_MOVE) revertNullMove(board, &thread->undoStack[height]); - else revertMove(board, move, &thread->undoStack[height]); + +void revert(Thread *thread, Board *board, uint16_t move) { + + if (move == NULL_MOVE) + revertNullMove(board, &thread->undoStack[--thread->height]); + else + revertMove(board, move, &thread->undoStack[--thread->height]); + + if (thread->pknnchanged[thread->height]) + thread->pknndepth -= 1; } void revertMove(Board *board, uint16_t move, Undo *undo) { @@ -438,6 +460,7 @@ void revertNullMove(Board *board, Undo *undo) { board->numMoves--; } + int legalMoveCount(Board * board) { // Count of the legal number of moves for a given position diff --git a/src/move.h b/src/move.h index bcf1eac8..38757616 100644 --- a/src/move.h +++ b/src/move.h @@ -40,8 +40,8 @@ enum { int castleKingTo(int king, int rook); int castleRookTo(int king, int rook); -int apply(Thread *thread, Board *board, uint16_t move, int height); -void applyLegal(Thread *thread, Board *board, uint16_t move, int height); +int apply(Thread *thread, Board *board, uint16_t move); +void applyLegal(Thread *thread, Board *board, uint16_t move); void applyMove(Board *board, uint16_t move, Undo *undo); void applyNormalMove(Board *board, uint16_t move, Undo *undo); void applyCastleMove(Board *board, uint16_t move, Undo *undo); @@ -49,7 +49,7 @@ void applyEnpassMove(Board *board, uint16_t move, Undo *undo); void applyPromotionMove(Board *board, uint16_t move, Undo *undo); void applyNullMove(Board *board, Undo *undo); -void revert(Thread *thread, Board *board, uint16_t move, int height); +void revert(Thread *thread, Board *board, uint16_t move); void revertMove(Board *board, uint16_t move, Undo *undo); void revertNullMove(Board *board, Undo *undo); diff --git a/src/movepicker.c b/src/movepicker.c index 181c0d0a..9c8ed4ab 100644 --- a/src/movepicker.c +++ b/src/movepicker.c @@ -45,26 +45,25 @@ static int getBestMoveIndex(MovePicker *mp, int start, int end) { } -void initMovePicker(MovePicker *mp, Thread *thread, uint16_t ttMove, int height) { +void initMovePicker(MovePicker *mp, Thread *thread, uint16_t ttMove) { // Start with the table move mp->stage = STAGE_TABLE; mp->tableMove = ttMove; // Lookup our refutations (killers and counter moves) - getRefutationMoves(thread, height, &mp->killer1, &mp->killer2, &mp->counter); + getRefutationMoves(thread, &mp->killer1, &mp->killer2, &mp->counter); // General housekeeping mp->threshold = 0; mp->thread = thread; - mp->height = height; mp->type = NORMAL_PICKER; } -void initSingularMovePicker(MovePicker *mp, Thread *thread, uint16_t ttMove, int height) { +void initSingularMovePicker(MovePicker *mp, Thread *thread, uint16_t ttMove) { // Simply skip over the TT move - initMovePicker(mp, thread, ttMove, height); + initMovePicker(mp, thread, ttMove); mp->stage = STAGE_GENERATE_NOISY; } @@ -80,7 +79,6 @@ void initNoisyMovePicker(MovePicker *mp, Thread *thread, int threshold) { // General housekeeping mp->threshold = threshold; mp->thread = thread; - mp->height = 0; mp->type = NOISY_PICKER; } @@ -194,7 +192,7 @@ uint16_t selectNextMove(MovePicker *mp, Board *board, int skipQuiets) { // Generate and evaluate all quiet moves when not skipping them if (!skipQuiets) { mp->quietSize = genAllQuietMoves(board, mp->moves + mp->split); - getHistoryScores(mp->thread, mp->moves, mp->values, mp->split, mp->quietSize, mp->height); + getHistoryScores(mp->thread, mp->moves, mp->values, mp->split, mp->quietSize); } mp->stage = STAGE_QUIET; diff --git a/src/movepicker.h b/src/movepicker.h index 5ac97f99..64c4b704 100644 --- a/src/movepicker.h +++ b/src/movepicker.h @@ -33,14 +33,14 @@ enum { struct MovePicker { int split, noisySize, quietSize; - int stage, height, type, threshold; + int stage, type, threshold; int values[MAX_MOVES]; uint16_t moves[MAX_MOVES]; uint16_t tableMove, killer1, killer2, counter; Thread *thread; }; -void initMovePicker(MovePicker *mp, Thread *thread, uint16_t ttMove, int height); -void initSingularMovePicker(MovePicker *mp, Thread *thread, uint16_t ttMove, int height); +void initMovePicker(MovePicker *mp, Thread *thread, uint16_t ttMove); +void initSingularMovePicker(MovePicker *mp, Thread *thread, uint16_t ttMove); void initNoisyMovePicker(MovePicker *mp, Thread *thread, int threshold); uint16_t selectNextMove(MovePicker *mp, Board *board, int skipQuiets); diff --git a/src/network.c b/src/network.c new file mode 100644 index 00000000..ec20f42f --- /dev/null +++ b/src/network.c @@ -0,0 +1,212 @@ +/* + Ethereal is a UCI chess playing engine authored by Andrew Grant. + + + Ethereal 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. + + Ethereal 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 this program. If not, see . +*/ + +#include +#include +#include +#include +#include + +#include "bitboards.h" +#include "board.h" +#include "move.h" +#include "network.h" +#include "thread.h" +#include "types.h" + +PKNetwork PKNN; + +static char *PKWeights[] = { + #include "weights/pknet_224x32x1.net" + "" +}; + +static void vectorizePKNetwork(const Board *board, bool *inputs) { + + int index = 0; + + for (int colour = WHITE; colour <= BLACK; colour++) { + + uint64_t ours = board->colours[colour]; + uint64_t pawns = ours & board->pieces[PAWN]; + uint64_t kings = ours & board->pieces[KING]; + + for (int sq = 0; sq < SQUARE_NB; sq++) + if (!testBit(PROMOTION_RANKS, sq)) + inputs[index++] = testBit(pawns, sq); + + for (int sq = 0; sq < SQUARE_NB; sq++) + inputs[index++] = testBit(kings, sq); + } + + assert(index == PKNETWORK_INPUTS); +} + +static int computePKNetworkIndex(int colour, int piece, int sq) { + return (64 + 48) * colour + + (48 * (piece == KING)) + + sq - 8 * (piece == PAWN); +} + + +void initPKNetwork() { + + for (int i = 0; i < PKNETWORK_LAYER1; i++) { + + // Grab the next line and tokenize it + char weights[strlen(PKWeights[i])]; + strcpy(weights, PKWeights[i]); + strtok(weights, " "); + + for (int j = 0; j < PKNETWORK_INPUTS; j++) + PKNN.inputWeights[i][j] = atof(strtok(NULL, " ")); + PKNN.inputBiases[i] = atof(strtok(NULL, " ")); + } + + for (int i = 0; i < PKNETWORK_OUTPUTS; i++) { + + // Grab the next line and tokenize it + char weights[strlen(PKWeights[i + PKNETWORK_LAYER1])]; + strcpy(weights, PKWeights[i + PKNETWORK_LAYER1]); + strtok(weights, " "); + + for (int j = 0; j < PKNETWORK_LAYER1; j++) + PKNN.layer1Weights[i][j] = atof(strtok(NULL, " ")); + PKNN.layer1Biases[i] = atof(strtok(NULL, " ")); + } +} + +int fullyComputePKNetwork(Thread *thread) { + + bool inputsNeurons[PKNETWORK_INPUTS]; + float layer1Neurons[PKNETWORK_LAYER1]; + float outputNeurons[PKNETWORK_OUTPUTS]; + + vectorizePKNetwork(&thread->board, inputsNeurons); + + for (int i = 0; i < PKNETWORK_LAYER1; i++) { + layer1Neurons[i] = PKNN.inputBiases[i]; + for (int j = 0; j < PKNETWORK_INPUTS; j++) + layer1Neurons[i] += inputsNeurons[j] * PKNN.inputWeights[i][j]; + } + + for (int i = 0; i < PKNETWORK_OUTPUTS; i++) { + outputNeurons[i] = PKNN.layer1Biases[i]; + for (int j = 0; j < PKNETWORK_LAYER1; j++) + if (layer1Neurons[j] >= 0.0) + outputNeurons[i] += layer1Neurons[j] * PKNN.layer1Weights[i][j]; + } + + return outputNeurons[0]; +} + +int partiallyComputePKNetwork(Thread *thread) { + + float *layer1Neurons = thread->pknnlayer1[thread->pknndepth]; + float outputNeurons[PKNETWORK_OUTPUTS]; + + for (int i = 0; i < PKNETWORK_OUTPUTS; i++) { + outputNeurons[i] = PKNN.layer1Biases[i]; + for (int j = 0; j < PKNETWORK_LAYER1; j++) + if (layer1Neurons[j] >= 0.0) + outputNeurons[i] += layer1Neurons[j] * PKNN.layer1Weights[i][j]; + } + + return outputNeurons[0]; +} + + +void initPKNetworkCollector(Thread *thread) { + + assert(thread->pknndepth == 0); + + bool inputsNeurons[PKNETWORK_INPUTS]; + vectorizePKNetwork(&thread->board, inputsNeurons); + + for (int i = 0; i < PKNETWORK_LAYER1; i++) { + thread->pknnlayer1[0][i] = PKNN.inputBiases[i]; + for (int j = 0; j < PKNETWORK_INPUTS; j++) + thread->pknnlayer1[0][i] += inputsNeurons[j] * PKNN.inputWeights[i][j]; + } +} + +void updatePKNetworkIndices(Thread *thread, int changes, int indexes[3], int signs[3]) { + + float *layer1Neurons_d1 = thread->pknnlayer1[thread->pknndepth]; + float *layer1Neurons = thread->pknnlayer1[++thread->pknndepth]; + + thread->pknnchanged[thread->height-1] = 1; + memcpy(layer1Neurons, layer1Neurons_d1, sizeof(float) * PKNETWORK_LAYER1); + + for (int j = 0; j < changes; j++) + for (int i = 0; i < PKNETWORK_LAYER1; i++) + layer1Neurons[i] += signs[j] * PKNN.inputWeights[i][indexes[j]]; +} + +void updatePKNetworkAfterMove(Thread *thread, uint16_t move) { + + int to = MoveTo(move); + int from = MoveFrom(move); + int type = MoveType(move); + int colour = !thread->board.turn; + int moved = pieceType(thread->board.squares[to]); + int taken = pieceType(thread->undoStack[thread->height-1].capturePiece); + + int changes = 0, indexes[3], signs[3]; + + thread->pknnchanged[thread->height-1] = 0; + + if (move == NULL_MOVE) + return; + + if (type == NORMAL_MOVE) { + + if (moved == PAWN || moved == KING) { + indexes[changes++] = computePKNetworkIndex(colour, moved, from); + indexes[changes++] = computePKNetworkIndex(colour, moved, to ); + signs[0] = -1; signs[1] = 1; + } + + if (taken == PAWN) { + assert(0); + indexes[changes++] = computePKNetworkIndex(!colour, taken, to); + signs[changes - 1] = -1; + } + } + + else if (type == CASTLE_MOVE) { + indexes[changes++] = computePKNetworkIndex(colour, KING, from); + indexes[changes++] = computePKNetworkIndex(colour, KING, castleKingTo(from, to)); + signs[0] = -1; signs[1] = 1; + } + + else if (type == ENPASS_MOVE) { + indexes[changes++] = computePKNetworkIndex(colour, PAWN, from); + indexes[changes++] = computePKNetworkIndex(colour, PAWN, to); + indexes[changes++] = computePKNetworkIndex(!colour, PAWN, to ^ 8); + signs[0] = -1; signs[1] = 1; signs[2] = -1; + } + + else if (type == PROMOTION_MOVE) { + indexes[changes++] = computePKNetworkIndex(colour, PAWN, from); + signs[0] = -1; + } + + if (changes) + updatePKNetworkIndices(thread, changes, indexes, signs); +} \ No newline at end of file diff --git a/src/network.h b/src/network.h new file mode 100644 index 00000000..e60c7556 --- /dev/null +++ b/src/network.h @@ -0,0 +1,52 @@ +/* + Ethereal is a UCI chess playing engine authored by Andrew Grant. + + + Ethereal 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. + + Ethereal 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 this program. If not, see . +*/ + +#pragma once + +#include + +#include "board.h" +#include "types.h" + +#define PKNETWORK_INPUTS (224) +#define PKNETWORK_LAYER1 ( 32) +#define PKNETWORK_OUTPUTS ( 1) + +typedef struct PKNetwork { + + // PKNetworks are of the form [Input, Hidden Layer 1, Output Layer] + // Our current Network is [224x32, 32x1]. The Network is trained to + // output a Score in CentiPawns, and thus Output Neurons need do not + // need activation functions. The 32x1 operation applys a ReLU, where + // as the 224x32 layer does not, since inputs are binary 0s and 1s + + ALIGN64 float inputWeights[PKNETWORK_LAYER1][PKNETWORK_INPUTS]; + ALIGN64 float inputBiases[PKNETWORK_LAYER1]; + + ALIGN64 float layer1Weights[PKNETWORK_OUTPUTS][PKNETWORK_LAYER1]; + ALIGN64 float layer1Biases[PKNETWORK_OUTPUTS]; + +} PKNetwork; + +void initPKNetwork(); +int fullyComputePKNetwork(Thread *thread); +int partiallyComputePKNetwork(Thread *thread); + +void initPKNetworkCollector(Thread *thread); +void updatePKNetworkIndices(Thread *thread, int changes, int indexes[3], int signs[3]); +void updatePKNetworkAfterMove(Thread *thread, uint16_t move); \ No newline at end of file diff --git a/src/search.c b/src/search.c index 8cda055a..d7128289 100644 --- a/src/search.c +++ b/src/search.c @@ -98,6 +98,9 @@ void* iterativeDeepening(void *vthread) { Limits *const limits = thread->limits; const int mainThread = thread->index == 0; + // Begin tracking incremental NN updates + initPKNetworkCollector(thread); + // Bind when we expect to deal with NUMA if (thread->nthreads > 8) bindThisThread(thread->index); @@ -156,7 +159,7 @@ void aspirationWindow(Thread *thread) { while (1) { // Perform a search and consider reporting results - value = search(thread, pv, alpha, beta, MAX(1, depth), 0); + value = search(thread, pv, alpha, beta, MAX(1, depth)); if ( (mainThread && value > alpha && value < beta) || (mainThread && elapsedTime(thread->info) >= WindowTimerMS)) uciReport(thread->threads, alpha, beta, value); @@ -187,16 +190,16 @@ void aspirationWindow(Thread *thread) { } } -int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int height) { +int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth) { const int PvNode = (alpha != beta - 1); - const int RootNode = (height == 0); + const int RootNode = (thread->height == 0); Board *const board = &thread->board; unsigned tbresult; int hist = 0, cmhist = 0, fmhist = 0; int quietsSeen = 0, quietsPlayed = 0, capturesPlayed = 0, played = 0; - int ttHit, ttValue = 0, ttEval = 0, ttDepth = 0, ttBound = 0; + int ttHit, ttValue = 0, ttEval = VALUE_NONE, ttDepth = 0, ttBound = 0; int R, newDepth, rAlpha, rBeta, oldAlpha = alpha; int inCheck, isQuiet, improving, extension, singular, skipQuiets = 0; int eval, value = -MATE, best = -MATE, futilityMargin, seeMargin[2]; @@ -208,7 +211,7 @@ int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int h // Step 1. Quiescence Search. Perform a search using mostly tactical // moves to reach a more stable position for use as a static evaluation if (depth <= 0 && !board->kingAttackers) - return qsearch(thread, pv, alpha, beta, height); + return qsearch(thread, pv, alpha, beta); // Prefetch TT as early as reasonable prefetchTTEntry(board->hash); @@ -220,7 +223,7 @@ int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int h depth = MAX(0, depth); // Updates for UCI reporting - thread->seldepth = RootNode ? 0 : MAX(thread->seldepth, height); + thread->seldepth = RootNode ? 0 : MAX(thread->seldepth, thread->height); thread->nodes++; // Step 2. Abort Check. Exit the search if signaled by main thread or the @@ -234,24 +237,24 @@ int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int h // Draw Detection. Check for the fifty move rule, repetition, or insufficient // material. Add variance to the draw score, to avoid blindness to 3-fold lines - if (boardIsDrawn(board, height)) return 1 - (thread->nodes & 2); + if (boardIsDrawn(board, thread->height)) return 1 - (thread->nodes & 2); // Check to see if we have exceeded the maxiumum search draft - if (height >= MAX_PLY) + if (thread->height >= MAX_PLY) return evaluateBoard(thread, board); // Mate Distance Pruning. Check to see if this line is so // good, or so bad, that being mated in the ply, or mating in // the next one, would still not create a more extreme line - rAlpha = alpha > -MATE + height ? alpha : -MATE + height; - rBeta = beta < MATE - height - 1 ? beta : MATE - height - 1; + rAlpha = alpha > -MATE + thread->height ? alpha : -MATE + thread->height; + rBeta = beta < MATE - thread->height - 1 ? beta : MATE - thread->height - 1; if (rAlpha >= rBeta) return rAlpha; } // Step 4. Probe the Transposition Table, adjust the value, and consider cutoffs if ((ttHit = getTTEntry(board->hash, &ttMove, &ttValue, &ttEval, &ttDepth, &ttBound))) { - ttValue = valueFromTT(ttValue, height); // Adjust any MATE scores + ttValue = valueFromTT(ttValue, thread->height); // Adjust any MATE scores // Only cut with a greater depth search, and do not return // when in a PvNode, unless we would otherwise hit a qsearch @@ -268,14 +271,14 @@ int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int h // Step 5. Probe the Syzygy Tablebases. tablebasesProbeWDL() handles all of // the conditions about the board, the existance of tables, the probe depth, // as well as to not probe at the Root. The return is defined by the Pyrrhic API - if ((tbresult = tablebasesProbeWDL(board, depth, height)) != TB_RESULT_FAILED) { + if ((tbresult = tablebasesProbeWDL(board, depth, thread->height)) != TB_RESULT_FAILED) { thread->tbhits++; // Increment tbhits counter for this thread // Convert the WDL value to a score. We consider blessed losses // and cursed wins to be a draw, and thus set value to zero. - value = tbresult == TB_LOSS ? -TBWIN + height - : tbresult == TB_WIN ? TBWIN - height : 0; + value = tbresult == TB_LOSS ? -TBWIN + thread->height + : tbresult == TB_WIN ? TBWIN - thread->height : 0; // Identify the bound based on WDL scores. For wins and losses the // bound is not exact because we are dependent on the height, but @@ -288,7 +291,7 @@ int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int h || (ttBound == BOUND_LOWER && value >= beta) || (ttBound == BOUND_UPPER && value <= alpha)) { - storeTTEntry(board->hash, NONE_MOVE, valueToTT(value, height), VALUE_NONE, depth, ttBound); + storeTTEntry(board->hash, NONE_MOVE, valueToTT(value, thread->height), VALUE_NONE, depth, ttBound); return value; } } @@ -298,13 +301,9 @@ int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int h // We can grab in check based on the already computed king attackers bitboard inCheck = !!board->kingAttackers; - // Save a history of the static evaluations. We can reuse a TT entry if the given - // evaluation has been set. Also, if we made a NULL move on the previous ply, we - // can recompute the eval as `eval = -last_eval + 2 * Tempo` - eval = thread->evalStack[height] = - ttHit && ttEval != VALUE_NONE ? ttEval - : thread->moveStack[height-1] != NULL_MOVE ? evaluateBoard(thread, board) - : -thread->evalStack[height-1] + 2 * Tempo; + // Save a history of the static evaluations + eval = thread->evalStack[thread->height] + = ttEval != VALUE_NONE ? ttEval : evaluateBoard(thread, board); // Futility Pruning Margin futilityMargin = FutilityMargin * depth; @@ -314,11 +313,11 @@ int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int h seeMargin[1] = SEEQuietMargin * depth; // Improving if our static eval increased in the last move - improving = height >= 2 && eval > thread->evalStack[height-2]; + improving = thread->height >= 2 && eval > thread->evalStack[thread->height-2]; // Reset Killer moves for our children - thread->killers[height+1][0] = NONE_MOVE; - thread->killers[height+1][1] = NONE_MOVE; + thread->killers[thread->height+1][0] = NONE_MOVE; + thread->killers[thread->height+1][1] = NONE_MOVE; // ------------------------------------------------------------------------ // All elo estimates as of Ethereal 11.80, @ 12s+0.12 @ 1.275mnps @@ -342,16 +341,16 @@ int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int h && !inCheck && eval >= beta && depth >= NullMovePruningDepth - && thread->moveStack[height-1] != NULL_MOVE - && thread->moveStack[height-2] != NULL_MOVE + && thread->moveStack[thread->height-1] != NULL_MOVE + && thread->moveStack[thread->height-2] != NULL_MOVE && boardHasNonPawnMaterial(board, board->turn) && (!ttHit || !(ttBound & BOUND_UPPER) || ttValue >= beta)) { R = 4 + depth / 6 + MIN(3, (eval - beta) / 200); - apply(thread, board, NULL_MOVE, height); - value = -search(thread, &lpv, -beta, -beta+1, depth-R, height+1); - revert(thread, board, NULL_MOVE, height); + apply(thread, board, NULL_MOVE); + value = -search(thread, &lpv, -beta, -beta+1, depth-R); + revert(thread, board, NULL_MOVE); if (value >= beta) return beta; } @@ -370,18 +369,18 @@ int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int h while ((move = selectNextMove(&movePicker, board, 1)) != NONE_MOVE) { // Apply move, skip if move is illegal - if (!apply(thread, board, move, height)) continue; + if (!apply(thread, board, move)) continue; // For high depths, verify the move first with a depth one search if (depth >= 2 * ProbCutDepth) - value = -search(thread, &lpv, -rBeta, -rBeta+1, 1, height+1); + value = -search(thread, &lpv, -rBeta, -rBeta+1, 1); // For low depths, or after the above, verify with a reduced search if (depth < 2 * ProbCutDepth || value >= rBeta) - value = -search(thread, &lpv, -rBeta, -rBeta+1, depth-4, height+1); + value = -search(thread, &lpv, -rBeta, -rBeta+1, depth-4); // Revert the board state - revert(thread, board, move, height); + revert(thread, board, move); // Probcut failed high verifying the cutoff if (value >= rBeta) return value; @@ -390,7 +389,7 @@ int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int h // Step 10. Initialize the Move Picker and being searching through each // move one at a time, until we run out or a move generates a cutoff - initMovePicker(&movePicker, thread, ttMove, height); + initMovePicker(&movePicker, thread, ttMove); while ((move = selectNextMove(&movePicker, board, skipQuiets)) != NONE_MOVE) { // MultiPV and searchmoves may limit our search options @@ -399,7 +398,7 @@ int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int h // For quiet moves we fetch various history scores if ((isQuiet = !moveIsTactical(board, move))) { - getHistory(thread, move, height, &hist, &cmhist, &fmhist); + getHistory(thread, move, &hist, &cmhist, &fmhist); quietsSeen++; } @@ -456,7 +455,7 @@ int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int h continue; // Apply move, skip if move is illegal - if (!apply(thread, board, move, height)) + if (!apply(thread, board, move)) continue; played += 1; @@ -491,7 +490,7 @@ int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int h // which appear to beat beta at a reduced depth. singularity() sets the stage to STAGE_DONE if (movePicker.stage == STAGE_DONE) { - revert(thread, board, move, height); + revert(thread, board, move); return MAX(ttValue - depth, -MATE); } @@ -522,24 +521,24 @@ int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int h // Step 16A. If we triggered the LMR conditions (which we know by the value of R), // then we will perform a reduced search on the null alpha window, as we have no // expectation that this move will be worth looking into deeper - if (R != 1) value = -search(thread, &lpv, -alpha-1, -alpha, newDepth-R, height+1); + if (R != 1) value = -search(thread, &lpv, -alpha-1, -alpha, newDepth-R); // Step 16B. There are two situations in which we will search again on a null window, // but without a depth reduction R. First, if the LMR search happened, and failed // high, secondly, if we did not try an LMR search, and this is not the first move // we have tried in a PvNode, we will research with the normally reduced depth if ((R != 1 && value > alpha) || (R == 1 && !(PvNode && played == 1))) - value = -search(thread, &lpv, -alpha-1, -alpha, newDepth-1, height+1); + value = -search(thread, &lpv, -alpha-1, -alpha, newDepth-1); // Step 16C. Finally, if we are in a PvNode and a move beat alpha while being // search on a reduced depth, we will search again on the normal window. Also, // if we did not perform Step 15B, we will search for the first time on the // normal window. This happens only for the first move in a PvNode if (PvNode && (played == 1 || value > alpha)) - value = -search(thread, &lpv, -beta, -alpha, newDepth-1, height+1); + value = -search(thread, &lpv, -beta, -alpha, newDepth-1); // Revert the board state - revert(thread, board, move, height); + revert(thread, board, move); // Step 17. Update search stats for the best move and its value. Update // our lower bound (alpha) if exceeded, and also update the PV in that case @@ -570,13 +569,13 @@ int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int h // then we are either mated or stalemated, which we can tell by the inCheck // flag. For mates, return a score based on the distance from root, so we // can differentiate between close mates and far away mates from the root - if (played == 0) return inCheck ? -MATE + height : 0; + if (played == 0) return inCheck ? -MATE + thread->height : 0; // Step 19 (~760 elo). Update History counters on a fail high for a quiet move. // We also update Capture History Heuristics, which augment or replace MVV-LVA. if (best >= beta && !moveIsTactical(board, bestMove)) - updateHistoryHeuristics(thread, quietsTried, quietsPlayed, height, depth); + updateHistoryHeuristics(thread, quietsTried, quietsPlayed, depth); if (best >= beta) updateCaptureHistories(thread, bestMove, capturesTried, capturesPlayed, depth); @@ -586,18 +585,18 @@ int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int h if (!RootNode || !thread->multiPV) { ttBound = best >= beta ? BOUND_LOWER : best > oldAlpha ? BOUND_EXACT : BOUND_UPPER; - storeTTEntry(board->hash, bestMove, valueToTT(best, height), eval, depth, ttBound); + storeTTEntry(board->hash, bestMove, valueToTT(best, thread->height), eval, depth, ttBound); } return best; } -int qsearch(Thread *thread, PVariation *pv, int alpha, int beta, int height) { +int qsearch(Thread *thread, PVariation *pv, int alpha, int beta) { Board *const board = &thread->board; int eval, value, best; - int ttHit, ttValue = 0, ttEval = 0, ttDepth = 0, ttBound = 0; + int ttHit, ttValue = 0, ttEval = VALUE_NONE, ttDepth = 0, ttBound = 0; uint16_t move, ttMove = NONE_MOVE; MovePicker movePicker; PVariation lpv; @@ -609,7 +608,7 @@ int qsearch(Thread *thread, PVariation *pv, int alpha, int beta, int height) { pv->length = 0; // Updates for UCI reporting - thread->seldepth = MAX(thread->seldepth, height); + thread->seldepth = MAX(thread->seldepth, thread->height); thread->nodes++; // Step 1. Abort Check. Exit the search if signaled by main thread or the @@ -619,17 +618,17 @@ int qsearch(Thread *thread, PVariation *pv, int alpha, int beta, int height) { // Step 2. Draw Detection. Check for the fifty move rule, repetition, or insufficient // material. Add variance to the draw score, to avoid blindness to 3-fold lines - if (boardIsDrawn(board, height)) return 1 - (thread->nodes & 2); + if (boardIsDrawn(board, thread->height)) return 1 - (thread->nodes & 2); // Step 3. Max Draft Cutoff. If we are at the maximum search draft, // then end the search here with a static eval of the current board - if (height >= MAX_PLY) + if (thread->height >= MAX_PLY) return evaluateBoard(thread, board); // Step 4. Probe the Transposition Table, adjust the value, and consider cutoffs if ((ttHit = getTTEntry(board->hash, &ttMove, &ttValue, &ttEval, &ttDepth, &ttBound))) { - ttValue = valueFromTT(ttValue, height); // Adjust any MATE scores + ttValue = valueFromTT(ttValue, thread->height); // Adjust any MATE scores // Table is exact or produces a cutoff if ( ttBound == BOUND_EXACT @@ -638,13 +637,9 @@ int qsearch(Thread *thread, PVariation *pv, int alpha, int beta, int height) { return ttValue; } - // Save a history of the static evaluations. We can reuse a TT entry if the given - // evaluation has been set. Also, if we made a NULL move on the previous ply, we - // can recompute the eval as `eval = -last_eval + 2 * Tempo` - eval = thread->evalStack[height] = - ttHit && ttEval != VALUE_NONE ? ttEval - : thread->moveStack[height-1] != NULL_MOVE ? evaluateBoard(thread, board) - : -thread->evalStack[height-1] + 2 * Tempo; + // Save a history of the static evaluations + eval = thread->evalStack[thread->height] + = ttEval != VALUE_NONE ? ttEval : evaluateBoard(thread, board); // Step 5. Eval Pruning. If a static evaluation of the board will // exceed beta, then we can stop the search here. Also, if the static @@ -666,9 +661,9 @@ int qsearch(Thread *thread, PVariation *pv, int alpha, int beta, int height) { while ((move = selectNextMove(&movePicker, board, 1)) != NONE_MOVE) { // Search the next ply if the move is legal - if (!apply(thread, board, move, height)) continue; - value = -qsearch(thread, &lpv, -beta, -alpha, height+1); - revert(thread, board, move, height); + if (!apply(thread, board, move)) continue; + value = -qsearch(thread, &lpv, -beta, -alpha); + revert(thread, board, move); // Improved current value if (value > best) { @@ -798,18 +793,18 @@ int singularity(Thread *thread, MovePicker *mp, int ttValue, int depth, int beta Board *const board = &thread->board; // Table move was already applied - revert(thread, board, mp->tableMove, mp->height); + revert(thread, board, mp->tableMove); // Iterate over each move, except for the table move - initSingularMovePicker(&movePicker, thread, mp->tableMove, mp->height); + initSingularMovePicker(&movePicker, thread, mp->tableMove); while ((move = selectNextMove(&movePicker, board, skipQuiets)) != NONE_MOVE) { assert(move != mp->tableMove); // Skip the table move // Perform a reduced depth search on a null rbeta window - if (!apply(thread, board, move, mp->height)) continue; - value = -search(thread, &lpv, -rBeta-1, -rBeta, depth / 2 - 1, mp->height+1); - revert(thread, board, move, mp->height); + if (!apply(thread, board, move)) continue; + value = -search(thread, &lpv, -rBeta-1, -rBeta, depth / 2 - 1); + revert(thread, board, move); // Move failed high, thus mp->tableMove is not singular if (value > rBeta) break; @@ -825,12 +820,12 @@ int singularity(Thread *thread, MovePicker *mp, int ttValue, int depth, int beta // MultiCut. We signal the Move Picker to terminate the search if (value > rBeta && rBeta >= beta) { if (!moveIsTactical(board, move)) - updateKillerMoves(thread, mp->height, move); + updateKillerMoves(thread, move); mp->stage = STAGE_DONE; } // Reapply the table move we took off - applyLegal(thread, board, mp->tableMove, mp->height); + applyLegal(thread, board, mp->tableMove); // Move is singular if all other moves failed low return value <= rBeta; diff --git a/src/search.h b/src/search.h index a68bdcbf..cc5f785b 100644 --- a/src/search.h +++ b/src/search.h @@ -38,8 +38,8 @@ void initSearch(); void getBestMove(Thread *threads, Board *board, Limits *limits, uint16_t *best, uint16_t *ponder); void* iterativeDeepening(void *vthread); void aspirationWindow(Thread *thread); -int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth, int height); -int qsearch(Thread *thread, PVariation *pv, int alpha, int beta, int height); +int search(Thread *thread, PVariation *pv, int alpha, int beta, int depth); +int qsearch(Thread *thread, PVariation *pv, int alpha, int beta); int staticExchangeEvaluation(Board *board, uint16_t move, int threshold); int singularity(Thread *thread, MovePicker *mp, int ttValue, int depth, int beta); diff --git a/src/thread.c b/src/thread.c index ee3a15f3..0c4fb0f8 100644 --- a/src/thread.c +++ b/src/thread.c @@ -81,9 +81,16 @@ void newSearchThreadPool(Thread *threads, Board *board, Limits *limits, SearchIn int contempt = MakeScore(ContemptDrawPenalty + ContemptComplexity, ContemptDrawPenalty); for (int i = 0; i < threads->nthreads; i++) { + threads[i].limits = limits; - threads[i].info = info; - threads[i].nodes = threads[i].tbhits = 0ull; + threads[i].info = info; + + threads[i].height = 0; + threads[i].pknndepth = 0; + + threads[i].nodes = 0ull; + threads[i].tbhits = 0ull; + memcpy(&threads[i].board, board, sizeof(Board)); threads[i].contempt = board->turn == WHITE ? contempt : -contempt; } diff --git a/src/thread.h b/src/thread.h index 4cdea737..8c6b7a2b 100644 --- a/src/thread.h +++ b/src/thread.h @@ -19,10 +19,12 @@ #pragma once #include +#include #include #include "board.h" #include "evalcache.h" +#include "network.h" #include "search.h" #include "transposition.h" #include "types.h" @@ -43,14 +45,16 @@ struct Thread { uint16_t bestMoves[MAX_MOVES]; uint16_t ponderMoves[MAX_MOVES]; - int contempt; - int depth, seldepth; + int contempt, pknndepth; + int depth, seldepth, height; uint64_t nodes, tbhits; int *evalStack, _evalStack[STACK_SIZE]; uint16_t *moveStack, _moveStack[STACK_SIZE]; int *pieceStack, _pieceStack[STACK_SIZE]; + Undo undoStack[STACK_SIZE]; + bool pknnchanged[STACK_SIZE]; ALIGN64 EvalTable evtable; ALIGN64 PKTable pktable; @@ -62,6 +66,8 @@ struct Thread { ALIGN64 CaptureHistoryTable chistory; ALIGN64 ContinuationTable continuation; + ALIGN64 float pknnlayer1[STACK_SIZE][PKNETWORK_LAYER1]; + int index, nthreads; Thread *threads; jmp_buf jbuffer; diff --git a/src/uci.c b/src/uci.c index 6c16b3f1..072de72f 100644 --- a/src/uci.c +++ b/src/uci.c @@ -32,6 +32,7 @@ #include "masks.h" #include "move.h" #include "movegen.h" +#include "network.h" #include "search.h" #include "thread.h" #include "time.h" @@ -40,13 +41,14 @@ #include "uci.h" #include "zobrist.h" -extern int ContemptDrawPenalty; // Defined by Thread.c -extern int ContemptComplexity; // Defined by Thread.c -extern int MoveOverhead; // Defined by Time.c -extern unsigned TB_PROBE_DEPTH; // Defined by Syzygy.c -extern volatile int ABORT_SIGNAL; // Defined by Search.c -extern volatile int IS_PONDERING; // Defined by Search.c -extern volatile int ANALYSISMODE; // Defined by Search.c +extern int ContemptDrawPenalty; // Defined by thread.c +extern int ContemptComplexity; // Defined by thread.c +extern int MoveOverhead; // Defined by time.c +extern unsigned TB_PROBE_DEPTH; // Defined by syzygy.c +extern volatile int ABORT_SIGNAL; // Defined by search.c +extern volatile int IS_PONDERING; // Defined by search.c +extern volatile int ANALYSISMODE; // Defined by search.c +extern PKNetwork PKNN; // Defined by network.c pthread_mutex_t READYLOCK = PTHREAD_MUTEX_INITIALIZER; const char *StartPosition = "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1"; @@ -65,6 +67,9 @@ int main(int argc, char **argv) { // Initialize core components of Ethereal initAttacks(); initMasks(); initEval(); initSearch(); initZobrist(); initTT(16); + initPKNetwork(&PKNN); + + // Create the UCI-board and our threads threads = createThreadPool(1); boardFromFEN(&board, StartPosition, chess960); diff --git a/src/uci.h b/src/uci.h index dcdabf09..26b68b23 100644 --- a/src/uci.h +++ b/src/uci.h @@ -22,7 +22,7 @@ #include "types.h" -#define VERSION_ID "12.57" +#define VERSION_ID "12.58" #if defined(USE_PEXT) #define ETHEREAL_VERSION VERSION_ID" (PEXT)" diff --git a/src/weights/pknet_224x32x1.net b/src/weights/pknet_224x32x1.net new file mode 100644 index 00000000..24906e74 --- /dev/null +++ b/src/weights/pknet_224x32x1.net @@ -0,0 +1,33 @@ +"224 -3.898505926132202 -5.270877838134766 -5.4383344650268555 -8.178203582763672 -7.398237705230713 -7.0225958824157715 -5.872941017150879 -6.720180034637451 -3.408883571624756 -6.239691734313965 -5.336292743682861 -7.733428001403809 -6.332236289978027 -7.730040073394775 -4.596123695373535 -6.6596455574035645 -4.638920307159424 -7.0937347412109375 -7.123867034912109 -6.025572776794434 -7.104555130004883 -7.881463527679443 -6.772465705871582 -6.984358310699463 -4.80941915512085 -7.509477615356445 -6.6528825759887695 -7.6436028480529785 -8.014732360839844 -8.502574920654297 -6.25005578994751 -7.453266143798828 -5.599978446960449 -8.319622039794922 -7.327338695526123 -6.634974002838135 -6.6022539138793945 -6.295457363128662 -7.053990364074707 -6.744841575622559 -2.538672924041748 -7.864744186401367 -4.6317853927612305 -8.20795726776123 5.391815662384033 -7.073741436004639 -9.759020805358887 -42.53419494628906 -2.0536115169525146 -0.40863972902297974 -3.3880820274353027 -3.150958299636841 -4.322257995605469 -0.09358057379722595 0.599466860294342 2.0713493824005127 0.4850027859210968 1.6861753463745117 0.5171769261360168 0.2832769453525543 -0.15944986045360565 0.2149360477924347 1.241929292678833 2.516765832901001 1.213496446609497 0.8332985043525696 1.335616946220398 0.8090094923973083 1.1551382541656494 0.42403432726860046 0.9832006096839905 0.31515631079673767 1.2329285144805908 1.07039475440979 0.8256406188011169 0.2098422348499298 -0.09821970015764236 0.7579319477081299 0.47190454602241516 3.3266286849975586 1.6976003646850586 -0.7247417569160461 -1.5364947319030762 -0.9065396785736084 -1.1297506093978882 1.2014461755752563 3.0202462673187256 1.6337993144989014 4.859495162963867 -2.3215701580047607 -0.5402261018753052 -1.8632702827453613 -1.2101119756698608 1.5633578300476074 0.6705505847930908 3.1838159561157227 1.8082650899887085 -1.3420246839523315 -3.2180116176605225 -0.5121809840202332 -2.271929979324341 -1.241173267364502 2.13131046295166 4.319491863250732 -0.2189064472913742 2.4491193294525146 -5.3423171043396 -2.644329071044922 -5.78462028503418 2.605372667312622 4.122068405151367 -2.6284422874450684 0.4097331464290619 2.677255153656006 -30.213720321655273 5.478951454162598 3.786811590194702 8.207172393798828 7.363792896270752 3.414872407913208 2.601422071456909 4.498565196990967 5.692490100860596 7.060118198394775 7.587194919586182 6.3168792724609375 4.151663780212402 5.085033416748047 4.956369400024414 6.630478382110596 7.067360877990723 8.066354751586914 9.326536178588867 7.674820899963379 8.452295303344727 5.844893455505371 6.281660556793213 8.830133438110352 7.962954998016357 7.6052632331848145 8.371891021728516 8.461957931518555 7.930963516235352 7.297876358032227 6.799177646636963 8.314918518066406 8.129663467407227 7.468974590301514 8.429007530212402 8.270167350769043 7.835664749145508 6.185755729675293 6.601202964782715 8.257442474365234 8.082121849060059 6.9460768699646 8.430354118347168 8.88389778137207 8.877340316772461 6.0551276206970215 -8.585034370422363 3.6598706245422363 -13.953695297241211 -16.340389251708984 -7.7757391929626465 -16.17317771911621 -4.728354454040527 -18.455955505371094 -0.47305843234062195 -14.568347930908203 6.721804618835449 8.73438835144043 5.3551106452941895 -6.9774861335754395 12.759576797485352 4.938120365142822 -0.5417275428771973 2.590467929840088 4.639313697814941 6.814123153686523 4.34353494644165 5.2689337730407715 2.573390245437622 2.8100335597991943 2.6645469665527344 1.5963226556777954 2.517782211303711 2.761032819747925 4.55124568939209 2.3732213973999023 2.199042797088623 3.933617115020752 -0.13617442548274994 -1.7794315814971924 1.0460991859436035 0.8280977606773376 0.792884886264801 -0.013489803299307823 -0.7745425701141357 1.8903406858444214 -8.995108604431152 1.972912073135376 1.8786791563034058 1.7874698638916016 0.7451768517494202 -0.0348907969892025 -0.3403627574443817 0.43339741230010986 -0.011790177784860134 1.23641037940979 2.148247718811035 1.734507441520691 0.611784040927887 0.19114209711551666 -0.313041627407074 -0.28467661142349243 -4.6080851554870605 -0.6800532937049866 -2.334834575653076 0.11904828250408173 -3.4630818367004395 -0.10815887153148651 -1.1698566675186157 -2.393375873565674 -3.513552188873291", +"224 4.113757610321045 -0.39774835109710693 2.478407144546509 3.0822222232818604 5.049468040466309 3.8868730068206787 -3.17492413520813 -2.997248411178589 3.1082682609558105 5.142688274383545 2.538933515548706 3.5045883655548096 6.472651481628418 0.8004952073097229 -4.6484761238098145 -2.856915235519409 2.0716609954833984 3.1891696453094482 1.9978299140930176 6.634642124176025 7.355798721313477 4.490184783935547 -4.224386692047119 -3.3920886516571045 1.9454785585403442 5.739766597747803 5.711881637573242 6.7779541015625 10.367911338806152 4.62465238571167 -7.029415130615234 -7.321625709533691 -1.1966723203659058 0.9937408566474915 10.036953926086426 4.434820175170898 10.47829532623291 8.507999420166016 -4.7960686683654785 -15.774542808532715 2.504958152770996 7.284216403961182 14.242195129394531 11.986091613769531 14.183598518371582 -63.2238655090332 -13.16331672668457 -37.180335998535156 -24.792949676513672 -8.46826457977295 -6.072750091552734 -6.045915126800537 -10.853001594543457 -3.430084466934204 -4.5472412109375 -2.0729758739471436 -6.828866958618164 -9.071516990661621 0.8683982491493225 -5.568195819854736 -5.913826942443848 -7.782285690307617 -1.1485016345977783 -2.7303483486175537 -39.37384033203125 -2.7139668464660645 -0.542088508605957 2.4543707370758057 -3.7517287731170654 0.7787973284721375 -5.588004112243652 -6.766526699066162 -0.18764226138591766 12.018522262573242 9.464377403259277 9.44202995300293 1.9098777770996094 -3.354326009750366 -5.855179309844971 -7.601957321166992 40.8707160949707 10.499490737915039 19.580825805664062 12.401336669921875 13.289175033569336 -8.670539855957031 2.5248875617980957 -12.824419975280762 61.547637939453125 22.701997756958008 22.720701217651367 18.663585662841797 22.089672088623047 23.244218826293945 4.369766712188721 -1.19044029712677 30.743619918823242 38.442562103271484 30.64873504638672 40.93755340576172 21.705989837646484 19.29511070251465 -30.253129959106445 -14.939690589904785 40.98697280883789 36.025169372558594 32.35688781738281 15.29196834564209 25.288042068481445 17.622007369995117 15.157186508178711 31.400142669677734 1.5487785339355469 -3.805756092071533 -2.112460136413574 -14.169411659240723 -25.780134201049805 -4.457522869110107 -8.009329795837402 -10.960102081298828 3.19411301612854 -0.541262149810791 0.2151128500699997 1.1775298118591309 -4.972634792327881 -16.764150619506836 -2.7513582706451416 -0.8867659568786621 5.10930061340332 1.6494166851043701 3.156550884246826 1.1534169912338257 -16.57243537902832 -11.69802474975586 -8.087605476379395 -5.142734527587891 4.559258937835693 -0.044199105352163315 3.324922800064087 -1.9712861776351929 -1.7402863502502441 -8.239407539367676 -4.450455665588379 -0.6524920463562012 2.2125561237335205 0.6195265650749207 5.130376815795898 2.371781587600708 -3.5614328384399414 3.2944629192352295 -7.6303181648254395 -2.098179578781128 2.7093141078948975 -3.9936771392822266 3.662599563598633 3.2189443111419678 -1.6515198945999146 6.970808506011963 -6.278579235076904 -3.9911959171295166 -23.228252410888672 0.4489542841911316 -47.787715911865234 -9.848261833190918 -13.195640563964844 -9.92862606048584 -16.553699493408203 -42.00379943847656 -3.505666732788086 -21.484460830688477 -60.23353958129883 0.2692210078239441 0.6659664511680603 13.687912940979004 4.331247806549072 -12.677945137023926 -40.389095306396484 -21.699172973632812 -49.99087142944336 -2.669032335281372 7.586833477020264 -6.792210578918457 -1.990836501121521 3.3880834579467773 5.3744354248046875 -42.60557556152344 -28.459165573120117 -9.294535636901855 -1.7709003686904907 -4.891964435577393 -3.2994072437286377 1.1791709661483765 -51.8156623840332 -21.51891326904297 -36.24842834472656 -24.36142349243164 -20.93683624267578 -8.39692211151123 -8.609835624694824 -7.246822357177734 -44.974708557128906 -40.42578887939453 -28.265382766723633 -22.08138656616211 -11.268019676208496 -8.522224426269531 -12.19165325164795 -2.850719690322876 -12.27937126159668 -25.773242950439453 -29.313066482543945 -14.540536880493164 -8.978479385375977 -1.8291146755218506 -0.568272054195404 0.24138863384723663 -5.85429573059082 -73.38711547851562 -14.786689758300781 -37.38603591918945 2.409687042236328 -2.692472457885742 2.5899689197540283 2.143131971359253 -9.41662883758545", +"224 1.5908719301223755 -0.3094261586666107 2.052440643310547 6.95229434967041 2.553395986557007 2.479231834411621 -1.0016311407089233 -1.5799651145935059 1.8479305505752563 -1.2205920219421387 -1.852121353149414 5.848155498504639 2.1955478191375732 1.5602996349334717 -1.8823227882385254 0.9558395147323608 1.1213933229446411 -0.6982837319374084 3.5116331577301025 5.821516513824463 7.448106288909912 0.16589052975177765 -0.6711848974227905 0.985497772693634 0.3060157895088196 -0.5527045130729675 7.188623905181885 1.731919765472412 0.7397192716598511 2.719122886657715 -0.32315269112586975 4.919102191925049 7.465723991394043 4.339393615722656 8.538652420043945 10.670662879943848 1.0712791681289673 -2.1966724395751953 -60.20549011230469 3.2736947536468506 -11.517638206481934 8.279642105102539 3.5634257793426514 -21.1160831451416 17.34227180480957 8.466167449951172 -14.029328346252441 -48.98278045654297 -5.340790748596191 -6.370157718658447 -8.115805625915527 -15.964725494384766 -11.892592430114746 -1.6607357263565063 -1.2360076904296875 -0.06316722929477692 -14.317825317382812 1.0386230945587158 -6.81242036819458 -7.100503444671631 -11.089478492736816 -2.4864559173583984 -3.4537158012390137 -2.7437705993652344 0.13237856328487396 -4.926143646240234 -2.05965256690979 -12.073848724365234 -6.355338096618652 -9.446821212768555 4.609323978424072 -5.85030460357666 14.972138404846191 2.391279697418213 -4.356290817260742 0.2098340094089508 -6.55166482925415 -6.571850299835205 -2.145358085632324 -2.315197706222534 4.356268405914307 3.239987373352051 7.821516513824463 11.217958450317383 7.052576065063477 8.935636520385742 3.0087718963623047 2.2609691619873047 7.021157264709473 12.354272842407227 10.612706184387207 11.41831111907959 17.487316131591797 1.324017882347107 7.672325611114502 -11.240681648254395 -9.054293632507324 -6.973857879638672 14.96793270111084 12.528422355651855 8.736824989318848 11.104429244995117 18.397430419921875 7.829593181610107 -26.426809310913086 26.97646713256836 4.866771697998047 9.140461921691895 4.071628570556641 2.5795655250549316 -39.7986946105957 -11.101758003234863 0.3066486418247223 -1.473252534866333 -3.060244083404541 9.77668571472168 11.649848937988281 -68.87369537353516 -2.6893908977508545 -16.032915115356445 -0.49936404824256897 -1.16364324092865 -1.052781343460083 4.617926120758057 6.421802997589111 -62.491859436035156 3.674442768096924 -2.227386713027954 1.920352816581726 0.0052925520576536655 1.6358839273452759 6.111328125 8.274109840393066 -48.76716995239258 -0.38287729024887085 -2.4622206687927246 5.398394584655762 4.9556074142456055 1.8828551769256592 11.764291763305664 -53.64559555053711 11.858744621276855 -66.65939331054688 1.2294459342956543 4.410727500915527 3.796224594116211 4.662437915802002 3.0116777420043945 0.4217180907726288 2.069235324859619 3.409993886947632 2.4359195232391357 5.54528284072876 7.040242671966553 3.286719560623169 8.67059326171875 -4.177435398101807 0.548899233341217 -8.01688003540039 2.155266523361206 -9.921382904052734 -3.3599987030029297 -15.437750816345215 -32.62312698364258 -29.13282585144043 44.263336181640625 30.746051788330078 8.056879997253418 1.456178069114685 -38.369205474853516 -5.747008323669434 -14.514836311340332 26.26018524169922 -38.0992431640625 -27.658830642700195 -9.48404598236084 -28.038211822509766 -9.252120018005371 -35.64728546142578 -14.777112007141113 -33.81748962402344 -19.105356216430664 -8.00475025177002 -9.875373840332031 -9.601895332336426 -16.888282775878906 -18.851930618286133 -45.95378494262695 -31.811037063598633 -18.336179733276367 -15.263856887817383 5.5815863609313965 -7.737137794494629 -11.790885925292969 -46.43536376953125 -9.017916679382324 -13.546929359436035 -12.751795768737793 -13.167635917663574 -1.4468458890914917 -42.62297058105469 -6.219788074493408 -49.270843505859375 -5.487988471984863 -13.039239883422852 -15.079978942871094 -6.649260520935059 -5.845643520355225 -9.963883399963379 -0.2429981827735901 0.6777740716934204 -6.363259792327881 -8.524979591369629 -10.908318519592285 -3.3025238513946533 1.3986231088638306 -12.502845764160156 -6.292927265167236 -9.993420600891113 9.289875030517578 -4.223073482513428 -2.9470627307891846 0.07989820837974548 5.697685241699219 -12.371688842773438", +"224 2.4599828720092773 7.066175937652588 -0.7906596064567566 9.414264678955078 -0.09839992225170135 -0.3848797678947449 3.9915976524353027 3.2974374294281006 3.447535991668701 3.0501089096069336 4.93140983581543 8.756784439086914 -0.9204933047294617 -0.734736979007721 1.5015199184417725 1.0222396850585938 2.099510669708252 4.652463912963867 -8.479549407958984 3.743778944015503 -2.7844388484954834 -1.1199105978012085 1.415447473526001 3.407724142074585 2.224062204360962 6.0388031005859375 -6.369914531707764 -9.361224174499512 1.2497204542160034 6.043519020080566 -4.322650909423828 3.031022548675537 3.080078601837158 1.9426966905593872 -12.272985458374023 -9.780105590820312 -6.628142356872559 -1.0405685901641846 -2.1954567432403564 -1.2067755460739136 -2.408921718597412 -0.26523736119270325 -5.017576694488525 -21.312206268310547 -31.62013053894043 -18.507034301757812 5.748462677001953 -10.948503494262695 -5.073716640472412 -7.058080196380615 -8.86363410949707 0.7417041659355164 1.2380003929138184 5.73541784286499 -0.6436331868171692 -1.07608163356781 -1.3384356498718262 -2.573573350906372 -4.644777774810791 -1.222847580909729 3.673532724380493 2.2960760593414307 0.5988237261772156 -4.33357572555542 -5.960775375366211 1.7580134868621826 -1.4720443487167358 3.9846787452697754 2.590951919555664 2.2348084449768066 3.035661220550537 -3.3941545486450195 -0.04900336638092995 -1.2153213024139404 -3.799483299255371 10.428987503051758 2.1284008026123047 2.3248202800750732 -0.7181973457336426 1.5474424362182617 0.8966442942619324 1.5693271160125732 4.013332366943359 28.263673782348633 2.4932899475097656 0.18747691810131073 0.991782546043396 -8.221695899963379 11.11617660522461 6.19445276260376 6.730242729187012 3.1862123012542725 6.550472736358643 -7.613770961761475 -2.401559352874756 -3.3093490600585938 -5.533670902252197 22.040369033813477 7.594268798828125 -3.469148635864258 -15.594511032104492 -22.397520065307617 -7.22070837020874 1.6746244430541992 10.076915740966797 -3.9864587783813477 -8.747099876403809 -31.5164852142334 -13.053789138793945 -36.33445358276367 -36.48310852050781 -34.67771530151367 -24.313203811645508 5.327112197875977 -8.019444465637207 21.831634521484375 -28.756479263305664 15.53369140625 -11.408878326416016 -15.539754867553711 -13.81506633758545 8.202264785766602 -4.870312213897705 13.500495910644531 -0.11933378130197525 -2.5069799423217773 -2.764298677444458 -7.122934818267822 -11.704480171203613 7.312301158905029 -7.204578876495361 17.978534698486328 -5.062817573547363 -1.0124386548995972 -3.0830140113830566 -0.9024748802185059 -8.195618629455566 1.9353644847869873 -4.191572666168213 -2.2823166847229004 -0.7186659574508667 -5.105893135070801 -1.5695070028305054 -2.6194939613342285 -7.00911808013916 -5.959157466888428 6.370546817779541 -11.007811546325684 16.39639663696289 -4.481215000152588 1.0429357290267944 -3.9097282886505127 -6.032958030700684 -4.295570373535156 3.9354021549224854 -13.862241744995117 9.585083961486816 0.521628201007843 0.8696436882019043 -1.9234766960144043 -12.55688762664795 -5.367323398590088 0.8638048768043518 -47.641143798828125 -0.6335287690162659 -21.753726959228516 2.8673622608184814 -8.183686256408691 -38.89006042480469 -42.545166015625 14.47506046295166 -60.992149353027344 -22.679929733276367 -29.33108139038086 5.574596881866455 -7.299533367156982 -16.74696922302246 3.841999053955078 1.6719082593917847 -7.554262161254883 -26.77122688293457 -14.189811706542969 0.8543236255645752 -4.093206882476807 -0.16283568739891052 2.9607741832733154 9.881542205810547 2.380368947982788 -4.498549938201904 -13.602126121520996 -5.180077075958252 16.065845489501953 9.924500465393066 -1.7227957248687744 4.99074649810791 -2.9194138050079346 2.9522695541381836 -1.7270793914794922 -0.8584237098693848 -0.8106395602226257 10.20404052734375 3.687119960784912 -0.5585314035415649 3.553541421890259 -1.2192049026489258 7.6835150718688965 1.3017839193344116 3.242525100708008 5.31389045715332 4.4266204833984375 -0.658624529838562 3.374112844467163 2.357558250427246 2.4693827629089355 2.86991024017334 -0.1311170607805252 2.450798988342285 -6.54452657699585 -1.3639518022537231 -1.2338939905166626 0.6811596155166626 1.5345995426177979 0.9159243702888489 -4.694048881530762 0.6392934322357178", +"224 -0.17170196771621704 -4.328205585479736 0.06166377663612366 -9.13390827178955 -2.9414525032043457 0.540536642074585 -3.561999559402466 -3.6232287883758545 -0.04129225015640259 -3.133944272994995 -1.8200052976608276 -2.723759174346924 -0.08960562944412231 -1.3871642351150513 -3.7902793884277344 -2.2403512001037598 -0.29644516110420227 -3.9526469707489014 -4.1237335205078125 -3.4357309341430664 0.45158839225769043 0.09463897347450256 -1.5959640741348267 -2.5077364444732666 -0.664847731590271 1.3593833446502686 -3.9189157485961914 12.005830764770508 3.3332767486572266 -1.8350887298583984 -3.2851948738098145 -2.3329033851623535 -2.5143260955810547 4.949198246002197 9.889257431030273 14.976552963256836 8.797292709350586 -0.6180278658866882 -2.624340057373047 0.5775158405303955 -0.5211293697357178 -1.3211731910705566 14.387978553771973 -42.50592041015625 35.453182220458984 -2.825888156890869 -6.309513568878174 -6.092648506164551 -10.41288948059082 -3.9153339862823486 3.23713755607605 -0.1520289182662964 0.27500641345977783 -2.3855388164520264 -1.6108262538909912 -2.3764820098876953 -5.494793891906738 -2.907473564147949 3.313613176345825 -5.273194313049316 -1.1695919036865234 -3.489361047744751 -4.129663467407227 -2.6194229125976562 -40.26395797729492 5.416053771972656 -4.106003761291504 -1.8982946872711182 -5.881192684173584 -5.42287540435791 -6.822707176208496 -4.974125862121582 -0.8247212171554565 -5.937093734741211 -3.5490126609802246 -4.687832355499268 -1.8454428911209106 -4.883803844451904 -6.398928165435791 -4.096171855926514 -22.44646453857422 -14.192344665527344 3.8422820568084717 -6.720038890838623 -3.055129051208496 1.9953336715698242 3.3975167274475098 2.7743942737579346 -29.949390411376953 3.524749279022217 -3.210501194000244 2.7242329120635986 9.022119522094727 10.369174003601074 2.3631699085235596 8.372371673583984 8.07270622253418 7.312392711639404 -29.950803756713867 4.113910675048828 5.939535140991211 14.421696662902832 13.650365829467773 9.16342544555664 -33.18766784667969 -22.266216278076172 50.03649139404297 7.400177001953125 12.851943016052246 20.10828399658203 3.9938154220581055 7.493223190307617 -7.223780632019043 1.177789568901062 -6.826214790344238 7.546377182006836 -20.817974090576172 5.167370796203613 2.431447744369507 -53.23857879638672 -0.5640541911125183 1.2856171131134033 -8.407798767089844 1.0681458711624146 -2.778452157974243 4.502532482147217 0.7440916895866394 -5.762368202209473 3.756831645965576 3.101598024368286 -2.764058828353882 -1.211358904838562 6.987195014953613 5.852114200592041 2.7489523887634277 2.755589485168457 7.494101524353027 -0.35614800453186035 16.513896942138672 -16.52110481262207 4.1358962059021 2.8117687702178955 1.1358627080917358 3.042686700820923 7.312518119812012 2.630784273147583 17.927043914794922 -40.03141403198242 4.554324626922607 0.9216664433479309 2.0114026069641113 3.2760651111602783 4.634122371673584 1.790245532989502 13.390077590942383 -11.094467163085938 4.726230144500732 -0.5588402152061462 1.5963600873947144 2.371446371078491 -21.29405403137207 -4.1471381187438965 21.900432586669922 -1.8566675186157227 -22.604904174804688 -17.499258041381836 30.08596420288086 -54.88336181640625 7.2144036293029785 -51.48481369018555 -15.911008834838867 18.075206756591797 -30.591489791870117 5.287198543548584 -6.612207412719727 -27.996097564697266 -5.862545490264893 -8.853472709655762 -11.026713371276855 -34.62702941894531 -11.500720977783203 -60.30382537841797 -3.9509599208831787 -3.720341444015503 -1.0618418455123901 -8.569499015808105 -15.856511116027832 -8.594352722167969 -11.485326766967773 -7.898601055145264 -7.0677809715271 -1.5076210498809814 -6.868038654327393 -3.4752347469329834 -0.5555012226104736 -14.825438499450684 -5.141151428222656 -13.285806655883789 -4.227621078491211 -0.610222578048706 -0.6792007684707642 -0.6319792866706848 -2.3163793087005615 0.301112562417984 -5.664780139923096 -3.949758768081665 -0.1746881604194641 -0.907899796962738 -5.604658126831055 -2.9879257678985596 -1.0979654788970947 -0.12001307308673859 -4.261877059936523 -1.3574237823486328 0.38515961170196533 -0.2656079828739166 5.131024360656738 2.441333532333374 -6.011725425720215 -9.398550987243652 -5.936654567718506 2.5200564861297607 1.6579246520996094 3.8177008628845215 -6.667609214782715", +"224 -4.614316940307617 -5.449864387512207 -2.4026682376861572 -0.9902669191360474 -1.718612790107727 -0.9608427882194519 -1.8595441579818726 -1.4287058115005493 -3.8041317462921143 -3.2051002979278564 -3.4431629180908203 -1.4833616018295288 -2.5992953777313232 -4.075885772705078 -1.0189088582992554 -0.9745364785194397 -4.531768321990967 -3.6860244274139404 -2.058976411819458 2.2212793827056885 -6.670501232147217 1.2587746381759644 -0.6958572268486023 0.018689202144742012 -2.9760518074035645 -4.830080509185791 0.888629674911499 4.730457782745361 -12.854425430297852 9.004425048828125 3.5180370807647705 -4.999602317810059 -3.913487195968628 -5.446016788482666 -1.020348072052002 -3.9187614917755127 -6.488710880279541 7.237110614776611 2.512324333190918 1.0117686986923218 -6.780291557312012 1.5936073064804077 -17.955848693847656 -2.058073043823242 10.87697982788086 2.1791610717773438 8.936450004577637 -0.39709001779556274 2.0477116107940674 2.4778976440429688 -0.8274251222610474 -4.807363510131836 -7.124328136444092 -8.174223899841309 -1.826388955116272 -1.3941104412078857 -3.46053409576416 2.6238865852355957 -5.40873908996582 -3.8532228469848633 -2.822974443435669 -2.682649612426758 -0.3146640360355377 -0.08242762088775635 -0.182724267244339 -8.851496696472168 -2.3419768810272217 -5.947347164154053 -2.6365740299224854 -0.9606807827949524 -1.1167359352111816 -3.2064807415008545 -5.22269344329834 -4.251866817474365 -11.144978523254395 -7.189189434051514 -10.04100227355957 2.504617929458618 -1.7051688432693481 2.6286067962646484 -5.7473626136779785 -1.3376972675323486 -15.323874473571777 -5.452409267425537 -3.688527822494507 -6.79721212387085 1.2700326442718506 5.5980095863342285 -11.221779823303223 0.5239279270172119 -4.6122026443481445 -8.144859313964844 5.453408718109131 7.5500807762146 3.18420672416687 9.954188346862793 11.859378814697266 -1.1228913068771362 6.679915904998779 -6.590769290924072 -12.002923965454102 2.353815793991089 5.427596092224121 13.824874877929688 9.1255464553833 -27.35741424560547 -25.886920928955078 -13.489944458007812 10.288334846496582 8.646489143371582 16.577268600463867 5.877542495727539 17.092506408691406 5.748647689819336 2.1720170974731445 11.873523712158203 8.204363822937012 5.389721870422363 8.412554740905762 -42.06698226928711 9.817824363708496 8.366665840148926 5.902735710144043 8.681381225585938 -7.983938217163086 18.114360809326172 -3.8517136573791504 15.533605575561523 11.522634506225586 3.9106435775756836 6.829161167144775 3.290621042251587 1.0992008447647095 -0.6467795372009277 5.003325939178467 2.4274837970733643 8.814982414245605 2.9739584922790527 6.49923849105835 0.6415104866027832 11.194674491882324 -5.121669769287109 3.5290892124176025 2.2498974800109863 8.345812797546387 2.9631731510162354 7.392451763153076 1.214604377746582 20.073631286621094 -4.167408466339111 3.126878261566162 -2.4437806606292725 8.983881950378418 6.5932111740112305 6.215211868286133 2.402120351791382 19.31561279296875 -2.715693950653076 3.507354259490967 -2.7312514781951904 -5.841823101043701 -1.8669694662094116 -34.305076599121094 4.01511812210083 -20.652156829833984 -9.320534706115723 3.1226727962493896 5.439507484436035 -29.315317153930664 -18.774925231933594 -3.7266685962677 -38.390621185302734 6.273955821990967 -36.48963928222656 13.621326446533203 11.126729965209961 -28.443639755249023 0.535582423210144 -7.557074546813965 -51.108280181884766 -39.64726257324219 -34.66550827026367 -1.1030769348144531 17.96221351623535 -6.138128757476807 -13.072604179382324 3.3842694759368896 -11.461099624633789 2.452439308166504 -2.343355178833008 6.503605842590332 13.397407531738281 -10.873394966125488 -10.310434341430664 -1.642204999923706 1.094588279724121 1.6630014181137085 0.9625986814498901 -0.6549172401428223 -0.47080960869789124 -6.4252142906188965 -3.2862205505371094 -2.0860674381256104 1.9843025207519531 0.24874743819236755 -3.9453346729278564 -6.652029514312744 -3.5279910564422607 -8.5518217086792 1.0786815881729126 -0.30443570017814636 -0.6550187468528748 -1.6614030599594116 -4.1580376625061035 -3.4791812896728516 2.5275251865386963 -10.053545951843262 1.0880675315856934 -1.6515902280807495 -0.4643450975418091 -2.9481828212738037 -0.3065703511238098 -4.0865797996521 3.168774127960205 -9.273669242858887", +"224 -9.081159591674805 -9.49809741973877 2.10807466506958 -4.453256130218506 0.00238130334764719 -1.5519943237304688 7.833052635192871 6.336617946624756 -8.366106986999512 -10.139935493469238 -0.5757685303688049 -2.967578411102295 3.824552536010742 -1.253519058227539 7.837305545806885 4.766268253326416 -10.523385047912598 -10.22143840789795 -3.863095998764038 -3.8584389686584473 3.140939235687256 -0.2475336790084839 7.5329976081848145 4.152107238769531 -10.245783805847168 -6.733121395111084 -8.70826244354248 -1.2429903745651245 -3.607089042663574 4.985551834106445 1.8745007514953613 1.5483269691467285 -8.569865226745605 -8.7697172164917 -9.322525024414062 -6.295751571655273 -5.293941497802734 -0.6498574018478394 -5.2347259521484375 -3.8513522148132324 -18.90512466430664 -7.656957626342773 -17.625083923339844 -2.938305616378784 -29.754730224609375 2.6802608966827393 11.01490306854248 8.717114448547363 18.120630264282227 5.665049076080322 20.1296329498291 -0.6034455895423889 1.3106434345245361 8.941167831420898 1.1548770666122437 1.466689944267273 6.064092636108398 3.549520254135132 -0.5278865694999695 7.463021755218506 5.749696731567383 5.1045989990234375 8.169182777404785 5.363292217254639 -2.136225938796997 -5.527392864227295 -4.199384689331055 1.2395938634872437 5.63508415222168 8.327340126037598 11.225110054016113 8.07733154296875 -2.6914820671081543 -9.877067565917969 1.8328900337219238 -2.39668607711792 6.676318645477295 7.174637794494629 12.052338600158691 7.474991321563721 -8.312857627868652 7.961711883544922 -4.49888801574707 -3.4478890895843506 1.130677342414856 10.36473274230957 -3.419314384460449 3.2629990577697754 16.611839294433594 -6.1653900146484375 4.420257091522217 -6.782363414764404 -7.432955741882324 -40.68158721923828 -16.08998680114746 -28.426990509033203 11.631564140319824 13.553729057312012 0.7101471424102783 -8.469995498657227 -1.0062233209609985 -18.548555374145508 -31.387636184692383 -11.859286308288574 10.607303619384766 15.3212890625 27.50963592529297 -37.420448303222656 -10.859256744384766 -46.497745513916016 14.819618225097656 -34.13735580444336 -4.874049663543701 2.999352216720581 -5.184171676635742 1.5721009969711304 -7.89719820022583 -8.315373420715332 -3.898888349533081 -3.7153842449188232 -3.742910385131836 -0.7078393697738647 1.1291872262954712 -0.7915554642677307 -4.0260539054870605 -9.757471084594727 -3.005624771118164 -5.042981147766113 -6.093981742858887 4.749244213104248 -1.1087656021118164 -1.7962933778762817 -6.131021499633789 -1.4288675785064697 -2.7965352535247803 0.05067829415202141 -3.1996562480926514 6.327507972717285 -6.996743202209473 1.6059321165084839 -5.668078899383545 -2.2777132987976074 -2.055520534515381 -1.5069633722305298 -2.09254789352417 0.6823475360870361 -4.952121734619141 -1.1311943531036377 -1.3664743900299072 -0.10257808864116669 1.525756597518921 -0.47805777192115784 -2.2170403003692627 -1.8973159790039062 -6.14423131942749 -1.9801141023635864 0.33571889996528625 0.5365573763847351 4.442455291748047 0.6513608694076538 18.559072494506836 6.413445472717285 -14.842313766479492 -0.2696971595287323 16.004772186279297 -18.34621238708496 -10.384160041809082 15.406991958618164 10.069396018981934 7.964097023010254 6.971259593963623 -0.9486507773399353 8.557138442993164 -8.372675895690918 -2.8682243824005127 6.306002140045166 -6.286137580871582 -13.723023414611816 13.548754692077637 5.83513879776001 7.032538890838623 8.152779579162598 1.0580066442489624 -6.763514995574951 -10.956241607666016 4.441606521606445 1.9295731782913208 0.8783005475997925 5.594585418701172 3.250490188598633 2.5730812549591064 -9.360801696777344 -8.80678939819336 11.932229042053223 18.38347053527832 18.38178253173828 5.172247409820557 6.970803737640381 1.3862179517745972 0.1655370444059372 -21.61564826965332 17.348411560058594 17.367206573486328 10.35383129119873 6.581920146942139 4.9461989402771 3.5523693561553955 3.9883346557617188 17.062973022460938 8.21022891998291 13.771597862243652 4.095386505126953 4.624463081359863 0.8150360584259033 4.179498195648193 1.7138710021972656 -10.800862312316895 -3.9137754440307617 -7.6020121574401855 12.667450904846191 1.808779001235962 1.7248419523239136 1.9313580989837646 -1.5654016733169556 13.049520492553711", +"224 0.7011685967445374 1.9227044582366943 -0.13111655414104462 3.2994234561920166 -2.1177027225494385 -2.6240603923797607 -1.6146775484085083 0.7652708888053894 0.28755128383636475 -1.2570276260375977 -0.37100404500961304 0.31667977571487427 -0.6709474325180054 -3.0428149700164795 -1.9294569492340088 -2.5361483097076416 -0.04937086999416351 -0.6559113264083862 0.8643338084220886 1.3744434118270874 0.3926053047180176 -3.093498945236206 -4.384241104125977 -3.259136438369751 -0.27682220935821533 -0.23185239732265472 -0.22336162626743317 -2.425527572631836 -6.967019557952881 -25.804725646972656 -2.3339884281158447 -22.185348510742188 0.05620545521378517 1.026684284210205 0.036345597356557846 -5.696952819824219 0.7418808937072754 -2.934676170349121 -2.7925145626068115 -8.137847900390625 -2.6613197326660156 5.052326679229736 -1.3129587173461914 -4.0731520652771 3.415710687637329 0.8716397285461426 -39.87767028808594 4.3562517166137695 8.629292488098145 4.210880279541016 0.9743832349777222 -4.298435211181641 0.0011138926493003964 0.2598729729652405 0.06002391502261162 3.8619465827941895 1.7084146738052368 0.7968155741691589 -5.842892169952393 -3.424372911453247 -5.526070594787598 -1.7237025499343872 -0.9472199082374573 1.6318954229354858 -25.033958435058594 -2.757176160812378 -10.069656372070312 -7.830459117889404 -6.454812049865723 -5.469986438751221 -4.311703681945801 -8.735454559326172 -2.268256425857544 -9.154776573181152 -10.331751823425293 -6.609435081481934 -7.346100330352783 -2.5479414463043213 -9.46314525604248 -0.7631502747535706 -0.3896517753601074 4.3286356925964355 -5.0410075187683105 -10.079934120178223 -8.500231742858887 6.6153564453125 2.255897283554077 -39.45813751220703 -11.240952491760254 1.2209956645965576 -0.11720118671655655 -57.067752838134766 -37.97609329223633 4.147010326385498 -15.845871925354004 7.024056434631348 -7.226516246795654 2.3704938888549805 5.837498664855957 -41.800411224365234 -8.409300804138184 -23.870742797851562 -16.022127151489258 -16.680225372314453 9.081063270568848 -6.458999156951904 18.482013702392578 -0.48957696557044983 -38.55689239501953 -3.5909645557403564 3.1835153102874756 16.623741149902344 -0.21670900285243988 6.893554210662842 4.845994472503662 0.7380513548851013 3.3794450759887695 -3.941749095916748 12.612964630126953 -0.8793020248413086 -1.9939996004104614 6.7074785232543945 4.772207260131836 -2.055742025375366 6.302342414855957 -8.12930679321289 0.39394158124923706 3.1511950492858887 0.5372613072395325 4.63490104675293 -0.1726337969303131 -0.29536503553390503 0.9348101019859314 -3.270235061645508 -5.414557456970215 4.039243221282959 0.7453886270523071 3.2537996768951416 2.829746961593628 2.553199291229248 1.4591385126113892 8.907344818115234 -4.424376487731934 8.514678955078125 -1.1870050430297852 0.7291549444198608 0.20930831134319305 4.952265739440918 -0.1473570615053177 6.69842004776001 -35.409488677978516 0.8935427069664001 2.25478196144104 2.5629119873046875 0.7495411038398743 3.8724868297576904 6.558879852294922 16.69161033630371 5.035114765167236 8.357682228088379 -3.172119379043579 -22.38676643371582 -20.12701988220215 -12.981529235839844 -14.875197410583496 -24.084901809692383 -24.005123138427734 0.7699716687202454 -22.85630226135254 -6.843568801879883 -14.588735580444336 -9.933952331542969 -14.379138946533203 -5.683545112609863 -3.6727888584136963 38.47003936767578 -6.296643257141113 -1.1176685094833374 -26.55366325378418 -5.850228786468506 -37.720314025878906 -20.5410213470459 -37.10443115234375 -30.40199089050293 6.4920759201049805 -5.264773845672607 -10.53000259399414 -37.652992248535156 -7.638264179229736 -7.798439025878906 -5.013566493988037 18.895254135131836 -3.2341737747192383 -8.056290626525879 -9.914382934570312 -9.943063735961914 -2.6778628826141357 -1.3493458032608032 -5.648273468017578 -0.4754314422607422 -3.121181011199951 -3.0593812465667725 -1.5277503728866577 -2.5617334842681885 -0.5642722249031067 1.1582872867584229 -0.5523461103439331 -4.968082904815674 -5.955225944519043 -0.5912071466445923 -4.730245113372803 -4.439443588256836 -2.2928335666656494 5.91677188873291 -0.41889384388923645 1.0647739171981812 -2.727966070175171 -6.99318790435791 -8.464160919189453 2.787092447280884 1.435330867767334 3.5471057891845703 -0.40313318371772766 1.4334022998809814 -4.012787818908691", +"224 1.5262956619262695 3.5603315830230713 6.125577449798584 0.7682368159294128 2.097891092300415 2.481480836868286 0.05799875780940056 2.049222469329834 0.7443518042564392 4.654478073120117 6.593019962310791 3.480897903442383 1.679307460784912 -0.28560417890548706 -0.6357502937316895 2.3083856105804443 0.9447657465934753 2.9635658264160156 4.7697954177856445 4.032083988189697 6.51686954498291 2.9114692211151123 0.7236990928649902 -0.9549854397773743 -0.6184752583503723 1.5636274814605713 6.152789115905762 4.9965291023254395 4.889052391052246 0.3091686964035034 -3.098825454711914 3.0945770740509033 -1.9762887954711914 1.2343647480010986 3.2653121948242188 1.8808680772781372 3.384377956390381 1.466904878616333 -8.757126808166504 1.7745764255523682 13.705071449279785 5.943741321563721 3.410583019256592 -0.5441370606422424 10.534914016723633 9.492077827453613 6.744490146636963 20.430234909057617 -8.742820739746094 -12.068831443786621 -10.194682121276855 -3.4115488529205322 -2.1308796405792236 -2.3828823566436768 -5.797057151794434 -3.9447903633117676 -14.15825366973877 -19.622577667236328 -4.144432544708252 -6.389906883239746 -3.4072530269622803 -7.532651901245117 -7.352447032928467 -7.796974182128906 -16.085275650024414 -8.14278507232666 -5.269798755645752 -5.7875800132751465 -6.103613376617432 -7.5635528564453125 -8.563159942626953 -10.93347454071045 -6.031971454620361 -7.372258186340332 -1.476355791091919 -5.146514892578125 -9.066791534423828 -12.644891738891602 -7.3465576171875 -14.985548973083496 -0.3893909454345703 4.915034294128418 0.697560727596283 -5.030096530914307 -11.849270820617676 -23.028759002685547 -4.339480400085449 -5.531261444091797 14.89109992980957 10.917468070983887 11.000113487243652 1.984259843826294 5.388179779052734 6.482613563537598 3.777398109436035 2.847301959991455 16.59833526611328 -2.145115852355957 6.611783504486084 20.373807907104492 5.749945640563965 -1.1525887250900269 0.2947494685649872 4.733458042144775 -11.696645736694336 2.808748245239258 5.428915977478027 -7.773304462432861 -0.5278213620185852 -2.232664108276367 4.678641319274902 -17.73883819580078 3.150343894958496 10.64181137084961 18.240816116333008 7.954486846923828 16.1428165435791 -21.045854568481445 7.654322147369385 5.785496711730957 3.243283271789551 6.992094039916992 9.768280029296875 9.223644256591797 5.969165325164795 -1.3262596130371094 8.17275333404541 2.112311601638794 0.22714924812316895 -1.0736037492752075 2.7740416526794434 -1.1098852157592773 0.39474862813949585 -0.02426689676940441 4.759476184844971 4.712156295776367 1.956717610359192 -2.005676746368408 1.883522868156433 1.8392025232315063 1.035152792930603 -1.0776872634887695 1.8344241380691528 5.92932653427124 2.826611280441284 -1.360135555267334 1.3765244483947754 -1.1214892864227295 -0.27497366070747375 1.1846485137939453 3.1612303256988525 6.2939558029174805 3.4354004859924316 1.7642077207565308 1.3400883674621582 -13.586553573608398 3.2484803199768066 8.107866287231445 2.240748643875122 6.027342796325684 -13.788567543029785 -17.929615020751953 -15.057170867919922 -15.283586502075195 -24.604341506958008 -6.595347881317139 10.747952461242676 -12.27289867401123 -3.0674357414245605 -13.7109375 -8.362954139709473 -9.244868278503418 -24.719539642333984 -9.042647361755371 -6.329240798950195 -24.944835662841797 1.5436122417449951 3.2304112911224365 -13.939554214477539 -7.3415021896362305 -28.603437423706055 -23.970956802368164 -7.425858974456787 -27.354677200317383 5.423270225524902 3.149566411972046 6.835188388824463 1.1023290157318115 -0.4694194495677948 1.2051397562026978 1.9239898920059204 -0.5377637147903442 19.082813262939453 9.582988739013672 6.604145526885986 8.796225547790527 7.6170172691345215 5.879885673522949 4.18563175201416 4.2604193687438965 13.295280456542969 8.26030445098877 8.705842018127441 5.236237525939941 8.2021484375 6.974218368530273 2.3491039276123047 -13.221708297729492 10.987776756286621 2.9473249912261963 3.28263258934021 2.1046080589294434 3.8945093154907227 -1.3174078464508057 -5.007148265838623 -16.58395004272461 -5.585960865020752 -2.714045524597168 -10.047786712646484 -12.233489036560059 -15.40904712677002 -22.143798828125 -10.955517768859863 -11.84789752960205 -19.735116958618164", +"224 6.242189407348633 4.222999572753906 3.8804235458374023 6.229677677154541 4.760101795196533 2.110257863998413 6.70418119430542 10.501314163208008 5.694809436798096 2.965808153152466 0.6639317274093628 8.416281700134277 2.3037359714508057 3.348114013671875 6.604053020477295 8.902483940124512 5.155173301696777 3.8982436656951904 1.990671157836914 5.974168300628662 2.120051860809326 5.010749816894531 3.9583780765533447 10.11849308013916 7.030667304992676 2.7020795345306396 5.502058506011963 1.5867327451705933 7.585606575012207 0.8748330473899841 6.798237323760986 -1.3029069900512695 7.1981964111328125 8.984808921813965 10.228178977966309 12.478068351745605 14.91364860534668 3.1030168533325195 -0.11696912348270416 -2.9327802658081055 12.21792221069336 16.6870174407959 13.296249389648438 11.283764839172363 42.68849182128906 21.752214431762695 -10.0541410446167 6.403314113616943 -4.774247169494629 -3.4944958686828613 -6.436378479003906 -5.461166858673096 -9.910747528076172 -9.510150909423828 -6.832795143127441 -6.447783946990967 -3.328930377960205 -1.3653254508972168 -2.8624279499053955 -4.94093656539917 -5.346795082092285 -4.803840160369873 -2.2288219928741455 -4.810573101043701 4.75233793258667 -3.1460306644439697 0.8462215065956116 -3.888946533203125 -3.9333529472351074 -4.0369672775268555 1.7802425622940063 -3.4990103244781494 -8.90567398071289 -3.8399722576141357 -0.6702643632888794 -1.36334228515625 -5.692410469055176 -1.457057237625122 2.0417637825012207 2.8585548400878906 0.07205721735954285 -4.879917621612549 0.4737473428249359 -16.916257858276367 -7.2428717613220215 -1.1171919107437134 7.3343634605407715 7.68496561050415 -6.235191345214844 11.747461318969727 -1.7325773239135742 -2.1207892894744873 -10.472829818725586 9.899214744567871 -8.228728294372559 1.0050641298294067 -4.239799499511719 6.737829208374023 4.469325542449951 -1.2165770530700684 12.032065391540527 -24.068523406982422 19.241525650024414 0.4877508282661438 -15.277148246765137 -45.705257415771484 -0.29900041222572327 -4.594408988952637 -29.595813751220703 11.534893035888672 3.2314682006835938 -22.840274810791016 -5.083044052124023 -11.105626106262207 -3.136645793914795 -10.394625663757324 -11.367365837097168 -10.43089771270752 -5.521755218505859 -11.560806274414062 -5.600061416625977 -4.752800941467285 -11.77221965789795 -5.845713138580322 -7.940016746520996 -19.320707321166992 -8.108760833740234 -5.03659200668335 -3.7073750495910645 -3.202683687210083 0.1627539098262787 -4.336447238922119 -2.8961000442504883 -7.464483261108398 -3.757955312728882 -2.139965772628784 -0.7684813141822815 -0.07244157791137695 0.35833534598350525 -1.2576864957809448 -5.023170471191406 -1.6821423768997192 -23.8080997467041 1.029867172241211 -0.4017367362976074 -1.059119701385498 -0.016792435199022293 -1.8564729690551758 0.00299992598593235 0.39828425645828247 -0.15042483806610107 2.882582187652588 -0.5255042314529419 -1.8789489269256592 -0.18770593404769897 -1.778224229812622 -1.889952540397644 -0.8499208688735962 0.9613845944404602 3.657024621963501 16.46493148803711 33.32986831665039 -6.896120071411133 -30.634153366088867 -26.999353408813477 32.20275115966797 -25.58207130432129 -5.35825252532959 -4.8230180740356445 -15.289121627807617 -27.719228744506836 -8.556654930114746 -42.14406204223633 -23.19968605041504 -35.04487991333008 -21.055850982666016 -8.042973518371582 -36.852420806884766 -50.23572540283203 -29.641611099243164 -19.610715866088867 -20.026927947998047 -42.478370666503906 -33.22555160522461 -4.970748424530029 -17.243839263916016 -20.32489585876465 -49.55540466308594 -22.904705047607422 -15.60246467590332 -31.00126075744629 -35.08537673950195 -53.908321380615234 -24.40610122680664 -39.219566345214844 -16.876129150390625 -8.78703498840332 -18.699649810791016 -35.90958786010742 -10.62098503112793 -1.2080833911895752 -9.400858879089355 -10.621868133544922 -10.1643648147583 -7.869956016540527 -11.213879585266113 -10.439153671264648 -13.30816650390625 -12.9795503616333 -14.904449462890625 -8.844714164733887 -5.376551151275635 -7.696669578552246 -8.949175834655762 -7.784739971160889 -5.645297527313232 -10.759466171264648 -14.246252059936523 -6.46412467956543 -3.083482503890991 -0.670192539691925 -5.558139801025391 -5.6950273513793945 -5.6186394691467285 -18.187400817871094", +"224 1.2742780447006226 7.348723888397217 -0.2773876190185547 17.047937393188477 -3.429753065109253 2.4699296951293945 2.3396663665771484 4.320711135864258 2.5395736694335938 5.924537181854248 -4.803433418273926 15.625523567199707 -4.213619709014893 3.8356435298919678 3.4287593364715576 3.369354248046875 0.27067404985427856 6.058686256408691 -10.130781173706055 13.18801498413086 -0.9395247101783752 7.153448104858398 3.860346555709839 3.1807193756103516 2.731048107147217 1.439619779586792 0.8373559713363647 -0.24870643019676208 -0.7210844159126282 6.727248668670654 5.159406661987305 6.6852240562438965 2.634916305541992 -2.029294013977051 -3.535857677459717 -0.1376584768295288 5.0857648849487305 5.582275390625 5.677898406982422 3.9071638584136963 -2.7872838973999023 -0.17838884890079498 -7.038382053375244 -8.389305114746094 8.76064395904541 9.758682250976562 9.807500839233398 3.883070707321167 -4.205905437469482 -6.1859660148620605 -3.7813353538513184 6.666898250579834 0.7732502222061157 -1.4840792417526245 -0.057368990033864975 0.7500681281089783 -11.361307144165039 -8.239356994628906 -2.233067274093628 -2.9687259197235107 -1.2835012674331665 -1.423708200454712 0.5428951978683472 0.6634085178375244 -9.175065040588379 -11.250274658203125 -3.35954213142395 0.1051110327243805 -0.0015449527418240905 -0.22195854783058167 0.8562905192375183 0.3692038655281067 -6.589226245880127 -6.6631269454956055 -8.415874481201172 -2.1448140144348145 -0.28597506880760193 1.0189895629882812 1.9639087915420532 0.47324660420417786 11.417723655700684 -0.6867170333862305 -2.240875244140625 18.050880432128906 3.9538509845733643 3.7157390117645264 1.421226143836975 1.818949818611145 14.353713035583496 24.385393142700195 22.548931121826172 18.440235137939453 14.728038787841797 -0.6142987012863159 49.4835090637207 2.770089626312256 13.54456615447998 11.72555923461914 22.488367080688477 18.05545425415039 -1.1463634967803955 -8.840890884399414 -8.610162734985352 -3.759305715560913 33.22812271118164 9.526625633239746 17.835773468017578 19.787355422973633 -1.0170005559921265 0.546112596988678 -10.596617698669434 27.444583892822266 -1.8063615560531616 23.99574851989746 20.70512580871582 18.111284255981445 -2.7803053855895996 10.620511054992676 4.2520294189453125 3.5649430751800537 -2.3561768531799316 3.521575450897217 0.990643322467804 11.71177864074707 0.9221459031105042 2.415729284286499 -1.0515506267547607 -3.323564291000366 -2.586570978164673 -2.8251636028289795 2.8013007640838623 12.334145545959473 -1.9112499952316284 -0.7992517352104187 -2.9124436378479004 -2.86159086227417 -3.65388560295105 -2.9044435024261475 0.4497225284576416 18.58353042602539 0.743984043598175 -1.0953949689865112 -2.4931373596191406 -2.6897289752960205 -2.9088315963745117 -4.2625017166137695 -4.300814628601074 2.122130870819092 3.6010491847991943 -2.840221881866455 -3.993241548538208 -3.0889294147491455 -2.2498490810394287 -4.337090492248535 -4.708025932312012 1.4793906211853027 4.402015209197998 -1.6397188901901245 -4.164124965667725 -3.8223581314086914 10.028303146362305 -0.16476912796497345 15.122689247131348 30.841400146484375 18.702743530273438 1.1942349672317505 19.31670379638672 43.03251266479492 3.8056437969207764 4.4667887687683105 19.152755737304688 17.852209091186523 9.123655319213867 2.594745397567749 25.643037796020508 36.128299713134766 14.520697593688965 -3.2418015003204346 -3.570956230163574 7.3142008781433105 2.3204164505004883 4.9414286613464355 13.968208312988281 3.062440872192383 1.8165416717529297 -2.436094045639038 -3.1843318939208984 1.6427024602890015 -0.43531960248947144 0.9998589158058167 2.053671360015869 1.570523738861084 4.0685648918151855 -7.076354503631592 -4.489516735076904 -8.472054481506348 -1.6320579051971436 1.1985671520233154 1.3718540668487549 0.9525980949401855 -1.2105634212493896 -3.0097832679748535 -1.693735957145691 -4.222705841064453 -1.6932098865509033 0.05327710881829262 1.2452982664108276 1.0206401348114014 -2.3296072483062744 -1.4714852571487427 -3.8124780654907227 -2.024540662765503 -4.1675872802734375 -0.9683708548545837 -0.11891979724168777 2.752432107925415 -2.5599801540374756 0.05024060234427452 -3.490821599960327 -7.603651523590088 -5.500983715057373 -4.086724281311035 2.43440580368042 3.7698044776916504 0.03868667408823967", +"224 0.8502067923545837 1.7925232648849487 0.24449077248573303 -2.2297353744506836 -3.869919538497925 -3.977384328842163 -9.096381187438965 -5.966509819030762 1.1147044897079468 -0.6107873320579529 1.7991691827774048 -1.4864904880523682 -2.9020352363586426 -5.881547927856445 -8.93336009979248 -5.1445512771606445 1.8229327201843262 -0.6176725625991821 0.8258598446846008 -1.1522760391235352 -1.6313378810882568 -1.925648808479309 -2.687633514404297 -4.000175476074219 1.15227210521698 -3.258139133453369 -2.8227057456970215 0.801084041595459 3.7119100093841553 4.497448444366455 1.7816709280014038 -1.2946631908416748 -3.7958507537841797 -8.716383934020996 1.468489170074463 -5.106985092163086 -0.8217654228210449 -0.2748068571090698 -0.21156999468803406 -23.454730987548828 -11.070775032043457 -4.319849014282227 -8.669114112854004 -0.7035199999809265 -16.51372718811035 10.006051063537598 4.2906389236450195 -18.803178787231445 -9.399267196655273 -4.206384658813477 -3.159169912338257 -6.675293922424316 -2.9361319541931152 -3.927227020263672 -4.327861309051514 -4.37467622756958 -7.240046977996826 -6.320413112640381 -9.815922737121582 -6.518333435058594 -5.754737854003906 -4.827390193939209 -6.293835163116455 -4.606889724731445 2.240546703338623 -14.199945449829102 -9.021103858947754 -17.81645393371582 -11.400943756103516 -12.304073333740234 -14.063158988952637 -10.053019523620605 -18.30672836303711 -6.632663249969482 -13.021665573120117 -11.68602466583252 -27.136539459228516 -14.39159107208252 -46.78409194946289 -10.240140914916992 -25.499465942382812 -4.809024810791016 -46.669883728027344 -9.868809700012207 -40.177268981933594 -14.807024002075195 -13.605539321899414 3.6507441997528076 -20.70587730407715 -0.9198765754699707 -11.875091552734375 -37.235382080078125 3.3886916637420654 -27.25468635559082 8.683839797973633 -6.449734210968018 -20.744129180908203 -17.21317481994629 6.528686046600342 9.86234188079834 -16.945337295532227 12.855649948120117 1.6297454833984375 -12.932812690734863 65.09420776367188 -8.633142471313477 18.214651107788086 0.19671392440795898 4.68157434463501 9.020877838134766 12.638081550598145 0.6663342714309692 19.289234161376953 13.823965072631836 14.692094802856445 -7.254481792449951 13.663529396057129 14.326828956604004 6.843889236450195 1.0700807571411133 5.948825836181641 10.669816970825195 8.37182903289795 8.406688690185547 9.312031745910645 3.5819091796875 11.86438274383545 5.396942615509033 4.287226676940918 6.072364330291748 7.885001182556152 6.5582098960876465 7.106430530548096 7.920173168182373 1.7514278888702393 4.944596767425537 4.445057392120361 6.69990873336792 8.19428539276123 7.630942344665527 5.363877773284912 4.502255439758301 1.4073718786239624 -0.660717785358429 4.358741760253906 7.053868770599365 5.87286901473999 6.633943557739258 6.381205081939697 4.607238292694092 4.443392276763916 1.2310614585876465 4.666962146759033 7.87274169921875 3.480454206466675 8.10201358795166 7.709630489349365 8.288198471069336 2.1117825508117676 0.3318040668964386 38.707401275634766 -12.461941719055176 -33.68638610839844 22.604856491088867 -4.38350248336792 -9.325708389282227 -55.170997619628906 0.6437169909477234 -21.110620498657227 -41.26310348510742 -9.834664344787598 -12.943628311157227 -21.5240535736084 -19.470685958862305 -12.780470848083496 4.918111801147461 -47.265933990478516 -26.1676025390625 -37.34864807128906 -29.25901985168457 -26.994295120239258 -4.981802463531494 -12.439931869506836 -59.49332046508789 -9.109505653381348 -22.007850646972656 -4.678487300872803 -8.452889442443848 -38.9666633605957 -76.52999877929688 -33.707664489746094 -3.6848819255828857 -8.33957290649414 -62.09870147705078 -24.008869171142578 -5.715343475341797 -7.09663200378418 -12.345820426940918 -13.912313461303711 -36.54863357543945 -2.9381752014160156 -15.76310920715332 -20.159603118896484 -10.569558143615723 -11.338022232055664 -11.287577629089355 -63.284385681152344 -9.576038360595703 -37.01848220825195 -13.577007293701172 -58.20390319824219 -24.406951904296875 -22.32002830505371 -21.73000144958496 -12.715113639831543 -5.508123397827148 -25.007020950317383 -25.753231048583984 -21.36980628967285 -18.788225173950195 -4.478792190551758 -14.134489059448242 -2.482739210128784 -3.5565874576568604 -16.708518981933594", +"224 3.955709934234619 4.697170257568359 6.049604415893555 2.877910614013672 0.1150304302573204 6.714737892150879 4.126035690307617 -1.5219414234161377 8.124870300292969 8.456814765930176 2.3991196155548096 -1.4457817077636719 -0.11983434855937958 4.394200325012207 3.2777857780456543 2.9807605743408203 5.826812744140625 3.4846484661102295 2.443618059158325 -0.09482888877391815 0.6570295691490173 2.2336270809173584 3.2031123638153076 2.8804268836975098 7.945091247558594 7.232901096343994 7.669727325439453 3.714890241622925 -3.520059823989868 3.6252474784851074 -2.093564033508301 1.5156131982803345 6.402690410614014 6.800327777862549 15.39993953704834 6.84080696105957 5.235935688018799 -0.1028427928686142 -1.8445420265197754 2.0482215881347656 -22.41914176940918 10.223139762878418 5.163931846618652 26.4505558013916 5.634205341339111 -6.2463531494140625 -18.429882049560547 -5.061091423034668 -4.6706624031066895 -13.099618911743164 -13.187201499938965 -5.386475086212158 -9.806849479675293 2.483814001083374 -0.7207638025283813 0.8122109174728394 -2.304494857788086 -1.4259306192398071 -6.629549503326416 1.8970271348953247 4.088036060333252 8.5912504196167 3.0109755992889404 1.5326783657073975 1.3154329061508179 0.5752166509628296 -0.6409382820129395 3.5706655979156494 5.692944526672363 6.871955394744873 4.545620918273926 3.1436266899108887 3.934450149536133 -1.4317435026168823 -2.3174099922180176 -2.4956698417663574 4.205896377563477 4.464091777801514 6.237792491912842 3.6765575408935547 -9.034382820129395 1.316543459892273 -7.3635783195495605 -1.8212147951126099 -2.0989413261413574 7.8094658851623535 2.485675573348999 3.763003349304199 15.500423431396484 -10.146804809570312 3.4104037284851074 -10.412262916564941 3.8440144062042236 -18.662254333496094 7.452095985412598 13.990280151367188 -0.3522040843963623 -0.45621979236602783 -12.428494453430176 -3.8757505416870117 6.94162654876709 3.3679468631744385 15.857023239135742 4.829019546508789 20.974517822265625 -42.28169250488281 2.950296640396118 2.411529779434204 9.559657096862793 -6.285380840301514 -18.179506301879883 23.674306869506836 2.992266893386841 0.6610233783721924 12.313187599182129 6.616946697235107 5.315567493438721 -19.8365478515625 -13.991451263427734 -28.351465225219727 -1.392470359802246 -2.754791259765625 1.9358514547348022 2.5579261779785156 -1.2886450290679932 -1.5316188335418701 -11.620070457458496 -14.075647354125977 2.378734827041626 -0.4696093499660492 5.801191329956055 -0.757653534412384 2.8805792331695557 -4.393782138824463 -3.818357229232788 -5.554483890533447 5.899966239929199 3.876939058303833 2.551262617111206 1.7896734476089478 -2.595597982406616 -5.343570232391357 -5.517345905303955 -6.142457962036133 7.353673934936523 10.294496536254883 4.4175848960876465 -4.486232280731201 -3.8844330310821533 -5.904881477355957 -5.346965312957764 -6.451301097869873 8.489974975585938 6.856439590454102 5.058503150939941 -4.825878620147705 -5.673571586608887 -7.680211067199707 -7.295569896697998 -6.300254821777344 3.2574944496154785 -8.694279670715332 4.125761032104492 -1.7682538032531738 34.116371154785156 -32.753196716308594 11.858126640319824 23.417869567871094 30.066883087158203 18.120588302612305 9.848274230957031 14.720195770263672 1.7467435598373413 -13.257425308227539 -25.404998779296875 -14.007744789123535 6.459629058837891 6.954170227050781 13.557870864868164 4.768299102783203 5.520915508270264 2.5059168338775635 -23.2174129486084 -29.401840209960938 3.4172136783599854 10.506242752075195 9.38886833190918 5.962319374084473 3.8412039279937744 -4.108679294586182 -10.831581115722656 -22.634504318237305 15.943617820739746 9.36350154876709 8.069975852966309 5.909334659576416 5.502039909362793 -7.185210704803467 -12.70386028289795 -18.69736671447754 -35.53256607055664 16.739055633544922 3.2033774852752686 11.267422676086426 2.9097695350646973 0.41154229640960693 -9.305085182189941 -5.957780361175537 20.88489532470703 15.607355117797852 10.589412689208984 9.275490760803223 7.813412666320801 -4.278308391571045 -4.739684581756592 -11.212307929992676 -7.362753868103027 3.827873706817627 3.6861765384674072 16.05710220336914 -9.119039535522461 5.986179351806641 -7.321238994598389 -6.575843811035156 -4.996598720550537", +"224 7.7964935302734375 5.990248203277588 5.114893913269043 2.838465452194214 10.131245613098145 2.547091245651245 -0.06236132234334946 0.46436792612075806 7.9015326499938965 5.6194305419921875 6.660980701446533 4.018000602722168 8.527883529663086 -0.6648472547531128 0.4216271936893463 2.3525211811065674 6.254366874694824 6.773535251617432 7.509952068328857 5.756810665130615 20.61670684814453 -23.72382164001465 9.822330474853516 0.14771735668182373 7.889634609222412 7.639775276184082 7.081413745880127 6.0243916511535645 9.62911605834961 6.324436664581299 3.1502139568328857 6.172532558441162 10.305444717407227 12.955171585083008 11.360708236694336 11.039471626281738 7.4198689460754395 7.220940113067627 4.3441033363342285 1.172013521194458 16.161861419677734 17.4542293548584 2.717233657836914 10.902762413024902 5.745357036590576 7.3423027992248535 -9.526127815246582 14.373001098632812 -5.781229496002197 -1.0712740421295166 -3.1459851264953613 -2.264021396636963 -0.5812085270881653 -1.8699465990066528 -0.6798668503761292 -1.7621608972549438 -11.31476879119873 -6.076622009277344 -4.140759468078613 -7.574925422668457 -4.115877151489258 -5.527780055999756 -4.0170063972473145 -3.134122610092163 -11.165782928466797 -7.5783586502075195 -3.25913143157959 0.8705307245254517 -5.104336738586426 -6.15153169631958 -9.43517780303955 -6.057955265045166 7.398845195770264 1.7634066343307495 7.032709121704102 6.020503044128418 -3.085557460784912 -11.375154495239258 -7.809684753417969 -8.286162376403809 2.4176907539367676 5.541021823883057 8.562480926513672 9.305498123168945 2.1299915313720703 -1.626622200012207 -4.087389945983887 -12.76248836517334 5.899633884429932 15.065662384033203 10.116461753845215 4.4946441650390625 16.481983184814453 4.748273849487305 8.81970500946045 -44.128273010253906 7.350492477416992 29.004314422607422 11.459022521972656 15.453797340393066 -8.90298080444336 14.126687049865723 5.270780086517334 -23.12883186340332 3.9530742168426514 41.114707946777344 39.059593200683594 0.3299838900566101 -43.47870635986328 -2.3740694522857666 14.000066757202148 -13.593989372253418 9.470951080322266 -5.776889324188232 5.58403205871582 -15.823296546936035 -38.834693908691406 -14.858564376831055 2.745922565460205 -8.01034164428711 0.42514973878860474 4.047135353088379 0.4195728302001953 -2.0218687057495117 4.506653785705566 -5.952808856964111 7.656067371368408 -7.303997993469238 -5.5275373458862305 -3.936964511871338 1.6079741716384888 2.536613702774048 -0.404680073261261 -2.5769379138946533 -3.2173941135406494 -3.525442361831665 -3.885984420776367 -1.1763137578964233 -2.081191062927246 -0.4225042164325714 -6.222319602966309 -4.549747943878174 -8.230550765991211 -1.7797062397003174 -5.123476028442383 -1.7501485347747803 1.2809983491897583 -3.7768523693084717 -6.219242095947266 -7.428966522216797 -5.884573459625244 -1.9060496091842651 -5.353935718536377 -2.5077970027923584 -0.5467889904975891 -12.208343505859375 -1.616568922996521 -5.941176891326904 -3.622518301010132 -1.8585106134414673 6.655142784118652 17.484703063964844 14.515093803405762 9.327193260192871 8.206348419189453 4.44527530670166 24.643373489379883 20.30405044555664 21.31258201599121 4.1059651374816895 -10.41154670715332 11.037660598754883 -38.21725082397461 -4.7453789710998535 -46.727294921875 1.6292695999145508 18.54586410522461 7.75949239730835 -10.84373664855957 -14.532417297363281 -7.0382914543151855 -64.75920867919922 -2.8563129901885986 -2.932922601699829 15.267735481262207 3.760221242904663 -66.12201690673828 -11.945174217224121 -63.20100784301758 -21.792423248291016 1.3701387643814087 9.087581634521484 11.0702543258667 -6.652552604675293 -7.3886823654174805 -40.64896774291992 -12.138427734375 -9.29976749420166 -8.622549057006836 -5.855124473571777 2.443443775177002 2.835768938064575 -13.881234169006348 -3.6723668575286865 -9.158923149108887 -4.891254901885986 -8.621742248535156 -1.29531991481781 3.221017837524414 -12.959381103515625 -1.9094393253326416 -5.589865207672119 -1.0918357372283936 -8.669175148010254 0.24327363073825836 0.3098200261592865 -2.2259907722473145 -4.527374744415283 -10.598577499389648 -5.158509731292725 -1.0649161338806152 -6.628549575805664 0.6489719748497009 0.36803603172302246 -7.370662689208984", +"224 -5.588176727294922 -4.810033321380615 -9.566717147827148 0.8377034068107605 7.391422271728516 7.633281230926514 1.9138226509094238 4.586091995239258 -5.044208526611328 -2.6325690746307373 -9.142716407775879 2.0426528453826904 8.51427173614502 6.596217632293701 4.257297515869141 4.436563014984131 -5.332109451293945 -1.6771501302719116 -3.911092519760132 -0.29463115334510803 2.765239953994751 8.195947647094727 8.277099609375 4.194468975067139 -6.236479759216309 -2.9729514122009277 -3.940974235534668 0.48062244057655334 -0.6094136834144592 2.368011474609375 12.60849380493164 6.680869102478027 -4.368465423583984 -1.4322024583816528 -10.555441856384277 -5.865179538726807 -3.2839443683624268 -0.21109488606452942 8.985494613647461 -0.6738803386688232 -14.561902046203613 -56.402706146240234 -11.729586601257324 -44.90955352783203 -3.4520375728607178 0.32667189836502075 4.699771881103516 -8.025829315185547 -9.645347595214844 -4.905919075012207 -8.942032814025879 -5.108055591583252 -9.717117309570312 -1.297044277191162 -0.7795166969299316 -2.9699361324310303 0.08626358956098557 -8.613268852233887 -11.335485458374023 -9.152569770812988 -7.250666618347168 -6.807037353515625 -3.9179277420043945 -1.5015760660171509 -15.06029224395752 -19.756031036376953 -31.424816131591797 -15.074443817138672 -8.835603713989258 -6.919329643249512 -4.869072437286377 -4.325850486755371 -71.46849822998047 -20.65513038635254 -11.25057601928711 -13.943284034729004 -13.923791885375977 -13.408946990966797 -3.629124402999878 -13.240985870361328 5.969027996063232 -6.9898681640625 -10.898101806640625 -13.051620483398438 -15.115123748779297 -39.736572265625 -3.0342776775360107 -16.47787094116211 -10.811190605163574 -3.2503702640533447 -3.4008004665374756 -11.928047180175781 -7.56772518157959 26.737163543701172 25.862773895263672 -53.90505599975586 8.28748607635498 -7.606306076049805 -0.3386491537094116 4.953719139099121 -34.846961975097656 -24.079736709594727 17.73528289794922 14.536054611206055 8.270160675048828 -47.638343811035156 -21.50039291381836 -45.17325973510742 -6.387743949890137 21.4689884185791 17.051380157470703 -15.465594291687012 1.4246106147766113 0.2327498346567154 -12.89318561553955 8.7962646484375 6.033112049102783 15.436718940734863 -58.493019104003906 28.88921356201172 3.181562662124634 0.9052319526672363 2.9714713096618652 5.172533988952637 7.694322109222412 -26.79911994934082 -5.3804802894592285 -1.7670332193374634 -0.27860549092292786 5.49993896484375 -2.9401090145111084 7.555934429168701 -0.49185964465141296 6.58510684967041 -1.362334966659546 2.5691049098968506 1.7288811206817627 0.9447634220123291 0.16167393326759338 2.9816935062408447 4.307393550872803 1.2252211570739746 3.4953339099884033 -1.1256816387176514 2.1633923053741455 0.6530449390411377 0.8600640892982483 5.078413009643555 2.7212724685668945 0.39580827951431274 6.484781742095947 1.420620083808899 2.123131275177002 2.8857581615448 4.871250629425049 4.5324387550354 2.9335567951202393 2.327338695526123 7.150721549987793 4.0007195472717285 -26.56456756591797 -17.238447189331055 8.275588035583496 -29.534122467041016 -13.140807151794434 -5.037405967712402 1.5209031105041504 74.66425323486328 -35.14181137084961 -37.15251541137695 -19.97909927368164 -7.437885761260986 -10.346870422363281 -4.0052995681762695 -6.13715934753418 81.78863525390625 -17.319604873657227 -54.07083511352539 -26.970922470092773 -8.14713191986084 -0.7295880317687988 -9.107593536376953 6.041557312011719 -24.788293838500977 -25.22041130065918 -26.56815528869629 -53.69327926635742 -3.999934673309326 -5.196531295776367 2.360419750213623 -27.085430145263672 3.4773788452148438 -17.684823989868164 -21.707326889038086 -22.914037704467773 -25.181482315063477 -1.9292941093444824 1.9898909330368042 3.226011276245117 11.716170310974121 -11.760343551635742 -16.473148345947266 -20.0412540435791 -14.956615447998047 -2.2000153064727783 -0.504077672958374 4.141161918640137 2.229307174682617 -8.095185279846191 -8.87761116027832 -9.826080322265625 -6.246018409729004 -6.485177040100098 -3.541191339492798 -4.2005696296691895 -6.0696120262146 4.5638604164123535 -5.61038875579834 -4.784081935882568 0.4893486499786377 -3.472907066345215 -6.767871379852295 -6.531947135925293 -4.359000205993652 -15.899187088012695", +"224 -4.840394020080566 -1.0644237995147705 -1.8743510246276855 8.960769653320312 7.50922155380249 4.40264892578125 4.849127292633057 5.932410717010498 -3.7312307357788086 -6.443203449249268 -0.2870106101036072 8.941557884216309 7.598583698272705 3.636207103729248 3.9823832511901855 6.072019577026367 -0.5024831295013428 -0.21374033391475677 -1.6743899583816528 3.6450557708740234 7.180852890014648 5.365334987640381 -1.2594757080078125 1.7565041780471802 5.135519981384277 2.8224658966064453 2.998955726623535 6.177487373352051 5.9113616943359375 2.3141720294952393 0.10855080932378769 3.216301202774048 6.030124187469482 4.957450866699219 5.842761993408203 9.583480834960938 15.22725772857666 10.522513389587402 8.061394691467285 -1.6201335191726685 13.307839393615723 19.56314468383789 1.1182301044464111 8.724430084228516 5.030510425567627 23.493032455444336 8.7294282913208 22.29473114013672 0.8752520084381104 -44.893768310546875 -26.442768096923828 -35.60626983642578 -2.3492109775543213 -2.502175807952881 2.708920955657959 4.916506290435791 -18.63832664489746 -27.451431274414062 -19.84848403930664 -16.927959442138672 -11.010358810424805 -1.8761857748031616 4.450998783111572 7.455147743225098 -15.11286449432373 -16.588682174682617 -14.890181541442871 -12.352717399597168 -5.326333522796631 -2.594939708709717 -0.33116477727890015 0.8023288249969482 -19.283254623413086 -3.585965156555176 -4.806748867034912 -10.87488079071045 -3.059123992919922 3.331284999847412 3.247249126434326 4.391490459442139 3.221442222595215 -2.328465461730957 -13.900761604309082 -3.673440933227539 -0.0040483372285962105 6.68397331237793 6.663961410522461 13.333386421203613 4.610149383544922 -2.2036075592041016 -12.608744621276855 -2.7415990829467773 14.948014259338379 15.982672691345215 9.260233879089355 14.609060287475586 -9.167425155639648 12.001975059509277 14.792219161987305 8.773639678955078 15.462420463562012 12.642308235168457 30.31914710998535 4.618283748626709 3.9721603393554688 6.977102279663086 23.359619140625 15.346569061279297 -42.18484878540039 17.58225440979004 2.305532693862915 -36.30693435668945 -9.510445594787598 -18.213836669921875 -26.939056396484375 -17.0726318359375 -13.061345100402832 7.306027889251709 6.53911018371582 15.964324951171875 -9.249420166015625 -8.214493751525879 -14.72979736328125 -8.267007827758789 2.0914692878723145 -4.4227294921875 2.541285753250122 1.6512352228164673 -10.492661476135254 -10.383265495300293 -9.053547859191895 -4.548253059387207 4.57870626449585 -5.171939849853516 -4.471552848815918 -4.849118232727051 -11.117897987365723 -5.817943572998047 -3.859773874282837 -1.4239708185195923 3.536329984664917 -3.589747905731201 -7.904839038848877 0.18244744837284088 -11.562878608703613 -6.230630397796631 -0.6925509572029114 -0.6045006513595581 -1.893673062324524 -4.511163711547852 -2.838690996170044 1.2058017253875732 -8.779387474060059 -4.238606929779053 -5.201834201812744 -5.371899127960205 2.557610511779785 -3.761301040649414 -5.756685256958008 0.8795097470283508 -6.717991828918457 45.11275100708008 -23.702266693115234 15.151549339294434 -15.334980964660645 17.870576858520508 -26.48702621459961 -49.33822250366211 11.414902687072754 22.58986473083496 20.750608444213867 31.882543563842773 3.682589530944824 15.295055389404297 -8.388282775878906 -2.3288991451263428 -8.659622192382812 8.922757148742676 11.959814071655273 12.350455284118652 5.3064727783203125 -21.153669357299805 -17.97000503540039 -13.622694969177246 1.0358392000198364 1.1528841257095337 6.058882713317871 10.350068092346191 5.424299240112305 -18.199548721313477 -7.364605903625488 -10.767021179199219 -2.29150128364563 -0.6555437445640564 5.821745872497559 2.5525429248809814 -3.170213222503662 -12.846405982971191 -11.101846694946289 -12.274290084838867 5.510370254516602 -0.10614901036024094 -0.804111123085022 0.23988190293312073 -6.482559680938721 -10.797451972961426 -12.160901069641113 -13.357236862182617 2.548241376876831 3.201333522796631 -1.7345507144927979 -1.3499699831008911 -4.926030158996582 -8.370366096496582 -7.557790756225586 -4.449655055999756 -9.29932975769043 3.3699188232421875 13.199040412902832 2.179243564605713 8.325072288513184 -5.1818108558654785 3.8449764251708984 0.8461008667945862 1.0572998523712158", +"224 -5.88570499420166 -3.772439956665039 -7.566572189331055 -2.084580421447754 -5.22890567779541 23.779531478881836 0.05670558661222458 -4.048449993133545 -4.905075550079346 -5.242642879486084 -5.635653018951416 -6.807604789733887 -1.1004003286361694 -2.7979753017425537 -0.6352856755256653 -1.072279930114746 -5.456742763519287 -2.299309492111206 -4.924803256988525 -6.829933166503906 -3.801743507385254 -2.0273730754852295 -2.7158124446868896 -2.9674198627471924 -4.519123077392578 -3.660898447036743 -4.516433238983154 -5.160897731781006 -2.3318183422088623 0.6697350740432739 -6.678775310516357 -1.7618756294250488 -0.6800270080566406 -1.346664309501648 -4.670088291168213 -8.449963569641113 -9.209240913391113 -6.051823616027832 -7.610345840454102 -0.7914482355117798 -11.321293830871582 -0.13420356810092926 -11.953800201416016 -17.432680130004883 -30.591873168945312 -16.867616653442383 -8.865912437438965 -3.3685874938964844 20.78177833557129 8.65076732635498 11.47008991241455 4.7703680992126465 0.9588277339935303 9.95915412902832 4.540924549102783 6.939535617828369 2.450350522994995 3.2829043865203857 1.1552618741989136 8.111045837402344 -3.1349716186523438 -3.048778772354126 2.1280863285064697 8.099730491638184 -8.329435348510742 0.14584119617938995 -0.0468369722366333 -3.1806697845458984 -4.892396450042725 -5.490632057189941 3.177647113800049 3.095402717590332 -7.26424503326416 -10.06771183013916 -2.5150322914123535 -8.450833320617676 -6.986651420593262 -5.900766372680664 0.5823801755905151 2.6109726428985596 -15.54589557647705 -12.31739616394043 -12.154197692871094 -8.058980941772461 -5.865838050842285 -3.7193470001220703 -0.8467641472816467 -0.4143986105918884 -6.356079578399658 -18.849838256835938 -12.63729190826416 -14.91596794128418 -10.199423789978027 -13.791902542114258 -5.312941551208496 -9.199762344360352 -4.226815223693848 -18.976749420166016 -14.035526275634766 -44.95032501220703 -34.92116928100586 -16.181196212768555 -14.913667678833008 -10.018383026123047 19.47225570678711 -2.7636044025421143 -11.922154426574707 -12.520648002624512 -18.957122802734375 -20.341167449951172 -14.451661109924316 -3.4694223403930664 19.855396270751953 4.687479496002197 -4.045410633087158 0.9784668684005737 -6.515620708465576 1.4172693490982056 23.802392959594727 4.458315372467041 4.001986980438232 0.6907084584236145 1.9966518878936768 -2.4634883403778076 -7.528732776641846 7.97312068939209 -2.584979772567749 2.8386263847351074 0.4998033046722412 -1.3820772171020508 0.3547978401184082 0.7008618712425232 -6.682915687561035 4.269679069519043 3.9555728435516357 5.671546459197998 -1.63129723072052 -1.5547353029251099 -3.121201276779175 -3.2673895359039307 -3.8555803298950195 1.8612152338027954 2.756168842315674 2.027719020843506 -2.028365135192871 -2.3738768100738525 -1.7183061838150024 -1.358472228050232 1.4138123989105225 2.28883695602417 3.5073490142822266 1.3704817295074463 -2.970310688018799 -1.8225826025009155 -3.8385367393493652 -2.332176923751831 -3.2857542037963867 0.7326908111572266 2.9991886615753174 4.890846252441406 -58.03757095336914 10.283528327941895 3.8676981925964355 17.761777877807617 3.6437551975250244 -10.576679229736328 -24.93963050842285 3.359579086303711 7.108421325683594 10.323545455932617 20.85076332092285 16.97688102722168 16.218643188476562 16.114700317382812 -2.5142409801483154 -52.193965911865234 -32.92604064941406 5.262455940246582 6.385802745819092 3.987654685974121 4.08358907699585 -2.1425156593322754 -3.813748836517334 -3.749758720397949 7.578997611999512 5.445916652679443 5.962838649749756 4.391694068908691 4.289013385772705 3.9173104763031006 -3.429107427597046 -0.930584192276001 0.4757499694824219 13.714707374572754 6.602489948272705 3.738351821899414 5.141940116882324 5.240877628326416 3.502763032913208 -0.5902383923530579 1.3111649751663208 0.12995824217796326 5.083355903625488 5.360667705535889 5.362883567810059 2.668470859527588 1.8532885313034058 0.11713209003210068 -0.7637750506401062 0.3150719702243805 1.2763619422912598 -0.5721039175987244 2.5334246158599854 2.526575803756714 2.645909070968628 1.7775094509124756 7.257302761077881 3.9441277980804443 1.8398360013961792 -3.9308760166168213 6.759296894073486 -1.2342098951339722 1.578594446182251 -2.0066745281219482 7.248795032501221", +"224 0.9465802907943726 0.3803648054599762 0.8961822390556335 2.053821086883545 -2.0448596477508545 -6.630495548248291 1.9922972917556763 -0.3781113922595978 1.8042300939559937 -1.772657871246338 -0.6692790985107422 1.6192775964736938 -4.240187644958496 -1.920091152191162 -1.0791702270507812 0.5861768126487732 -0.9513725638389587 -0.34422484040260315 0.9602328538894653 6.90383768081665 2.940321445465088 -2.0548675060272217 2.1396572589874268 1.985413670539856 -3.5354788303375244 -3.6551175117492676 0.9802343249320984 -4.621458053588867 6.450911998748779 1.9212266206741333 -6.152333736419678 0.45676594972610474 -0.17236049473285675 1.3018018007278442 -1.1659191846847534 4.312125205993652 13.742562294006348 -1.029658555984497 2.4164390563964844 5.699764251708984 -20.581392288208008 -6.161786079406738 -22.46831512451172 -34.85333251953125 1.4916799068450928 12.731289863586426 -4.930453300476074 11.142524719238281 4.913856029510498 -2.0771090984344482 -3.0657429695129395 -9.87013053894043 -3.713733196258545 -6.842378616333008 -6.550490379333496 -3.4564719200134277 -4.695563316345215 -23.841716766357422 -18.366487503051758 -7.139815807342529 -19.356807708740234 -13.460406303405762 -9.376745223999023 -4.057396411895752 -29.654386520385742 -27.749177932739258 -23.221677780151367 -15.813292503356934 -16.89028549194336 -48.143768310546875 -9.287840843200684 -2.8809757232666016 -17.996145248413086 -18.88064193725586 -30.277565002441406 -17.40496253967285 -39.93986511230469 -21.677997589111328 -9.239755630493164 -0.8318362832069397 -17.869138717651367 -18.47629165649414 -8.452227592468262 -13.332547187805176 -41.127017974853516 -17.801715850830078 2.794771194458008 4.832223415374756 -28.271211624145508 -26.990617752075195 -8.107544898986816 -1.9064393043518066 16.633102416992188 9.445808410644531 7.858044147491455 10.152701377868652 -27.972896575927734 -10.86962890625 -15.312677383422852 -29.245635986328125 9.712196350097656 10.109679222106934 35.919349670410156 4.139769077301025 -21.14944839477539 4.3425517082214355 -18.31645965576172 -15.456178665161133 2.1114919185638428 33.32756805419922 -25.39855194091797 -8.594283103942871 19.29705810546875 17.138051986694336 17.13333511352539 5.67879056930542 -52.72039031982422 26.405330657958984 3.4184608459472656 13.340713500976562 6.736325263977051 -1.0085080862045288 2.7447967529296875 3.273620367050171 7.081709384918213 10.222145080566406 0.30603116750717163 0.8500163555145264 9.138219833374023 -3.3378915786743164 6.420544624328613 -4.937698841094971 7.841479778289795 2.6617956161499023 2.5155489444732666 -0.5391709804534912 7.508833885192871 6.695089340209961 -14.23887825012207 5.523212432861328 6.085801124572754 -0.49047112464904785 -0.6969111561775208 0.698350191116333 8.429666519165039 9.574274063110352 0.4675968289375305 1.1663200855255127 6.139982223510742 1.1068888902664185 0.6570762395858765 2.1826605796813965 5.999792098999023 7.0780229568481445 7.172088146209717 4.212518692016602 2.363382339477539 5.263188362121582 -3.150352716445923 1.447015404701233 -21.394062042236328 -38.82940673828125 -6.890397548675537 -38.16440200805664 13.929099082946777 -58.96751022338867 25.331493377685547 -12.985992431640625 -30.317514419555664 -25.599319458007812 -49.39322280883789 -2.267324924468994 -25.550676345825195 -2.430248260498047 -49.275943756103516 -17.478710174560547 -12.714069366455078 -71.04240417480469 -9.831504821777344 -14.916797637939453 2.7402467727661133 10.43651008605957 -6.063077449798584 -25.740737915039062 4.346899032592773 1.2207075357437134 -65.02372741699219 1.7306126356124878 -3.346738815307617 4.460259437561035 -9.402090072631836 -6.016019344329834 -2.6551623344421387 -7.541857719421387 -11.834883689880371 -4.8166351318359375 -6.5716447830200195 -25.189176559448242 -22.202239990234375 -1.6791037321090698 -11.190009117126465 -3.7512617111206055 -5.562129497528076 -4.989659309387207 -4.4026031494140625 -2.7835357189178467 -18.8021297454834 -7.038966655731201 -21.612577438354492 -20.72265625 -5.0291008949279785 -6.743985652923584 -7.088495254516602 -6.76344633102417 -5.267753601074219 -8.402291297912598 -36.97121047973633 -12.240842819213867 -17.48125648498535 2.774277925491333 -0.11892614513635635 -6.400478363037109 -3.4188976287841797 -7.910647869110107 -15.437847137451172", +"224 -5.669094085693359 0.506613552570343 0.10789951682090759 1.471948504447937 0.06012779474258423 0.31409528851509094 2.0953991413116455 1.3696072101593018 -10.304179191589355 -5.777153491973877 -3.8157429695129395 -1.9208447933197021 -0.08733699470758438 1.345548152923584 0.888443112373352 1.613746166229248 -11.90308666229248 -14.101568222045898 -7.072727680206299 -3.461698532104492 -0.20579977333545685 0.4940503239631653 2.363636016845703 1.502845048904419 -10.929194450378418 -13.309618949890137 -10.953063011169434 -2.1147348880767822 -2.40069842338562 -2.84916090965271 -1.6018089056015015 -0.6756616830825806 -13.590421676635742 -18.280038833618164 -12.025445938110352 -11.336309432983398 -4.92460823059082 -0.9918150305747986 -2.5409791469573975 -6.667131423950195 -26.736940383911133 -25.823400497436523 -23.202983856201172 -13.076967239379883 -13.789603233337402 -8.420136451721191 9.9241361618042 2.1205766201019287 -2.918201446533203 -2.9874539375305176 5.774374961853027 2.9559996128082275 5.209493637084961 7.625434875488281 1.6550415754318237 3.6092021465301514 -5.4090352058410645 -2.6641428470611572 -2.765395402908325 2.493565082550049 6.320305347442627 5.911703586578369 7.764272212982178 3.373549699783325 -7.920827865600586 -9.723038673400879 -4.143738269805908 -1.124484658241272 4.993016719818115 9.143914222717285 10.6600923538208 7.855897903442383 -11.354182243347168 -12.56997299194336 -5.085126876831055 -5.425055980682373 6.295314788818359 10.030435562133789 12.475983619689941 13.093432426452637 -15.911494255065918 -13.713826179504395 -14.243776321411133 -6.392969608306885 -0.3255121111869812 19.541791915893555 4.768488883972168 4.449288845062256 -16.756057739257812 -17.34148597717285 -14.279252052307129 -12.760333061218262 -8.008811950683594 -11.216879844665527 -7.998348236083984 -2.946866750717163 -40.77251052856445 -30.298198699951172 -19.227237701416016 -17.74456214904785 -7.6909332275390625 -7.6859941482543945 -25.733999252319336 -4.887422561645508 -23.244050979614258 -49.34151840209961 -42.178592681884766 -15.98714828491211 -8.836074829101562 -12.423856735229492 -9.549053192138672 9.749883651733398 -2.594130277633667 16.420133590698242 -2.0572493076324463 11.506525993347168 10.736456871032715 5.918498992919922 8.656885147094727 -1.4853355884552002 -0.3407391309738159 -0.5429415106773376 7.828742027282715 6.019495487213135 5.02094030380249 2.092259168624878 2.2562997341156006 -1.2157726287841797 0.7046773433685303 1.0391157865524292 5.764171600341797 0.2590022385120392 -0.18753165006637573 0.06249437853693962 -0.04098312184214592 0.291730135679245 7.303477764129639 7.685549259185791 2.490560531616211 2.99851655960083 0.056735776364803314 -0.4540204107761383 -1.9233225584030151 -2.1876227855682373 8.641584396362305 10.507161140441895 3.828343629837036 1.6003602743148804 -2.0946691036224365 -1.8789341449737549 -4.6265459060668945 -3.291398763656616 8.387092590332031 6.743232250213623 -0.14832791686058044 0.15093375742435455 -0.31989437341690063 -2.137695550918579 -2.5954842567443848 -3.0948891639709473 -45.27558898925781 -37.33855438232422 -12.135371208190918 -20.808895111083984 -1.1390210390090942 -7.213108062744141 5.727407455444336 -39.777862548828125 -56.98463439941406 -4.503352642059326 -13.1982421875 -4.227923393249512 7.716638565063477 4.527050495147705 17.902746200561523 10.06411075592041 -25.294857025146484 -26.150876998901367 3.44897723197937 8.56743335723877 6.327578544616699 6.705029487609863 5.066154479980469 7.6088714599609375 -21.98024559020996 -9.487798690795898 -2.8744630813598633 3.6483516693115234 4.673777103424072 1.7012221813201904 6.957796573638916 9.272835731506348 -12.022377014160156 23.289464950561523 16.042545318603516 12.828560829162598 4.5668439865112305 2.1181302070617676 4.108912944793701 8.373539924621582 -26.19258689880371 23.702987670898438 28.690704345703125 13.631942749023438 5.375967025756836 0.6495781540870667 0.617121160030365 5.027598857879639 24.116487503051758 31.802446365356445 16.130680084228516 9.387236595153809 3.362042188644409 0.4175114035606384 2.1933329105377197 3.3807640075683594 -11.380287170410156 -5.447760105133057 -9.8426513671875 8.784761428833008 -2.0364327430725098 1.6303050518035889 1.9728738069534302 1.178022027015686 10.916733741760254", +"224 3.0164198875427246 0.2966005802154541 -5.7669548988342285 -6.888669490814209 -4.77314567565918 -0.3964683711528778 -1.8909075260162354 -0.8123752474784851 7.093013763427734 0.3730703890323639 -0.8085601925849915 -12.940381050109863 -2.1783580780029297 -0.5851707458496094 -2.3349924087524414 1.4750752449035645 4.551434516906738 1.6831862926483154 -2.284769058227539 -1.5046601295471191 -0.02084181271493435 -4.136952877044678 -1.329371452331543 2.255859136581421 10.151840209960938 2.0534915924072266 6.258975505828857 -3.8875086307525635 -0.019503233954310417 -4.5961737632751465 -2.2351295948028564 0.9802733659744263 4.468258857727051 3.378321409225464 2.064565420150757 7.71032190322876 1.1645195484161377 1.0454603433609009 0.8466182947158813 -2.1372201442718506 7.744808197021484 17.344676971435547 17.789583206176758 13.307209968566895 12.199907302856445 -12.015746116638184 -12.643887519836426 -9.03548526763916 -8.701722145080566 -9.187984466552734 -7.622776031494141 -7.888556957244873 -7.507430076599121 -4.234588623046875 -1.8490593433380127 -1.5492558479309082 -4.5973381996154785 1.209349274635315 -11.16121768951416 -0.0035317004658281803 -6.485627174377441 -0.8844224810600281 -5.728785037994385 -0.5240350365638733 3.02398681640625 -1.4973325729370117 0.5729924440383911 1.6014328002929688 4.06858491897583 -6.239936828613281 -3.9735116958618164 -6.564946174621582 -8.815781593322754 5.013711452484131 7.14085054397583 2.611767530441284 -0.6937083601951599 -1.943717122077942 -3.5586955547332764 3.6133017539978027 8.115911483764648 7.843709468841553 7.086670875549316 6.914841651916504 3.267678737640381 3.484503984451294 4.295675277709961 -2.6111133098602295 -2.17329740524292 6.051105976104736 8.805142402648926 14.0336275100708 5.710946559906006 7.87132453918457 9.6871976852417 6.633670330047607 26.02704620361328 21.60502052307129 6.3995280265808105 11.905378341674805 14.076316833496094 7.655045986175537 9.77777099609375 2.0284359455108643 17.42770004272461 36.55146026611328 9.71987247467041 30.904314041137695 1.269533395767212 -12.130182266235352 -9.1400146484375 -12.71049690246582 -3.2834548950195312 -4.2037506103515625 -5.762998580932617 -8.579568862915039 -2.44416880607605 -5.982834815979004 5.776732444763184 -7.16714334487915 -2.1396524906158447 4.017200946807861 0.3789714574813843 1.5813909769058228 5.060198783874512 2.985111951828003 -4.289058208465576 -1.798474907875061 4.82758903503418 3.4156694412231445 7.094829559326172 -6.548079490661621 5.595608234405518 0.05031772330403328 5.828836917877197 0.6288236379623413 3.1377456188201904 12.61455249786377 -1.418785810470581 7.515452861785889 1.0789369344711304 6.829152584075928 6.1922783851623535 3.1514742374420166 5.031782150268555 8.45666790008545 5.126900672912598 7.9371843338012695 2.0973706245422363 2.2924365997314453 9.041714668273926 0.429625004529953 2.867507219314575 10.006111145019531 14.280227661132812 -0.10024816542863846 4.907243251800537 1.1991639137268066 9.6986722946167 3.667316198348999 -11.627189636230469 6.94150447845459 -12.536917686462402 -17.88369369506836 -7.922464370727539 -11.259593963623047 -12.92894458770752 -30.104496002197266 -18.884164810180664 -9.514490127563477 9.565759658813477 -5.584681034088135 -8.444986343383789 -16.20524787902832 14.313732147216797 -20.038833618164062 -27.632801055908203 -3.2463364601135254 -2.862277030944824 -3.643684148788452 -4.673053741455078 -4.994814395904541 -11.724275588989258 -15.803848266601562 5.214876174926758 -9.947744369506836 -3.0727124214172363 -11.30273151397705 -4.016193389892578 -9.297947883605957 -5.390913009643555 -6.593869686126709 0.388706237077713 -6.598797798156738 -1.5295300483703613 -8.166666984558105 -3.4661407470703125 -8.658891677856445 -4.991604804992676 -6.042420864105225 -10.376800537109375 4.953439235687256 -0.07142680138349533 4.615115165710449 -5.033280372619629 -1.8632893562316895 -1.9455962181091309 0.8787442445755005 -5.71872615814209 20.752763748168945 5.717021942138672 2.7043099403381348 2.248906135559082 -3.230255126953125 1.5695154666900635 0.5956462621688843 -7.265492916107178 -8.604702949523926 -4.60331916809082 1.3371517658233643 -69.67164611816406 4.58687686920166 -1.8010499477386475 -1.7174242734909058 -6.190981388092041", +"224 14.664763450622559 6.59625244140625 9.70553970336914 3.0091817378997803 2.684814453125 -2.413519859313965 0.8465981483459473 -0.7392745614051819 16.215511322021484 6.4130473136901855 12.594364166259766 1.3891552686691284 5.01812219619751 1.5022839307785034 1.4839943647384644 -0.9756180047988892 13.259373664855957 6.2570343017578125 9.06954574584961 6.025463104248047 3.7689642906188965 2.559340476989746 2.584489583969116 0.19269517064094543 11.217524528503418 5.562187194824219 7.578968524932861 6.564199447631836 6.420434951782227 3.4494669437408447 5.133120059967041 3.023585081100464 9.400472640991211 4.13132905960083 4.277597904205322 10.88113784790039 9.471782684326172 14.21532917022705 2.9893341064453125 2.360215425491333 11.195799827575684 12.779500007629395 7.092275142669678 11.635526657104492 -18.22319221496582 11.039834022521973 9.196308135986328 4.180957317352295 -3.6010520458221436 -9.029695510864258 -10.885930061340332 4.5432257652282715 1.706648588180542 -0.46660932898521423 1.9912428855895996 2.944781541824341 -8.965457916259766 0.9846153855323792 1.5812902450561523 0.2880653440952301 -0.7341407537460327 -0.8319137096405029 0.3219395875930786 3.863924980163574 -3.401165008544922 0.6326150894165039 2.3429386615753174 3.753666400909424 1.7551683187484741 1.0872905254364014 1.3079087734222412 2.5976943969726562 -0.9870879650115967 -2.35398006439209 1.0827268362045288 2.675009250640869 2.7804267406463623 3.525545358657837 2.786787271499634 3.4531753063201904 -5.272953987121582 -4.282684803009033 -0.4291081130504608 2.037766695022583 5.528298854827881 5.798856735229492 8.50371265411377 9.656510353088379 2.1563913822174072 -7.10181999206543 3.206268787384033 1.2013980150222778 6.027410984039307 4.765254974365234 5.007219314575195 2.631013870239258 1.613644003868103 -9.304027557373047 1.2806508541107178 -0.2416205108165741 19.440814971923828 7.188391208648682 8.3652925491333 0.28770726919174194 48.30350112915039 2.12064266204834 7.632162570953369 24.0803165435791 28.472436904907227 -8.960217475891113 -1.032296895980835 8.285088539123535 -17.331905364990234 -37.23078536987305 -10.343416213989258 -12.671213150024414 -6.337007999420166 -1.713016390800476 0.07575853168964386 0.7830218076705933 -14.271484375 -16.534608840942383 -13.618988990783691 -6.576176166534424 -0.2985689043998718 -2.0713841915130615 3.4401402473449707 -3.5955045223236084 -10.493876457214355 -9.858165740966797 -17.649381637573242 -5.3551764488220215 -1.5129973888397217 -2.2087349891662598 -3.885211706161499 -3.596219301223755 -9.617536544799805 -8.75946044921875 -7.220200538635254 -3.81547474861145 -6.416090965270996 -3.047833204269409 -2.743957281112671 -3.1632370948791504 -7.938307762145996 -5.3416948318481445 -5.93992280960083 -4.497591018676758 -4.803165912628174 -3.0966153144836426 -4.061914443969727 -4.766606330871582 -5.6783318519592285 -6.01902961730957 -2.8665990829467773 -3.978459358215332 -4.175814628601074 -3.0402474403381348 -4.6910200119018555 -5.88343620300293 -24.555980682373047 -23.2132568359375 -16.684986114501953 -4.466676712036133 8.794076919555664 26.4364070892334 23.345088958740234 8.338028907775879 17.022817611694336 -33.09012985229492 -0.8647910952568054 -5.078954696655273 -2.0450119972229004 47.94717025756836 -3.05417799949646 -53.73691940307617 -14.257902145385742 -17.746442794799805 -38.039249420166016 -6.195457458496094 -2.038459300994873 -4.558357238769531 -1.2721861600875854 -3.246304988861084 -40.28358459472656 -9.096358299255371 -6.8601789474487305 -6.761205673217773 -4.486839294433594 -0.9646594524383545 -0.8510239720344543 -4.316266059875488 -0.7392858862876892 -5.775973796844482 -9.582655906677246 -3.5418448448181152 -5.437623023986816 -0.7276486754417419 0.8406692743301392 4.39174222946167 -2.966480255126953 -3.174612522125244 -1.996240258216858 -1.812954068183899 -2.2532269954681396 -0.012628061696887016 1.368599772453308 3.4611852169036865 1.10233736038208 0.9530386924743652 -0.5569828152656555 -0.7518761157989502 -2.0807340145111084 0.9110385775566101 2.8379883766174316 2.620786428451538 -2.447383403778076 -0.21359889209270477 4.252625465393066 -2.441800594329834 -0.5127552151679993 0.2533639669418335 3.4071340560913086 2.833631753921509 0.5480479598045349", +"224 -0.16450583934783936 -2.8488857746124268 0.531579315662384 -3.3310680389404297 2.6510009765625 3.8702898025512695 10.696054458618164 6.336765289306641 -0.13295266032218933 1.0885050296783447 -0.7455083727836609 1.8632313013076782 1.8777779340744019 3.1650493144989014 6.091358661651611 6.231986999511719 -1.527078628540039 2.285316228866577 -2.341015100479126 0.3384864628314972 -9.415396690368652 2.058717966079712 -1.4621191024780273 1.8114020824432373 -3.30804181098938 2.097761631011963 -0.6311102509498596 -5.700192928314209 -29.892419815063477 -8.258382797241211 3.2118868827819824 4.487014293670654 -10.579018592834473 -24.113258361816406 -0.4544529616832733 -10.049267768859863 -27.575992584228516 -18.699440002441406 -7.276327610015869 -7.571231365203857 -11.817622184753418 -10.607621192932129 -11.836411476135254 -19.3428955078125 -27.243640899658203 -19.351219177246094 -14.48373794555664 5.277821063995361 -23.125600814819336 -19.965713500976562 -2.358778953552246 -38.67888641357422 -2.116992473602295 -17.10005760192871 -7.619262218475342 -8.252670288085938 -18.264772415161133 -23.871280670166016 -11.181109428405762 -24.50996208190918 -15.495138168334961 -14.945993423461914 -9.163281440734863 -7.101771354675293 -33.41877365112305 -26.94191551208496 -30.688844680786133 -12.276705741882324 -20.451528549194336 -17.108186721801758 -14.110301971435547 -28.31775665283203 -25.268760681152344 -10.199603080749512 -22.812150955200195 -16.849138259887695 -10.24863052368164 -34.88544845581055 -17.708024978637695 -8.51933479309082 -4.172924995422363 -15.365827560424805 -25.447711944580078 -35.20553970336914 -22.163410186767578 -27.910099029541016 -23.493959426879883 -10.901961326599121 -3.366175413131714 -5.244650363922119 -4.491870403289795 -33.984439849853516 -34.98417282104492 -24.17487335205078 10.68832015991211 2.709003448486328 -6.017995357513428 -7.1155877113342285 -5.495791435241699 -5.508927822113037 -9.149971961975098 -7.526618480682373 -27.226211547851562 -1.4029093980789185 42.33674621582031 16.40289878845215 -8.9605073928833 6.7871479988098145 5.075422286987305 -20.601003646850586 -28.530263900756836 -12.258474349975586 10.860169410705566 1.6957085132598877 6.137977600097656 -0.20310671627521515 3.3256757259368896 22.11843490600586 25.299970626831055 4.922571182250977 -1.5323486328125 2.041350841522217 -4.283629417419434 7.850352764129639 0.18598572909832 -6.5681681632995605 -58.82829284667969 -9.253578186035156 4.685451984405518 -1.9860143661499023 2.4808292388916016 1.1904382705688477 3.851728677749634 6.28617525100708 -8.451031684875488 -1.595010757446289 3.7638094425201416 -2.6691339015960693 2.615102767944336 2.361440658569336 2.315606117248535 0.3883019685745239 4.773129940032959 5.186748027801514 4.235110282897949 -2.4763565063476562 2.247370719909668 1.957669973373413 -0.13689866662025452 -3.259411573410034 8.579069137573242 5.549832820892334 4.007953643798828 -1.920868992805481 2.277324914932251 0.6811816692352295 0.2654202878475189 -6.041085720062256 6.917941570281982 6.564641952514648 -6.00888204574585 -24.756317138671875 -15.477415084838867 -9.076321601867676 0.09972908347845078 7.939129829406738 -9.54641056060791 15.07630443572998 -19.99981689453125 -26.010427474975586 -15.348108291625977 -6.445406913757324 -13.609908103942871 -20.111412048339844 -11.438223838806152 -12.29516315460205 -20.100635528564453 -29.57805633544922 -15.012552261352539 -17.16611099243164 -23.666751861572266 -1.4748493432998657 -25.02885627746582 -36.66482162475586 1.0592830181121826 -3.6317672729492188 -14.178276062011719 -41.552459716796875 -2.9564783573150635 6.936154365539551 12.817965507507324 5.3854193687438965 -12.982917785644531 2.11331844329834 -1.5927881002426147 -28.819576263427734 -4.675405025482178 3.8935306072235107 9.484879493713379 0.5436668395996094 -15.414200782775879 -47.44388198852539 -1.4643274545669556 -31.90372085571289 -37.116722106933594 -4.3256707191467285 -3.08060884475708 -4.715751647949219 -30.091745376586914 -6.4028801918029785 -7.551713466644287 -9.032940864562988 -19.96590232849121 -10.878231048583984 -4.902433395385742 -6.123160362243652 -3.1132357120513916 -3.7699129581451416 -2.0957274436950684 -1.4703595638275146 -6.448004245758057 -8.991533279418945 -4.385342121124268 -7.270068645477295 -17.912015914916992", +"224 2.312403917312622 2.4234368801116943 2.147247552871704 3.6720945835113525 3.240229606628418 9.639501571655273 -8.118180274963379 4.688210487365723 -1.2269291877746582 3.062356948852539 -2.020829916000366 2.4229016304016113 -0.7510076761245728 4.132919788360596 18.277400970458984 0.8458070755004883 -0.27614888548851013 1.6643027067184448 -0.7256016731262207 0.4841037690639496 5.152802467346191 4.446294784545898 7.33534574508667 8.372679710388184 0.8707513809204102 4.549130439758301 0.31330859661102295 -0.7925567626953125 -1.9098830223083496 6.240405559539795 7.149508953094482 5.496922969818115 -1.0326086282730103 3.110506057739258 3.4584579467773438 2.0889878273010254 3.9613046646118164 1.3120614290237427 6.062037944793701 5.489004135131836 4.951206207275391 1.4834846258163452 2.122791051864624 3.19114351272583 6.003456115722656 7.686736106872559 1.2305371761322021 -1.482992172241211 21.756969451904297 12.494120597839355 14.863471031188965 -14.897847175598145 -2.097673177719116 -4.004400730133057 -1.8806629180908203 -2.190183639526367 14.976561546325684 5.440280914306641 -8.961657524108887 -10.549806594848633 -10.181395530700684 -1.9450424909591675 -7.178933620452881 -0.47385063767433167 -5.854808807373047 -2.2679924964904785 -6.9668121337890625 -9.014242172241211 -9.04918098449707 -7.978938579559326 -0.09771721810102463 -5.135416030883789 -12.831356048583984 -8.073816299438477 -7.955998420715332 -2.432070732116699 -2.5174560546875 -3.4988503456115723 -0.7756844162940979 7.5396528244018555 -0.49324676394462585 2.0536437034606934 1.4112956523895264 -3.1984214782714844 -3.668488025665283 0.03357406705617905 4.022033214569092 0.2350429743528366 10.38781452178955 -0.5253510475158691 -0.35653156042099 -5.628647327423096 -2.4629592895507812 -4.291560649871826 5.892035007476807 7.967947483062744 -4.742654323577881 -4.371339321136475 0.4288685917854309 -1.5159584283828735 -4.381874084472656 14.466371536254883 15.405682563781738 2.1917600631713867 -5.7524733543396 6.2744059562683105 0.844480037689209 -1.853898048400879 -0.892667829990387 -9.134790420532227 28.971582412719727 22.427034378051758 4.952091693878174 1.583530068397522 2.4056460857391357 -11.732986450195312 -18.255596160888672 -12.986164093017578 30.006153106689453 -10.675054550170898 -2.6837246417999268 -2.746677875518799 -9.306695938110352 -9.21368408203125 -26.228235244750977 -6.121411323547363 -13.481949806213379 -10.476225852966309 -1.8006415367126465 -2.0478339195251465 -1.9748510122299194 -2.5037946701049805 -4.826867580413818 -21.596588134765625 -10.641819953918457 -12.902718544006348 -0.8554462790489197 -2.3813490867614746 -0.49098023772239685 -2.711444616317749 -3.8557322025299072 -6.575720310211182 -8.870219230651855 -9.856147766113281 0.9625755548477173 1.0404539108276367 -0.856188952922821 -1.3901512622833252 -3.048374652862549 -5.5091328620910645 -5.272990703582764 -8.906102180480957 0.7990343570709229 -0.6377286314964294 -0.2585340440273285 -1.066951036453247 -2.312560558319092 -3.171635627746582 -4.47499942779541 -6.323805809020996 -31.892290115356445 8.894558906555176 7.847066402435303 6.343511581420898 22.957426071166992 19.269256591796875 19.522371292114258 35.28902816772461 -2.472350835800171 5.637324333190918 12.833708763122559 10.631355285644531 26.31034278869629 1.0758728981018066 36.49662780761719 37.010841369628906 15.287242889404297 16.06858253479004 11.739551544189453 9.991331100463867 7.989529132843018 31.402137756347656 20.079233169555664 -2.209036111831665 10.246965408325195 5.197873592376709 9.2654390335083 2.7518625259399414 1.8710731267929077 -4.33959436416626 0.5598093867301941 -6.871757507324219 11.249716758728027 7.070987224578857 4.381680011749268 0.6419535279273987 -4.618088722229004 -6.396016597747803 -7.245532035827637 -6.910234451293945 12.37212085723877 4.585391998291016 5.735060214996338 -1.8164223432540894 -3.343712568283081 -5.148409843444824 -4.789089679718018 -4.771548271179199 0.13986210525035858 -1.7503514289855957 2.158907890319824 2.012606143951416 -1.3257429599761963 -5.423397064208984 -5.054533004760742 -3.879533529281616 -4.999682426452637 -5.254763603210449 -5.780905723571777 6.161837100982666 -2.16719388961792 -4.225849151611328 0.09149474650621414 0.23993130028247833 -2.9564499855041504", +"224 1.767928957939148 0.6952603459358215 0.9764147996902466 -9.602999687194824 2.6675009727478027 -3.3999502658843994 -1.2144355773925781 -0.8051379919052124 2.3684585094451904 -1.4408881664276123 -1.789029836654663 -1.3482766151428223 -4.9221062660217285 -7.021476745605469 -2.625201940536499 1.1983360052108765 0.6444634199142456 -1.0154528617858887 -0.45554354786872864 -13.210341453552246 -8.38768196105957 -7.248408794403076 -3.140352964401245 2.9795215129852295 -0.9189464449882507 0.4407399594783783 -0.12794841825962067 -6.282691955566406 -6.340043067932129 -7.905365467071533 -1.6572331190109253 2.624030828475952 2.4625446796417236 3.8380210399627686 -0.9477261304855347 -4.079781532287598 3.148855686187744 -9.072999954223633 -0.24261051416397095 13.189284324645996 7.260059833526611 2.9710450172424316 1.3488731384277344 0.004338413011282682 4.819097995758057 -9.193704605102539 -13.954437255859375 -2.436856746673584 -14.195991516113281 -9.226458549499512 1.2523804903030396 -10.346293449401855 4.4561028480529785 0.9629812240600586 0.2526055574417114 2.0546646118164062 5.788356304168701 3.4509942531585693 -2.5880966186523438 3.3934717178344727 -1.1981922388076782 -7.074151992797852 -1.3800337314605713 2.605755567550659 3.304960250854492 1.6792367696762085 0.8365713953971863 3.6231977939605713 -5.016034126281738 -1.85759699344635 -0.5048516392707825 3.4662058353424072 2.2283270359039307 1.9210923910140991 2.0698747634887695 -2.3042595386505127 7.168537139892578 -3.965975046157837 0.513427197933197 -1.2332650423049927 -1.9945234060287476 -12.64242172241211 -6.650287628173828 -3.1521637439727783 2.984588623046875 -7.781325817108154 -1.9691660404205322 -11.731379508972168 2.216183662414551 -7.887045383453369 -13.771708488464355 -13.297979354858398 -8.505266189575195 -3.9723308086395264 -5.529367446899414 -24.250917434692383 -0.8594197034835815 -1.3610445261001587 -11.593034744262695 -11.327701568603516 -57.87153244018555 -8.466106414794922 -1.1195311546325684 -56.197017669677734 -7.569046497344971 6.164050579071045 -3.2919273376464844 -12.08299446105957 -14.423452377319336 -7.437140941619873 -65.93746948242188 13.764071464538574 5.67516565322876 -36.1872673034668 -33.07516860961914 -34.316932678222656 -19.930744171142578 -13.68995189666748 -40.76530456542969 -8.954837799072266 0.3739660084247589 -1.4952081441879272 2.3766143321990967 -0.885023295879364 7.716630458831787 2.0802605152130127 6.2381415367126465 -5.714637756347656 3.7020654678344727 1.1414309740066528 5.619997501373291 5.015244483947754 34.76662063598633 -21.483089447021484 10.541522026062012 -0.8221489191055298 3.9669370651245117 2.2869412899017334 7.832747459411621 -3.4547507762908936 5.176235675811768 -17.59975242614746 2.798868417739868 0.09980540722608566 1.5785812139511108 5.328124046325684 0.031612690538167953 8.937052726745605 1.2190732955932617 2.9826791286468506 0.948307991027832 -2.045893907546997 1.6599469184875488 4.170719146728516 3.3258132934570312 4.2202863693237305 -0.1298145204782486 6.360462665557861 3.2269904613494873 -1.9617595672607422 22.90279769897461 -45.761539459228516 -24.102462768554688 -43.75604248046875 -27.25738525390625 -23.45685386657715 25.56517219543457 55.565704345703125 -3.950300931930542 -17.133216857910156 -60.4339599609375 -49.99812698364258 -38.43759536743164 7.267615795135498 -19.058238983154297 -37.97418212890625 -13.570135116577148 -25.182762145996094 -26.765836715698242 -58.19804000854492 -56.124847412109375 -58.43558120727539 -70.41310119628906 -18.196847915649414 9.795768737792969 -7.159696578979492 -16.654298782348633 -3.654242515563965 0.8625906705856323 -23.58254051208496 -18.74459457397461 -7.058389663696289 -2.4147536754608154 6.044702053070068 3.6697330474853516 1.7449208498001099 -6.3759965896606445 -10.7708158493042 -7.99292516708374 8.237728118896484 -20.598388671875 2.399249792098999 -1.3309235572814941 0.9097192883491516 0.24700404703617096 -1.995776653289795 -0.3234345018863678 0.061149027198553085 1.26915442943573 2.4687399864196777 -1.1536253690719604 3.4814298152923584 3.0713891983032227 1.1000605821609497 4.391134738922119 -1.1867902278900146 5.3090128898620605 8.542157173156738 2.4154958724975586 3.3628954887390137 -1.3038488626480103 4.056680679321289 2.3465888500213623 -0.6351777911186218 -0.23849734663963318", +"224 -1.2512165307998657 0.8059862852096558 -0.8410018086433411 2.343109607696533 1.0031079053878784 18.23954963684082 2.5071728229522705 1.1302766799926758 -1.7555445432662964 0.15483234822750092 -1.913376808166504 1.4309515953063965 2.5829946994781494 3.1573915481567383 3.140437602996826 2.03432297706604 -0.6110385656356812 -0.6977066397666931 -2.459458589553833 -0.19692040979862213 -3.9540467262268066 -0.22476603090763092 1.1452641487121582 3.2258076667785645 0.5240632891654968 -1.8731896877288818 0.14616937935352325 0.6540198922157288 6.825747966766357 0.9368000030517578 0.19298280775547028 3.667067527770996 2.4988327026367188 3.1008853912353516 -1.2058523893356323 -1.4839603900909424 -0.4518860876560211 3.0230190753936768 4.377790451049805 7.229189872741699 -4.733882427215576 -2.953997850418091 -3.1498801708221436 -13.34144401550293 0.5391094088554382 -15.790924072265625 0.30906394124031067 13.741181373596191 5.978663921356201 9.331501007080078 7.937276363372803 0.012423019856214523 4.5437235832214355 9.128011703491211 4.1313090324401855 4.625901222229004 6.78655481338501 5.503190040588379 3.1618785858154297 8.349896430969238 4.301258563995361 4.340489864349365 4.5436906814575195 4.123408794403076 -1.3287001848220825 3.136120080947876 6.051644802093506 4.334226608276367 3.267721176147461 1.3237855434417725 4.509573459625244 2.9412992000579834 -0.6392723917961121 5.238680839538574 3.6716699600219727 5.225869655609131 5.453675270080566 5.192331314086914 5.546173572540283 5.745057106018066 9.2998046875 -0.9424578547477722 9.017840385437012 6.7816596031188965 6.153589248657227 11.532808303833008 11.478090286254883 1.5656991004943848 -1.8420500755310059 3.873265027999878 -5.23482608795166 6.028879642486572 12.849555015563965 20.246374130249023 -12.391486167907715 13.423998832702637 9.370111465454102 8.246712684631348 15.412349700927734 19.797866821289062 9.974164962768555 21.196985244750977 20.411970138549805 1.793748378753662 32.69815444946289 -5.768958568572998 8.459342002868652 13.644488334655762 2.8333356380462646 20.645034790039062 9.064249038696289 -2.9946842193603516 1.1679171323776245 -5.112325191497803 -17.610713958740234 -5.813117504119873 -6.060691833496094 -5.290283203125 19.490581512451172 -4.041639804840088 -2.7792563438415527 -5.003499507904053 -5.042535781860352 -6.029228687286377 -8.081869125366211 4.322056293487549 -4.622406005859375 -2.9560279846191406 -0.8246048092842102 -3.003652811050415 -0.37877440452575684 -3.488882541656494 -2.078368663787842 -4.226442813873291 -0.9863132238388062 -2.2237696647644043 -1.4459127187728882 -1.7048439979553223 0.6021916270256042 -17.65532112121582 -2.672985315322876 -4.590215682983398 -2.8140814304351807 -4.526788234710693 -0.3920179605484009 -3.707568407058716 0.6645835638046265 -2.3644113540649414 1.6786702871322632 -4.96851921081543 -3.6637449264526367 -4.362521648406982 -1.3070135116577148 -2.620091199874878 -1.621477484703064 -5.639564037322998 0.44355979561805725 -5.108211040496826 -4.643287181854248 -4.228517532348633 17.970613479614258 -2.247420310974121 19.327716827392578 16.631711959838867 -3.1648612022399902 12.826105117797852 29.829940795898438 43.42232131958008 0.40050214529037476 10.163610458374023 -12.475639343261719 -3.9668521881103516 9.823904037475586 16.263708114624023 10.917343139648438 34.08673095703125 -19.08234405517578 -3.827064275741577 -9.631813049316406 -4.013045310974121 -8.540207862854004 -4.101377010345459 -4.591717720031738 9.241695404052734 2.9874916076660156 -4.621244430541992 0.8916220664978027 4.202974796295166 0.40910306572914124 -3.7833943367004395 2.6266086101531982 22.361608505249023 -1.6385743618011475 22.987369537353516 5.742661952972412 -1.8285061120986938 1.3480441570281982 -0.22165055572986603 5.960813522338867 11.886640548706055 14.089019775390625 3.2884926795959473 13.222911834716797 8.282358169555664 2.069960594177246 2.5759568214416504 3.785841703414917 7.595263957977295 1.3290369510650635 22.568178176879883 1.341087818145752 4.174805164337158 2.8587863445281982 3.1500155925750732 5.047169208526611 3.992086172103882 15.019813537597656 6.064932346343994 5.598104000091553 -2.3305842876434326 4.575058460235596 2.5151238441467285 3.912672758102417 6.5165605545043945 18.707292556762695", +"224 -0.9850701689720154 0.5714504718780518 -3.5245070457458496 -9.663063049316406 -65.6986083984375 -0.6575580835342407 -2.5597167015075684 -3.6336278915405273 -1.0940603017807007 -2.340874195098877 -0.26928064227104187 -5.5258402824401855 -55.448028564453125 -6.67996072769165 -1.478089690208435 -2.100031852722168 -0.04135355353355408 2.038517713546753 -7.967618465423584 -2.39302134513855 -0.2999331057071686 -3.1479034423828125 -0.3152608275413513 -3.0946075916290283 2.8431105613708496 -1.484134316444397 1.4500925540924072 -1.6366980075836182 -4.089966297149658 -0.3262285590171814 0.45584678649902344 0.8053033351898193 1.572086215019226 7.422042369842529 6.704902648925781 8.497137069702148 6.652042865753174 8.088203430175781 6.0180768966674805 3.429612159729004 16.259668350219727 4.965999603271484 9.125204086303711 14.771341323852539 13.703845977783203 13.058635711669922 0.3713666498661041 16.1776065826416 -7.291151523590088 -0.9675750136375427 -15.328392028808594 -8.939711570739746 -4.763874530792236 -0.5466418266296387 -2.0565507411956787 0.8808338642120361 -8.214686393737793 -10.96583080291748 -4.059574127197266 -8.967133522033691 -3.7380595207214355 -4.4864420890808105 0.09426507353782654 0.3435005843639374 -23.373271942138672 -11.351746559143066 -6.342899322509766 -7.2102789878845215 -4.754579544067383 -4.774566173553467 -6.470950126647949 -2.0270113945007324 2.3589797019958496 -12.013065338134766 -6.590883731842041 -7.877633571624756 -7.363381862640381 -3.8404664993286133 -6.327574253082275 -2.528733491897583 5.577646732330322 0.014240389689803123 -1.4980740547180176 -0.6734222769737244 -1.4489527940750122 2.102513074874878 -2.810208559036255 -31.214820861816406 10.003979682922363 7.629142761230469 5.2476487159729 4.614020824432373 2.0772573947906494 0.8541516661643982 -2.1915524005889893 0.849428117275238 15.989290237426758 13.696860313415527 10.884613037109375 6.490594387054443 -2.743238687515259 -2.0180230140686035 8.50083065032959 -36.76118087768555 -19.8977108001709 13.430084228515625 9.788705825805664 25.587419509887695 6.800003528594971 15.46468448638916 23.506793975830078 3.4555773735046387 0.41348859667778015 2.908566474914551 -15.80610466003418 2.213843822479248 -5.379220962524414 1.2776416540145874 -28.346406936645508 9.583181381225586 5.103312969207764 6.364266872406006 4.709791660308838 -1.320321798324585 -4.3331756591796875 13.082507133483887 -1.4869158267974854 3.9058663845062256 5.175246238708496 10.317145347595215 4.774172306060791 23.511940002441406 -59.36674880981445 16.51218605041504 -4.436639308929443 4.232273578643799 4.6388163566589355 8.680550575256348 9.331110954284668 13.684874534606934 5.536801815032959 5.4255242347717285 4.904666423797607 2.3899030685424805 4.857539176940918 5.875502586364746 7.38029146194458 8.718600273132324 3.50614070892334 2.722849130630493 3.970085382461548 3.2169864177703857 4.193150997161865 4.802713871002197 3.0256474018096924 8.285390853881836 4.527688503265381 1.8070002794265747 4.4228010177612305 2.5422098636627197 4.268923282623291 -17.25275421142578 18.664756774902344 -30.674543380737305 1.7749764919281006 -36.08633804321289 -30.19382095336914 30.999107360839844 -3.930103302001953 -43.28779220581055 -41.78025817871094 2.9225361347198486 -47.60127258300781 -4.685623645782471 -14.182488441467285 30.815221786499023 3.075347900390625 -43.543731689453125 -27.32723045349121 -24.832935333251953 -21.35919189453125 -34.7430534362793 -24.24984359741211 -7.141595840454102 -30.813968658447266 -21.054706573486328 -31.878507614135742 -3.1870005130767822 -7.755882263183594 -11.006537437438965 -28.657512664794922 -10.575984954833984 -4.647933006286621 -10.232417106628418 -6.491678714752197 -9.38139533996582 -8.450358390808105 -12.03277587890625 -12.383867263793945 -11.648418426513672 -13.110654830932617 -3.88820481300354 -4.949793338775635 -3.5140163898468018 -8.181864738464355 -8.702125549316406 -8.489909172058105 -1.2966294288635254 1.1225818395614624 -4.976489067077637 -4.87119722366333 -3.0488526821136475 -7.198409557342529 -6.461775779724121 -6.07659387588501 -0.458129346370697 3.546367883682251 2.220538377761841 1.8835283517837524 3.8634033203125 -7.491908073425293 0.3828907608985901 2.1103909015655518 2.3754091262817383 -10.165726661682129", +"224 -3.757552146911621 -3.817312717437744 -5.011007785797119 -3.800143003463745 -2.8274664878845215 0.8845115303993225 -0.0011760906782001257 -0.8934561610221863 -2.066049098968506 -3.6955039501190186 -1.7253350019454956 -1.3956314325332642 -3.7695930004119873 -3.0757126808166504 19.502429962158203 -4.8287882804870605 -1.5734052658081055 -2.76037335395813 -1.4647568464279175 -2.0750529766082764 -4.102502822875977 -2.86265230178833 -10.008735656738281 -3.5911717414855957 -3.4812493324279785 -3.925147771835327 -3.839672803878784 -2.4705326557159424 -2.998112916946411 -10.654802322387695 -9.191779136657715 -4.718234062194824 -3.0381228923797607 -5.96596622467041 -5.28208065032959 -7.757699489593506 -3.206110715866089 -11.75622272491455 -4.712017059326172 -6.434823036193848 -9.854625701904297 -5.432551383972168 -11.71493911743164 -12.716791152954102 -3.5169589519500732 -12.094541549682617 -25.21070098876953 -25.5185489654541 -25.45417594909668 -19.937591552734375 -18.85451316833496 2.797245502471924 1.60873544216156 -0.33950376510620117 -5.538362503051758 -3.7344815731048584 -14.521568298339844 -7.361505031585693 -0.3997993469238281 2.1679086685180664 -0.17286989092826843 1.0694646835327148 -0.5677376389503479 -2.9285976886749268 2.160074234008789 -4.649204730987549 1.1811026334762573 -2.5048112869262695 -0.25733211636543274 -2.9354326725006104 -2.760138988494873 -3.503307580947876 -3.268296957015991 0.8503074645996094 -2.2933168411254883 -3.0161032676696777 -3.791229724884033 -6.136178493499756 -11.424063682556152 -14.895454406738281 -8.080596923828125 -7.1780781745910645 -5.921445369720459 -4.587514400482178 -6.166511535644531 -6.259897708892822 -8.914944648742676 0.9700861573219299 -37.33641815185547 -6.149346828460693 -5.176825523376465 -2.371016263961792 -7.033182144165039 -9.019420623779297 -27.53803253173828 -26.127666473388672 -24.134695053100586 -2.617828369140625 -17.89803695678711 9.509851455688477 0.04984085634350777 -12.068854331970215 -24.04531478881836 -11.735369682312012 -28.051851272583008 -19.62217903137207 -0.1385473757982254 -18.65485954284668 -5.252577781677246 -12.963712692260742 2.0864505767822266 -16.613088607788086 1.340576410293579 2.1810805797576904 -1.3071889877319336 17.404808044433594 15.175832748413086 11.271517753601074 -29.173959732055664 5.477901935577393 2.868772029876709 5.160630702972412 8.072345733642578 11.776812553405762 9.974815368652344 3.8286001682281494 -55.847835540771484 5.120980262756348 3.149080514907837 5.362595081329346 3.373345375061035 3.7496144771575928 2.627450466156006 -11.997612953186035 8.417580604553223 -24.915884017944336 3.4652445316314697 4.7345662117004395 4.182929039001465 4.66310453414917 5.408862590789795 6.276474475860596 4.80604887008667 7.418396472930908 2.531883478164673 1.89645254611969 3.8650424480438232 3.4348251819610596 4.477987289428711 6.030762195587158 6.815940856933594 6.86167049407959 2.918126344680786 5.309181213378906 4.588204860687256 6.568048477172852 5.641542911529541 4.1977996826171875 5.6589508056640625 6.78101110458374 -2.7688333988189697 -37.211219787597656 -38.27461624145508 -41.537540435791016 -29.857540130615234 -21.909414291381836 -22.611513137817383 53.07952880859375 -15.755393028259277 -16.647302627563477 -12.505802154541016 -41.226654052734375 -34.19175720214844 -30.73863983154297 -30.23168182373047 -18.267784118652344 -16.72734260559082 -17.5837345123291 -38.4676513671875 -10.804793357849121 -28.817686080932617 -5.765098571777344 -4.0156402587890625 -3.406428337097168 -5.277993679046631 -10.633103370666504 -6.252898693084717 -9.303772926330566 -0.4549516439437866 -2.3032636642456055 -0.7716916799545288 -4.7886643409729 -10.405904769897461 -8.97241497039795 -9.597565650939941 -2.0063838958740234 -0.526844322681427 0.7928412556648254 0.10879337042570114 1.8026546239852905 -23.20282554626465 -8.778762817382812 -7.855897426605225 -2.3063695430755615 -3.2614939212799072 -0.46836358308792114 -1.7017431259155273 -5.145134925842285 -5.938276767730713 -2.0444493293762207 -6.497934818267822 -5.738210678100586 -4.259622573852539 -1.4185343980789185 -1.6586307287216187 0.1057196706533432 -4.005824089050293 0.3147808611392975 1.6240907907485962 -11.023054122924805 -2.3293519020080566 -3.289905548095703 -4.511231422424316 -3.7001841068267822 -11.926695823669434", +"224 1.1013884544372559 4.639261722564697 0.7147215604782104 10.082934379577637 2.8461997509002686 0.5809282660484314 0.8076100945472717 1.1206907033920288 0.4583830237388611 3.8350508213043213 4.981327533721924 -10.01183795928955 -2.0347015857696533 2.122220754623413 -2.199355363845825 0.7683027386665344 4.118560791015625 0.7588980793952942 3.462677478790283 14.58228588104248 2.4634547233581543 -12.011866569519043 -2.4234225749969482 -0.9875463247299194 4.443057537078857 -0.030869754031300545 8.710047721862793 4.248626708984375 -61.27634811401367 -9.246101379394531 -1.5027966499328613 2.217374563217163 6.576797962188721 9.649869918823242 0.6728206872940063 -1.176695466041565 -3.4882900714874268 -10.32258129119873 -11.748135566711426 -2.7774112224578857 -4.9068427085876465 1.711024284362793 -10.893990516662598 -17.28252601623535 -5.773526668548584 -19.22711944580078 -81.65550231933594 -1.282551646232605 3.9895479679107666 -4.721955299377441 -3.9024837017059326 0.5156969428062439 -2.0624146461486816 -0.9587844014167786 2.9503839015960693 1.333209753036499 3.157180070877075 7.596034526824951 2.34246563911438 -2.8506901264190674 -1.775223731994629 -1.8858171701431274 -1.6275616884231567 0.9272884726524353 -1.897765874862671 4.993328094482422 -9.471318244934082 1.3657114505767822 -5.35924768447876 0.41453516483306885 -8.887383460998535 -1.011083960533142 10.295881271362305 2.599644422531128 0.6338692307472229 6.5960259437561035 7.078091621398926 1.7421190738677979 -1.9179134368896484 -26.975004196166992 4.450586318969727 10.250837326049805 9.405028343200684 11.753670692443848 7.148592948913574 5.433238983154297 0.06366080790758133 -9.428241729736328 4.876324653625488 10.66745376586914 7.535501003265381 10.191001892089844 11.486783981323242 -4.610377311706543 -2.5425922870635986 -7.995506763458252 11.325448036193848 0.8590419292449951 11.634806632995605 0.09873548895120621 -32.53691482543945 -19.40165138244629 -18.59868812561035 -34.178836822509766 68.8956527709961 -6.249536991119385 -1.88766348361969 -23.785404205322266 -59.17331314086914 -6.340171813964844 1.1458784341812134 -37.86552429199219 -8.555083274841309 33.5107421875 -5.593954563140869 8.84544849395752 -109.50020599365234 -7.83172082901001 -7.707878112792969 7.744948863983154 -4.585292816162109 1.7991329431533813 2.5350449085235596 -4.590184688568115 -10.035750389099121 -13.0292387008667 -4.303292274475098 -26.677064895629883 -9.909461975097656 -2.181915283203125 -0.6931594610214233 -14.097251892089844 -5.308926582336426 -7.667020320892334 -3.2645905017852783 -1.4517502784729004 -3.880068063735962 -4.779407501220703 0.060004327446222305 -8.9736967086792 4.123859405517578 -8.550037384033203 1.5986120700836182 -2.1281683444976807 -6.717375755310059 -3.8505523204803467 -5.466722011566162 -3.6833369731903076 3.9341847896575928 0.31019750237464905 1.498154640197754 5.706326007843018 -5.455071449279785 -2.0051701068878174 -4.130358695983887 -8.347578048706055 10.498286247253418 -3.7897541522979736 -2.1742026805877686 2.2739765644073486 -44.12052917480469 -49.77484130859375 8.087549209594727 -9.869973182678223 86.96598815917969 6.480566501617432 -59.62241744995117 1.483262300491333 -48.28470993041992 17.7938289642334 -39.67290115356445 12.605415344238281 7.162961006164551 15.180816650390625 -14.872840881347656 -56.67040252685547 -66.9284439086914 -3.5897185802459717 17.569534301757812 -4.258122444152832 2.6478967666625977 -2.5850820541381836 -12.893671035766602 -30.173826217651367 4.739252090454102 15.139688491821289 -22.63465690612793 0.1355622410774231 -0.7562858462333679 -4.4728288650512695 -5.270807266235352 1.5944676399230957 -1.726012110710144 3.9712183475494385 -21.55215835571289 2.080106735229492 -2.296842336654663 -6.667906284332275 -3.49822735786438 2.719616651535034 -5.272165298461914 -19.641422271728516 -5.833644390106201 -4.156466007232666 0.9525479674339294 -2.1091856956481934 -0.5908433794975281 -2.578169584274292 -8.458701133728027 -1.0905015468597412 -19.959362030029297 -7.549506187438965 0.4561961591243744 0.6367545127868652 -1.9615391492843628 -0.78995281457901 -18.88895606994629 4.433312892913818 -2.191160202026367 2.5215375423431396 6.236981391906738 -0.4015505313873291 4.399896621704102 0.0338975228369236 0.9094932675361633", +"224 -6.625098705291748 -1.2352129220962524 -9.64620304107666 -4.0016374588012695 0.46023523807525635 -1.500805139541626 -3.847430467605591 -1.6924796104431152 -8.879595756530762 -0.12730246782302856 -8.236896514892578 1.721801996231079 -2.662156820297241 -0.5945410132408142 -5.623407363891602 -2.6775166988372803 -11.295510292053223 -0.5137212872505188 -7.568753719329834 -0.6700901389122009 -3.757639169692993 -3.047081470489502 -3.071235179901123 -2.122436761856079 -55.41263198852539 -1.5260268449783325 -6.943670749664307 -1.511491060256958 -4.354549407958984 -3.529470205307007 -6.2214179039001465 -0.6549707055091858 -28.92361068725586 -2.838986396789551 2.057793617248535 4.060897350311279 11.917327880859375 -14.091517448425293 0.7665297389030457 -12.834029197692871 -63.7631950378418 17.611900329589844 1.5886274576187134 7.3884172439575195 -16.4356689453125 19.000322341918945 -1.5288726091384888 1.3639973402023315 3.2871272563934326 -13.286701202392578 -2.2880196571350098 4.814727783203125 2.2374675273895264 -0.3334065079689026 3.2053334712982178 -1.862862229347229 9.014581680297852 3.5615243911743164 4.189263343811035 1.0276551246643066 1.6680008172988892 0.17955641448497772 0.9721551537513733 3.3146274089813232 7.694035530090332 6.346725940704346 4.385682582855225 2.3427200317382812 4.083660125732422 3.865241765975952 2.3279058933258057 1.6833488941192627 9.498185157775879 6.6645073890686035 5.2493109703063965 5.4885029792785645 2.565247058868408 2.6108486652374268 2.179868459701538 6.228151798248291 -23.76272201538086 5.785379886627197 4.763307094573975 3.4435715675354004 0.34293314814567566 4.940334796905518 0.0037372380029410124 11.448700904846191 -4.575882434844971 7.679502010345459 10.153331756591797 -51.9405632019043 3.0751733779907227 2.1747193336486816 18.598434448242188 2.2606236934661865 -14.138261795043945 32.51074981689453 -16.131790161132812 4.040060520172119 -33.310585021972656 5.637505531311035 1.1474965810775757 10.660247802734375 -39.1353759765625 -25.43707847595215 -13.125749588012695 -16.831449508666992 14.264827728271484 -18.984357833862305 11.385117530822754 -14.52712631225586 -16.42015266418457 -6.432849884033203 -41.41676712036133 -25.19925880432129 -10.29792594909668 -0.6748383641242981 -14.752586364746094 4.314474105834961 -7.407675743103027 -11.813934326171875 -25.875574111938477 -9.663763046264648 -0.8822078108787537 -8.604872703552246 -6.161816596984863 -3.2668397426605225 -3.743373155593872 -9.660649299621582 -21.776878356933594 -2.1110951900482178 5.847033977508545 -3.4506285190582275 -1.2194379568099976 -1.8197354078292847 -1.6061043739318848 -17.67289924621582 0.48543742299079895 -0.7147152423858643 4.87277364730835 1.9303017854690552 1.8632287979125977 0.3398960530757904 -4.5261406898498535 11.007474899291992 4.733248233795166 1.4215857982635498 3.484621524810791 3.117891550064087 4.720680236816406 1.624811053276062 0.0707741230726242 11.956286430358887 6.492534637451172 4.22019624710083 6.360703945159912 2.7379794120788574 3.5530219078063965 2.130805730819702 -32.726585388183594 -43.690025329589844 -15.035675048828125 -30.44373321533203 -45.20653533935547 -9.527379989624023 -15.878785133361816 36.928802490234375 -4.605892658233643 -37.745582580566406 -32.52198028564453 -6.634902000427246 -2.8466598987579346 9.703864097595215 -6.079437732696533 -5.726907730102539 -20.81159019470215 -21.43890380859375 -8.442544937133789 -0.8998291492462158 1.9345507621765137 2.4865121841430664 1.7744766473770142 7.829249858856201 -9.153704643249512 -28.883737564086914 -7.149326801300049 0.6820386648178101 -1.5956085920333862 -0.32397595047950745 -0.0816350057721138 -1.416490912437439 -6.373903751373291 -9.821187973022461 2.1349399089813232 0.4539759159088135 1.1408891677856445 -2.2450554370880127 -0.5318781733512878 -0.3855247497558594 -6.582420349121094 -1.1147027015686035 -3.6741981506347656 2.076220750808716 0.7220401167869568 1.637961983680725 1.3811275959014893 -6.355965614318848 -16.659452438354492 -1.4456833600997925 -3.8499372005462646 -0.24584950506687164 3.5560662746429443 1.8399689197540283 0.41238194704055786 -2.7459118366241455 -12.461276054382324 -2.274043083190918 -39.463897705078125 3.3290655612945557 14.752741813659668 5.3246259689331055 0.10190435498952866 0.5445971488952637 4.713904857635498", +"224 6.651699066162109 8.131047248840332 7.514216423034668 6.742273330688477 7.105228900909424 8.554376602172852 8.290968894958496 5.695622444152832 7.058032989501953 8.254281044006348 7.997281074523926 7.434168815612793 7.701473712921143 8.121746063232422 8.703335762023926 6.5999274253845215 6.72907829284668 8.52783489227295 8.170039176940918 7.456986427307129 8.144612312316895 7.681539535522461 8.750388145446777 6.75079345703125 6.561195373535156 6.365750312805176 7.174828052520752 8.246807098388672 8.900288581848145 8.384954452514648 8.228255271911621 5.657655715942383 5.022195816040039 4.188798904418945 6.331317901611328 7.468384742736816 8.12729263305664 8.533376693725586 2.337589979171753 3.5246050357818604 -7.248073101043701 3.787076950073242 -3.6975183486938477 4.646454811096191 -9.83664608001709 -0.6212300658226013 1.2904859781265259 8.891222953796387 -2.196103811264038 -1.7756685018539429 -1.9435124397277832 1.8050291538238525 -1.7500462532043457 -0.568267285823822 -2.1403870582580566 -3.008364677429199 -3.5409035682678223 -0.21018773317337036 0.08023549616336823 0.511461615562439 0.6855814456939697 -0.568800151348114 -0.8575233221054077 -1.8070534467697144 -2.348296880722046 -0.09466367214918137 1.7317382097244263 1.1087524890899658 0.3952154815196991 -0.7728299498558044 -0.7257561087608337 -0.7264937162399292 2.068324089050293 0.08871805667877197 1.8940246105194092 1.582991361618042 0.3553633987903595 -0.18067067861557007 -0.43564900755882263 -1.6747562885284424 -0.8019208312034607 1.6801345348358154 3.3894059658050537 4.983596324920654 5.236208438873291 0.8199245929718018 2.2184319496154785 0.2410014122724533 -3.588156223297119 4.988376617431641 4.748919486999512 6.721990585327148 9.95297622680664 4.605332851409912 2.155458927154541 1.5039182901382446 7.443640232086182 8.049917221069336 10.22047233581543 7.485077381134033 10.935233116149902 9.7014741897583 7.47561502456665 -2.1253585815429688 12.57322883605957 4.232996940612793 12.713345527648926 11.472088813781738 10.506186485290527 -6.388439178466797 1.7401210069656372 -9.590024948120117 -5.28072452545166 -11.069286346435547 -2.5219221115112305 -9.428269386291504 -10.272997856140137 -33.13190460205078 -12.158267974853516 -10.886240005493164 -5.732827186584473 -7.786883354187012 -6.967537879943848 -7.548105716705322 -7.094709396362305 -5.594730854034424 -7.626826763153076 -7.715339183807373 -5.9706573486328125 -6.965053558349609 -7.051577091217041 -7.12232780456543 -8.10621452331543 -7.697226524353027 -8.470922470092773 -7.008072853088379 -5.926755428314209 -6.225994110107422 -6.78581428527832 -5.959729194641113 -7.522694110870361 -8.079997062683105 -7.214620590209961 -6.8654375076293945 -5.243767261505127 -5.538365364074707 -5.8298516273498535 -7.232614994049072 -5.613158226013184 -7.220731258392334 -6.209280967712402 -6.65420389175415 -5.1355438232421875 -5.954264163970947 -6.218192100524902 -6.320444583892822 -6.187755107879639 -7.032103061676025 -6.035931587219238 -6.756367206573486 18.130271911621094 -0.4847342371940613 7.301957607269287 19.128803253173828 10.508583068847656 23.33070945739746 18.060152053833008 13.208617210388184 24.665414810180664 9.957704544067383 -2.103684186935425 -0.9822551012039185 -2.399899959564209 16.71372413635254 -3.1682417392730713 0.9375988245010376 -0.07037446647882462 -2.7772374153137207 -3.7152161598205566 -2.5577661991119385 -2.0199227333068848 -3.361382246017456 -1.7672207355499268 1.1378310918807983 -1.631523609161377 0.4862237572669983 -0.9862101078033447 -1.3697052001953125 -2.5665793418884277 -1.8164455890655518 -0.13642610609531403 1.2402056455612183 1.927971601486206 4.450422286987305 0.12626375257968903 0.22137190401554108 0.5365172624588013 0.40644487738609314 1.9134637117385864 1.7641907930374146 1.5411561727523804 0.8386391997337341 0.9590159058570862 1.1380677223205566 0.20493806898593903 -0.1692933738231659 1.098176121711731 0.6440390944480896 2.391681671142578 3.3253631591796875 0.48570868372917175 0.5614798069000244 -0.1157117709517479 0.07751245051622391 1.3753437995910645 2.6206676959991455 3.6514532566070557 0.8562682867050171 -0.4804929494857788 -1.7449579238891602 -4.091468811035156 -0.27080824971199036 0.7271541953086853 2.506216049194336 -0.9397416710853577", +"224 2.7338247299194336 10.984304428100586 4.04439640045166 8.908029556274414 9.061174392700195 6.32121467590332 4.811291694641113 4.502102851867676 0.1691703200340271 6.808024883270264 9.1006441116333 4.007401466369629 6.210590362548828 6.6983795166015625 11.387584686279297 5.836162090301514 1.8309710025787354 5.960887908935547 9.554220199584961 3.2634313106536865 13.005036354064941 7.845080375671387 6.055374622344971 4.288428783416748 0.394931823015213 3.080151081085205 4.756413459777832 9.583508491516113 4.607738494873047 2.3541219234466553 4.892887115478516 1.6851550340652466 -6.218981742858887 -0.18079228699207306 2.127941131591797 1.4029003381729126 3.3072071075439453 1.1797773838043213 -0.14420446753501892 -3.6766746044158936 -6.41377592086792 -1.6838809251785278 -6.418056011199951 -5.3578643798828125 -11.84144401550293 -0.9884148836135864 0.08938011527061462 -0.14089712500572205 5.834646224975586 -5.923805236816406 -0.8030083179473877 3.668348550796509 5.014698028564453 0.15546081960201263 -2.0773394107818604 2.587578535079956 -7.056013107299805 -3.142622232437134 -3.848820209503174 -7.817330360412598 -5.241296768188477 -5.05233907699585 -4.0790510177612305 -1.3500653505325317 -7.505214214324951 -4.429059982299805 -6.443808078765869 -8.12507438659668 -6.323737621307373 -6.4064040184021 -4.948305130004883 -2.6459264755249023 -14.647611618041992 -8.525792121887207 -6.867437839508057 -8.067620277404785 -9.805346488952637 -8.879046440124512 -8.537887573242188 -5.871212005615234 -5.37053108215332 -7.801284313201904 -8.591263771057129 -11.087104797363281 -9.94082260131836 -11.755099296569824 -6.465253829956055 -5.126553535461426 -24.074190139770508 -7.6141276359558105 -6.438960075378418 -15.555359840393066 -10.085536003112793 -7.1260762214660645 -7.113644599914551 -8.442702293395996 -6.280657768249512 -7.026772975921631 -14.843600273132324 -6.862829208374023 -8.884001731872559 -4.177154064178467 -8.180255889892578 -6.264599323272705 -10.01774787902832 4.068926811218262 -5.035759449005127 6.867635726928711 -2.4421656131744385 -19.458087921142578 -4.161555290222168 -36.225135803222656 21.23636817932129 13.591455459594727 14.51829719543457 10.495417594909668 13.884346961975098 8.521780014038086 6.465250015258789 11.822930335998535 7.775100231170654 6.7609543800354 7.335961818695068 7.076983451843262 3.777935028076172 3.747196674346924 3.3442130088806152 7.287263870239258 6.512541770935059 2.8392786979675293 0.00017091746849473566 0.044660743325948715 -1.2039871215820312 -0.6918343901634216 1.4214720726013184 2.5939180850982666 5.993256092071533 1.9630908966064453 0.36180466413497925 4.446612358093262 0.7141894698143005 -0.7291873693466187 -3.128677053609863e-05 3.6364524364471436 4.4054036140441895 1.0420417785644531 1.734062910079956 -2.9277803897857666 -0.5327428579330444 -2.5928115844726562 -0.9043439030647278 0.5790097713470459 4.079015254974365 3.1018388271331787 4.8122944831848145 -3.3591549396514893 0.4705405831336975 1.2203702926635742 2.461144208908081 5.220829963684082 -34.509891510009766 9.61942195892334 8.114686965942383 9.597246170043945 21.48410987854004 27.32464599609375 8.677888870239258 -16.34747314453125 3.7710206508636475 7.2411298751831055 7.0788469314575195 9.986177444458008 11.885185241699219 12.485536575317383 6.809990406036377 28.012317657470703 1.9422193765640259 8.074641227722168 7.24047327041626 7.986757755279541 14.352816581726074 12.009391784667969 6.52459192276001 6.635509014129639 2.154484510421753 3.438570976257324 5.5758280754089355 4.035462379455566 5.21909761428833 3.506350517272949 2.5993223190307617 2.258180618286133 7.111374378204346 5.045666217803955 2.4346697330474854 5.922109127044678 4.395569324493408 2.004852533340454 4.237262725830078 3.160973310470581 -3.929903984069824 0.2214791625738144 0.5958030223846436 -0.33082082867622375 -0.34718337655067444 -2.7429306507110596 -0.8387782573699951 -7.122976779937744 -0.9228570461273193 -1.7703204154968262 -2.082786798477173 -3.2402760982513428 -3.6281938552856445 -2.902679443359375 -3.2313995361328125 -0.1403612196445465 -9.221355438232422 -7.554184436798096 -11.1963472366333 -5.560179233551025 -14.269574165344238 -4.110246658325195 -1.100974202156067 -3.3569672107696533 -9.661277770996094", +"224 -0.3938326835632324 -0.3996425271034241 -4.355768203735352 -5.012271404266357 3.564232110977173 6.664670467376709 -1.5643271207809448 6.650691509246826 -1.8002010583877563 -3.451181650161743 0.5764855742454529 -2.187277317047119 2.238713264465332 5.578123569488525 4.494285583496094 8.652908325195312 0.7033929824829102 2.5807855129241943 1.4664781093597412 5.057260990142822 2.849385976791382 7.567502975463867 -3.6444265842437744 12.874882698059082 4.690803527832031 4.546291828155518 4.2838239669799805 6.65825080871582 -1.6707239151000977 -0.0203170757740736 2.8758790493011475 -2.9134838581085205 3.9668164253234863 4.106771945953369 7.661410331726074 5.658679485321045 5.891258716583252 5.506253242492676 -7.479941368103027 -3.4019083976745605 5.173977851867676 0.5483889579772949 14.346446990966797 11.194868087768555 -9.510805130004883 8.714138984680176 9.218793869018555 -13.609179496765137 -2.476210832595825 7.689484119415283 7.883577346801758 -5.132031440734863 4.321552276611328 4.172678470611572 8.891108512878418 1.6946399211883545 1.5310180187225342 -0.2332654595375061 -11.763875961303711 -10.375662803649902 -3.299182176589966 1.336390495300293 1.2232152223587036 3.8358306884765625 -14.908788681030273 -5.5974345207214355 -12.373319625854492 -7.023797035217285 -3.397207736968994 -0.16521382331848145 -6.454676628112793 -16.778413772583008 -6.945792198181152 -5.267192363739014 -2.076627016067505 -1.6633025407791138 -1.8670809268951416 -1.2246743440628052 -11.878632545471191 -3.7758655548095703 5.798745632171631 -2.148728370666504 3.5450363159179688 5.092687129974365 8.016267776489258 -4.2383713722229 -0.3892895579338074 -59.68532180786133 7.4781904220581055 5.365602016448975 -3.3977200984954834 6.118329048156738 5.638951301574707 15.083231925964355 -10.81480884552002 -5.191426753997803 -2.115894317626953 -3.5170202255249023 12.555208206176758 -30.305707931518555 -1.0419480800628662 12.752158164978027 36.26765441894531 -31.600299835205078 -14.573088645935059 -33.992313385009766 -11.104632377624512 -11.641721725463867 -13.825206756591797 -5.319552421569824 -15.109006881713867 14.140725135803223 3.875357151031494 5.915158748626709 -8.874353408813477 0.032332733273506165 -19.729429244995117 -7.815079689025879 -20.83696937561035 -3.271239757537842 3.9693288803100586 5.8222455978393555 1.0587568283081055 -1.8008171319961548 6.448807716369629 -6.876626968383789 -8.908702850341797 -6.4981842041015625 1.891202688217163 2.8193557262420654 -0.880456268787384 1.7763131856918335 -0.05486693233251572 -13.172021865844727 -23.895427703857422 -12.835954666137695 1.9105727672576904 0.9654303789138794 -1.7151007652282715 0.16251251101493835 -2.451970338821411 -5.475825786590576 -22.342571258544922 -14.561881065368652 -1.3481521606445312 -2.173443555831909 3.5323989391326904 -2.4540860652923584 -1.872280240058899 -4.92069149017334 -7.366661071777344 -9.71202564239502 -1.7871224880218506 0.028137901797890663 -3.3193187713623047 1.8035110235214233 -4.929970741271973 -0.42289915680885315 -4.522406101226807 -7.435165882110596 17.98934555053711 -29.704164505004883 -5.73816442489624 8.433941841125488 1.2602856159210205 -3.6808266639709473 -26.8731632232666 -32.8316650390625 8.763044357299805 6.244572639465332 20.557430267333984 11.273615837097168 12.05125617980957 -31.195192337036133 -6.831920146942139 -2.322979211807251 0.3728252053260803 7.3765082359313965 16.58774185180664 9.571393013000488 0.7194899320602417 -3.0937581062316895 -4.704020977020264 -8.706403732299805 4.167346477508545 -1.0755243301391602 0.4381113052368164 -2.768819808959961 -4.732767105102539 -6.172205924987793 -11.593006134033203 3.2879676818847656 2.2065742015838623 2.640509843826294 -2.9925270080566406 -1.7833609580993652 -7.410572052001953 -7.969113349914551 -12.123226165771484 -3.7669506072998047 7.602900981903076 8.432100296020508 3.9132072925567627 -5.008281707763672 -4.219751358032227 -7.872060775756836 -6.293956756591797 0.6359412670135498 -3.2651679515838623 13.893045425415039 5.587357521057129 6.970378875732422 -1.87349271774292 0.3638920783996582 1.5849015712738037 7.725946426391602 0.1780957728624344 -9.1492280960083 -2.3200523853302 12.411368370056152 1.1618893146514893 0.991697371006012 3.8326613903045654 9.424381256103516 6.269663333892822", +"32 -5.829930305480957 2.0048370361328125 1.318176507949829 1.4363937377929688 1.59381103515625 1.9784754514694214 -2.3930485248565674 1.5631991624832153 2.477949619293213 -2.874392509460449 -2.061366558074951 3.8921010494232178 -1.8568798303604126 -1.889485239982605 1.992140769958496 1.6091316938400269 2.038938522338867 2.0711147785186768 2.824633836746216 1.6290395259857178 -2.435708999633789 2.4005823135375977 2.2642102241516113 1.273835301399231 -3.8925178050994873 1.6134816408157349 2.173734426498413 1.0661994218826294 -1.3836640119552612 6.422979831695557 -3.220992088317871 -1.5382155179977417 86.96336364746094",